2012-01-12 90 views
3

我試圖使用AVCaptureMovieFileOutput來捕獲視頻。爲此,我正在使用蘋果的示例代碼。我不會對此而是開始視頻拍攝,我使用下面的代碼有很大的uderstanding:AVCaptureMovieFileOutput startRecordingToOutputFileURL:recordingDelegate:不會調用委託

-(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有時會被調用,有些時候不會。 最大可能當我第一次錄製後彈出此頁面,然後我回來在這個屏幕上我面對的是委託方法沒有被調用。 我必須殺死應用程序,這適用於新的錄音。

請告訴我解決方案。

編輯:委託方法調用只有一次,當我刪除應用程序,並重新安裝應用程序。之後,這永遠不會被調用。即使如果我沒有捕獲視頻並且出現在屏幕上,並且返回委託也不會被調用。我正在使用蘋果的AVCam演示,並在錄像機屏幕前添加了一個屏幕。

回答

2

您確定要保存的文件不存在嗎? 如果是這樣,電影捕捉將無法啓動,因此不會調用任何代理方法。