I am looking for a way to get a list of available bit depths of an audio object like what can be seen in the Apple Audio Midi Setup application. I assumed it would be similar to getting available nominal sample rates from the HAL like below but I can't seem to find a way to do it. Any help would be appreciated.
UInt32 size = sizeof(AudioValueRange);
AudioObjectPropertyAddress propertyAddress;
propertyAddress.mSelector = kAudioDevicePropertyAvailableNominalSampleRates;
propertyAddress.mElement = kAudioObjectPropertyElementMaster;
propertyAddress.mScope = kAudioObjectPropertyScopeOutput;
AudioObjectGetPropertyDataSize(DeviceId, &propertyAddress, 0, NULL, &size);
int rateCount = (size / sizeof(AudioValueRange));
AudioValueRange *range = new AudioValueRange[rateCount];
AudioObjectGetPropertyData(DeviceId, &propertyAddress, 0, NULL, &size, range));