我正在尝试使用AVCaptureMovieFileOutput
捕获视频。为此,我使用的是苹果的示例代码。我对此并不是很了解,但是为了开始视频捕获,我使用以下代码:
-(void)startRecordingWithOrientation:(AVCaptureVideoOrientation)videoOrientation;
{
AVCaptureConnection *videoConnection = [AVCamUtilities connectionWithMediaType:AVMediaTypeVideo fromConnections:[[self movieFileOutput] connections]];
if ([videoConnection isVideoOrientationSupported])
[videoConnection setVideoOrientation:videoOrientation];
[[self movieFileOutput] startRecordingToOutputFileURL:[self outputFileURL] recordingDelegate:self];
// After this method my session say recording is yes.
}
下面:
[self movieFileOutput]
返回AVCaptureMovieFileOutput
的对象。
现在我有委托处理更多事情的方法。
问题部分是AVCaptureMovieFileOutput
的委托方法正在某个时间被调用,而有些时候这不是。
Max可能当我在第一次录制后弹出这个页面然后我回到这个屏幕上时,我面对的是委托方法没有被调用。
我必须杀死应用程序,这适用于新录制。
请告诉我解决方案。
编辑:当我删除应用程序而不是重新安装应用程序时,委托方法只调用一次。在此之后,这永远不会被称为。即使我没有捕捉视频并进入屏幕并返回代表也不会被叫到。我正在使用Apple的AVCam演示,并在录制器屏幕之前添加了一个屏幕。
答案 0 :(得分:2)
您确定要保存的文件还不存在吗? 如果是这样,电影捕捉将无法启动,因此不会调用任何委托方法。