Re: to write, or not to write, an audio driver
Re: to write, or not to write, an audio driver
- Subject: Re: to write, or not to write, an audio driver
- From: Mark Cookson <email@hidden>
- Date: Mon, 27 Jan 2003 14:14:17 -0800
On Thursday, January 23, 2003, at 04:47 PM, Jarrell Irvin wrote:
I'm trying to decide whether I need to write an audio driver for a
device. This is a USB audio class device, so I know there is an Apple
provided driver that will work with it. Unfortunately, I don't have
the
device yet, or actually all the information on it, so I can't just plug
it in and see, but are different sample rates and multiple output
streams
supported, or do these demand a custom driver? What in general does
the
Apple supplied driver support, and what features can only be obtained
by
writing my own driver?
The AppleUSBAudio driver (which I wrote), works with class compliant
devices with simple controls (volume, gain, and mute). No other
processing units are supported yet.
It does input and output at any sample rate or bit depth that's in the
spec. Any number of interfaces are supported (two output interfaces
and one input interface, for example), though having two output devices
with the same name is confusing in the Sound Preferences panel, a-la
the Extigy. It supports Type III AC-3/MPEG constant bit rate, but not
the Type II variable bit rate format (which Core Audio and
IOAudioFamily also don't support).
The USB spec doesn't say that devices that are bidirectional can have
linked clocks, so if your device can't run the input and output at
different sample rates and bit depths, you'll have to write your own
driver (or suffer whatever happens if someone tries to run them at
different rates).
If your device has a mixer or selector unit that needs to be configured
before the device will work, then you'll need to write your own driver
to set up the device and publish the necessary controls.
In general, the AppleUSBAudio driver works with most devices though on
a few it limits their functionality.
If you ship me a device that you believe is class compliant, but
doesn't work correctly with AppleUSBAudio, I will fix AppleUSBAudio.
--
Mark Cookson
Engineering Droid
Apple Computer, Inc.
Core Audio CPU Software
5 Infinite Loop MS 305-3SQ
Cupertino, CA 95014
_______________________________________________
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.