On Sun, 2008-09-28 at 14:30 +0100, Chris Williams wrote: > As regards the merits or not of writing an instrument as > a plugin, that's been addressed by some other respondents. > The fact is that an instrument does *not* need OS-levels > of interaction; it needs timing and midi data and output > audio buffers, and optionally some facility for providing > a GUI -- that's about it.
You're thinking small :) File I/O, network interaction, interactions with different sorts of input devices ... there's more. > Doing it *solely* as a > standalone app means you're stuck with that model forever. this is the major benefit of the callback API style that JACK, PortAudio, ASIO and CoreAudio use. if you know what you're doing (sort of), it is easy to move back and forth between the "standalone app" and "plugin " design because the basic audio & MIDI i/o is done in the same way. > There's a reason that ReWire (*loosely* a jack equivalent) > slowly became deprecated in favour of VSTIs on Windows. Couldn't be the idiots at propellerhead and their license policy, by any chance? > The > prevalence of "using the OS" in the linux world is more to > do with with the disparate and divided state of DAWs, host > support for instruments, and the (quite wonderful) state of > jack than it is to do with it being inherently the best > solution. Everyone writes to jack (or ALSA) because they > know it's a common denominator that's guaranteed to work > well (as well as the fact that jack's architecture can > replicate host provision to an extent) not because it's > necessarily the best model for doing it a priori. It might suprise you that I probably agree with this point even more than you do :) JACK exists primarily because there was not a suitable plugin API on linux and because several of us felt it unlikely that there ever would be one. The biggest obstacle of all was the still-unsolved issue of GUI toolkit compatibility. Its remarkable and cool that JACK works as well as it does, and the isolation it provides between processes can be handy. But yeah, if we had had a single GUI toolkit and a decent plugin API ... no JACK would have emerged, probably. --p _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
