使用CoreAudio OSX读取输入音量

时间:2013-02-21 19:08:17

标签: macos audio core-audio volume

文档有点令人困惑 - 有人能指出我允许我在CoreAudio上读取输入音量的代码吗?我正在使用的代码使用:

AudioUnitGetParameter(mMixerUnit, k3DMixerParam_PreAveragePower, kAudioUnitScope_Input, 0, &levels[0]);
AudioUnitGetParameter(mMixerUnit, k3DMixerParam_PrePeakHoldLevel, kAudioUnitScope_Input, 0, &peaks[0]);

适用于某些设备,但不适用于所有设备。我需要一些适用于所有设备的东西。

1 个答案:

答案 0 :(得分:0)

如果没有更多的背景,很难完全诊断出来。但是,您是否在混音器上明确启用输入测量?你会这样做:

UInt32 enable = 1;
AudioUnitSetProperty(mMixerUnit,
                     kAudioUnitProperty_MeteringMode,
                     kAudioUnitScope_Input,
                     0,
                     &enable,
                     sizeof(enable));