• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: the neglected IAC Driver
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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

References: 
 >Re: the neglected IAC Driver (From: Doug Wyatt <email@hidden>)

  • Prev by Date: Re: induce the MIDI class driver to use a particular icon
  • Next by Date: Re: induce the MIDI class driver to use a particular icon
  • Previous by thread: Re: the neglected IAC Driver
  • Next by thread: RE: the neglected IAC Driver
  • Index(es):
    • Date
    • Thread