Swift 3:如何使用AVFoundation在视频录制过程中静音/取消静音麦克风

时间:2017-01-12 08:15:57

标签: ios iphone swift xcode

我正在录制视频,使用AVFoundation和Swift 3创建自定义相机。现在我想在按钮点击时添加视频录制过程中静音/取消静音的功能。我该如何实现呢?

1 个答案:

答案 0 :(得分:0)

我希望您使用AVCaptureMovieFileOutput来记录AVFoundation

中的视频

没有直接的方法,但如果你仔细阅读文档,你可以看到

  • AVCaptureMovieFileOutputAVCaptureOutput
  • 的子类
  • 您可以通过将媒体类型作为音频传递来AVCaptureMovieFileOutput通过func connection(withMediaType mediaType: String!) -> AVCaptureConnection! 单独获取音频连接
  • 一旦你单独获得auido连接,只需禁用它

swift中的示例

let movieFileOutput : AVCaptureMovieFileOutput
// your code to initialize output
var audioConnection :AVCaptureConnection? = movieFileOutput.connection(withMediaType:AVMediaTypeAudio)
if let connection = audioConnection {
    connection.isEnabled = false;
}

表格文件

用于AVCaptureConnection属性enabled

  

此属性的值是BOOL,用于确定接收方的输出是否应使用数据           在会话运行时从其连接的inputPorts。客户端可以设置此属性来停止           捕获期间数据流到给定输出。默认值为YES。