Re: the neglected IAC Driver
Re: the neglected IAC Driver
- Subject: Re: the neglected IAC Driver
- From: Pete Gontier <email@hidden>
- Date: Tue, 21 Dec 2004 14:25:23 -0800
circa 12/21/04 12:20 PM, "Doug Wyatt" <email@hidden> wrote:
>> I'm contemplating the IAC Driver I see in Audio MIDI Setup. I know what it's
>> for; I know what it does in theory. My question is why so many developers
>> feel the need to create virtual devices, since it seems to me the IAC driver
>> ought to be able to serve the same essential purpose. Doug may tell us what
>> his intent was, but I would still be interested in hearing from others about
>> why they created virtual devices instead of relying on IAC Driver. And if you
>> ARE relying on it, let me know about that decision process, too.
>>
> The IAC driver is essentially a brain-dead-simple hack of a workaround for
> apps/plugins that are too lazy to publish their own virtual
> sources/destinations. ;-) More charitably, sometimes users find situations
> where an interapp connection is useful though the developer didn't think of
> it. The PITA about the IAC driver (beyond busses 2+ not working in Panther) is
> that users have to remember what's what. Virtual endpoints have meaningful
> names, without the user having to trundle off to AMS and enter one. To look at
> a real-world example, Augustus Loop creates a virtual source for itself, and
> sends clock messages on it to permit synchronizing the host to *it*. If Expert
> Sleepers had left it to the user, they'd have had to have a "send sync to"
> popup menu in the UI, and the user would have to go make sure she's got enough
> IAC busses, throw up her hands in frustraiton if that number is more than 1,
> and then go do something in the host application to connect the IAC bus to
> some action. With a virtual source, only the last step is necessary. DrumCore
> is another good example. When you run its standalone app, it creates a virtual
> destination, which makes it dead-simple to send MIDI to it from a host. As a
> rule of thumb, I'd say that unless your software is a big host app, and
> there's more than a 5% chance that you want to communicate MIDI with other
> software instead of to hardware, you should carefully consider creating a
> virtual source and/or destination. The IAC driver is intended to catch the
> other cases.
This thread was super-useful. I was deciding whether to feel guilty about
not using IAC Driver and this relieves me of that. To summarize what I have
seen in this thread so far:
-- IAC Driver only exists in Panther and later.
-- It's intended to coddle apps insufficiently cool to create
their own virtual endpoints.
-- It's broken.
I am thus all over virtual endpoints like a cheap suit.
--
Pete Gontier
http://www.m-audio.com/
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden