objective-c – 使用AVFoundation调整输入音量(在AVCaptureSession中)

前端之家收集整理的这篇文章主要介绍了objective-c – 使用AVFoundation调整输入音量(在AVCaptureSession中)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我到处寻找,我无法找到一种方法来调整AVCaptureSession的输入设备的输入音量.我能做的最好的事情,根本不能帮助我,是通过从AVCaptureAudioDataOutput访问连接(AVCaptureConnections)来获得设备的音频级别 – 即,通过监视预览输出的级别.有没有办法改变输入增益,甚至直接在AVFoundation中获得音频输入电平?我还在学习一点,所以如果我错过任何明显的事情,我会道歉.

编辑:我应该注意这是针对OSX的.

解决方法

您可以通过设置会话输出的音频连接的音量属性来调整增益.
考虑到连接可能有多个通道.

我假设在这里引用了一个fileOutput ivar,我在将输出添加到会话之前存储了.

AVCaptureConnection* audioConnection = [fileOutput connectionWithMediaType:AVMediaTypeAudio];
if(audioConnection)
{
    for(AVCaptureAudioChannel* audioChannel in [audioConnection audioChannels])
    {
        audioChannel.volume = 0.5;
    }
}

猜你在找的cocoa相关文章