Re: 'Ganged' or 'Linked' Hardware
Re: 'Ganged' or 'Linked' Hardware
- Subject: Re: 'Ganged' or 'Linked' Hardware
- From: Jeff Moore <email@hidden>
- Date: Fri, 18 Apr 2003 13:05:55 -0700
An application can be coded today that takes advantage of the
information the HAL provides along with some rate conversion to perform
accurate synchronization regardless of what devices are involved or
whether or not they are synchronized at the hardware level. It isn't
necessarily easy but I don't believe that this is asking too much of
applications. As BJ points out, some apps already are doing it.
As for users, all they should have to do is plug the devices in and
tell the app to use them. From there, the app should be the one to
figure out how to go about synchronizing the devices using the
information provided.
On Friday, April 18, 2003, at 12:41 PM, Andrew Kimpton wrote:
Jeff Moore wrote:
I think that BJ summed things up quite well.
The philosophy of the HAL/IOAudio family is to do as little
processing in the driver as possible and to rely on the application
to do all the heavy lifting, especially when it comes to
synchronizing multiple devices. As BJ points out, this is really the
only way to handle the general case where an app wants to synchronize
Device A from Manufacturer B with Device X from Manufacturer Y.
This is not something I've really dived into in detail yet - but I
have to wonder: Is it really feasible to expect the application to
either take care of or more critically guide the user through the
steps required to ensure accurate sync between two disparate pieces of
hardware from different vendors.
For example many Macintosh's have built in audio hardware that can
capture audio, more serious users choose to augment this either with
USB based devices (even cheap ones like iMic, or more expensive
devices such as those from Edirol), some users choose to spend more
money and acquire hardware such as Metric Halo's or M-Audio's. The
more expensive devices often support an external clock source and some
may provide an external clock, the cheaper devices often don't, and
the Apple built-in hardware certainly doesn't.
So some devices are better candidates for working together than
other's. If applications are to have any chance of maintaining
quality playback and recording what are the mechanisms for determining
that a list of devices are 'compatible' with each other and have
linked clock sources ? How do I prevent a user from attempting to
acquire two channels of audio through the built in hardware, two
channels through and iMic and 8 more through a MobileIO ? This
combination seems most unlikely to be able to deliver a quality result
which will result in customer support and satisfaction problems.
Andrew 8-)
--
Jeff Moore
Core Audio
Apple
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.