【发布时间】:2018-03-02 10:19:42
【问题描述】:
我正在使用 Apple 在此 link 提供的示例来录制和保存视频录制。
希望能够在录制视频之前将音频静音和取消静音。
在 Objective-C 上,我尝试了下面提到的代码在开始视频录制之前在按钮单击时静音/取消静音。但是视频正在与音频一起录制。
尝试在会话对象上不调用 beginConfiguration 和 commitConfiguration 但仍然存在问题。
知道如何在 Objective-C 中处理同样的问题吗?
- (IBAction)muteAudio:(id)sender
{
self.muteAudio = !self.muteAudio;
NSError *error = nil;
[self.session beginConfiguration];
if(self.muteAudio == FALSE)
{
// Add audio input.
AVCaptureDevice *audioDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];
AVCaptureDeviceInput *audioDeviceInput = [AVCaptureDeviceInput deviceInputWithDevice:audioDevice error:&error];
if ( ! audioDeviceInput ) {
NSLog( @"Could not create audio device input: %@", error );
}
if ( [self.session canAddInput:audioDeviceInput] ) {
[self.session addInput:audioDeviceInput];
}
else {
NSLog( @"Could not add audio device input to the session" );
}
}
else
{
// Add audio input.
AVCaptureDevice *audioDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];
AVCaptureDeviceInput *audioDeviceInput = [AVCaptureDeviceInput deviceInputWithDevice:audioDevice error:&error];
if ( ! audioDeviceInput ) {
NSLog( @"Could not create audio device input: %@", error );
}
[self.session removeInput:audioDeviceInput];
}
[self.session commitConfiguration];
}
【问题讨论】:
标签: ios objective-c iphone avfoundation video-capture