Re: [LAD] Specification issues in open systems

From: Paul Davis <paul@email-addr-hidden>
Date: Sun Sep 28 2008 - 16:55:02 EEST

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
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
Received on Sun Sep 28 20:15:03 2008

This archive was generated by hypermail 2.1.8 : Sun Sep 28 2008 - 20:15:03 EEST