Reading the input level
Reading the input level
- Subject: Reading the input level
- From: Tom Jeffries <email@hidden>
- Date: Sat, 23 Feb 2013 13:12:57 -0800
I'm taking over some code to fix some problems, and one of them is baffling me.
The application needs to monitor the input level and display it so that the user can adjust if needed. The current code works perfectly with most devices. Metering mode is enabled, and these two lines are called by a timer routine and work- except with one device:
AudioUnitGetParameter(mMixerUnit, k3DMixerParam_PreAveragePower, kAudioUnitScope_Input, 0, &levels[0]);
AudioUnitGetParameter(mMixerUnit, k3DMixerParam_PrePeakHoldLevel, kAudioUnitScope_Input, 0, &peaks[0]);
When the selected input device is a Tascam US-144MKII, the value is always -120 for both level and peak. There are a few differences with the Tascam unit, for example, it lists 4 channels and has a safety offset of 0. However, I don't see how either of those would cause this particular problem. Right now my guess is that there is something in the USBAudio drivers from Tascam that is doing things differently than expected.
Volumes do show up using Audacity, but if I'm reading the code correctly, Audacity is using deprecated functions. Is it possible to run a separate AudioQueue, not to capture the data, but simply so that I can grab the input levels?
I appreciate your answers!
Thanks, Tom Jeffries
_______________________________________________
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