我到处寻找,我无法找到一种方法来调整AVCaptureSession的输入设备的输入音量.我能做的最好的事情,根本不能帮助我,是通过从AVCaptureAudioDataOutput访问连接(AVCaptureConnections)来获得设备的音频级别 – 即,通过监视预览输出的级别.有没有办法改变输入增益,甚至直接在AVFoundation中获得音频输入电平?我还在学习一点,所以如果我错过任何明显的事情,我会道歉.
编辑:我应该注意这是针对OSX的.
解决方法
您可以通过设置会话输出的音频连接的音量属性来调整增益.
考虑到连接可能有多个通道.
考虑到连接可能有多个通道.
我假设在这里引用了一个fileOutput ivar,我在将输出添加到会话之前存储了.
AVCaptureConnection* audioConnection = [fileOutput connectionWithMediaType:AVMediaTypeAudio]; if(audioConnection) { for(AVCaptureAudioChannel* audioChannel in [audioConnection audioChannels]) { audioChannel.volume = 0.5; } }