问题描述
我正在使用 AVCaptureSession
在 iOS 应用中重新编码视频。
我想在部分录音过程中将麦克风静音。我正在从我的 AVCaptureConnection
对象创建一个 AVCaptureMovieFileOutput
。
AVCaptureMovieFileOutput *movieFileOutput = [AVCaptureMovieFileOutput new];
if([self.captureSession canAddOutput:movieFileOutput])
{
[self.captureSession addOutput:movieFileOutput];
self.captureSession.sessionPreset = AVCaptureSessionPresetHigh;
AVCaptureConnection *connection = [movieFileOutput connectionWithMediaType:AVMediaTypeVideo];
if(connection.isVideoStabilizationSupported)
{
connection.preferredVideoStabilizationMode = AVCaptureVideoStabilizationModeAuto;
}
// AVCaptureConnection for audio
self.audioConnection = [movieFileOutput connectionWithMediaType:AVMediaTypeAudio];
self.movieFileOutput = movieFileOutput;
}
我可以在录音开始时使用 enabled
属性将麦克风静音。
self.audioConnection.enabled = NO;
但是,如果我在录制期间启用此属性,则捕获会话将停止并调用此委托方法。
- (void)captureOutput:(AVCaptureFileOutput *)output
didFinishRecordingToOutputFileAtURL:(NSURL *)outputFileURL
fromConnections:(NSArray<AVCaptureConnection *> *)connections
error:(NSError *)error;
我可以开始录制带有音频的第二个视频剪辑,然后组合两个视频剪辑,但这种解决方案并不理想,并且会在两个视频之间造成卡顿。
是否可以在 iOS 中的捕获会话期间将麦克风静音和取消静音?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)