On Wed, Feb 26, 2003 at 01:51:41 +0100, Martijn Sipkema wrote: > Well, I'll shut up about it. I still think it is a mistake. I haven't heard > any > convincing (to me) arguments why an application should not handle variable > sized callbacks.
Because it makes certain types of processing viable, which they are not really in variable block systems (eg. LADSPA, VST). Have a look at an phase vocoder implementation in LADSPA (e.g. http://plugin.org.uk/ladspa-swh/pitch_scale_1193.xml) or VST and see how nasty and inefficient they are. Conversly we haven't heard any convincing arguments about why we should have variable block sizes ;) I don't think that allowing (some?) USB devices to run with less latency counteracts the cost to block processing algorithms. > VST process() is variable size I think as are EASI xfer > callbacks, but clearly JACK needs constant callbacks and there is nothing > I can do about that... I wouldn't hold up VST as a good example, it has many design flaws IMHO. As Paul pointed out VST and LADSPA require variable sized blocks becuase they have no event system. I dont know what EASI xfer is. Its not JACK that needs the fixed sizes, its that applications, JACK itsself couldn't care less. - Steve
