Re: How to use ChannelNames, CategoryNames, NumberNames?
Re: How to use ChannelNames, CategoryNames, NumberNames?
- Subject: Re: How to use ChannelNames, CategoryNames, NumberNames?
- From: Jeff Moore <email@hidden>
- Date: Wed, 5 Jan 2005 12:28:36 -0800
On Jan 5, 2005, at 10:51 AM, Chris Thomas wrote:
In AudioHardware.h I find these properties:
kAudioDevicePropertyChannelName
kAudioDevicePropertyChannelCategoryName
kAudioDevicePropertyChannelNumberName
And these IORegistry keys in IOAudioDefines.h:
#define kIOAudioEngineFullChannelNamesKey "IOAudioEngineChannelNames"
#define kIOAudioEngineFullChannelCategoryNamesKey
"IOAudioEngineChannelCategoryNames"
#define kIOAudioEngineFullChannelNumberNamesKey
"IOAudioEngineChannelNumberNames"
What is the intended semantic for these keys? The comments and
HeaderDoc are not ideally descriptive. It sounds like these are
dictionaries of user-readable descriptions for channels, but:
(1) What is Core Audio's definition of a "channel name", "category
name", "number name"?
The channel name is the full name for the channel, i.e. "Analog Input
3".
The category name is the general category for the channel, i.e. "Analog
Input".
The number name is the name for the number of the channel, i.e. "3".
There are three separate properties for this to allow applications the
freedom to set up their UI as they like. Plus, it gives the driver
maximum flexibility in describing their channels. Note that these names
may have nothing to do with the channel ordering you see across the
device. It is reasonably to expect that a device might label what would
be channel 3 in the HAL API with something that has no relationship to
the number 3 at all.
Digital Performer has a particularly thorough example of using these
properties.
(2) Will Core Audio synthesize names if a driver doesn't have these
keys attached, or does it just return an error in that case?
If the driver doesn't provide names, the HAL doesn't make them up.
These properties will just not exist for such devices.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
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