AVCaptureMovieFileOutput startRecordingToOutputFileURL:recordingDelegate:不调用委托

时间:2012-01-12 14:32:50

标签: iphone avfoundation

我正在尝试使用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演示,并在录制器屏幕之前添加了一个屏幕。

1 个答案:

答案 0 :(得分:2)

您确定要保存的文件还不存在吗? 如果是这样,电影捕捉将无法启动,因此不会调用任何委托方法。