我正在使用AVCaptureSession为iOS 5.0制作电影应用程序。我正在给用户提供开始-暂停-开始-停止录制电影的能力。
我定义了三个按钮:
- 开始录制 - 停止录制 - 暂停录制
我能够成功地开始和停止录制。但我无法暂停录制,然后再次恢复录制。我查看了stackoverflow上的这个问题/答案,但我不知道他们如何暂停和恢复视频?我在这里找到了一些其他帖子,但它们中没有一个有任何示例代码,我可以用来尝试它。如果AVAssetWrtier是正确的方法,那么如何将其与AVCaptureSession一起使用?
这是我的三个按钮的代码:
- 开始录制 - 停止录制 - 暂停录制 ios - 暂停视频录制 使用AVFoundation在iOS中暂停和恢复视频捕获以同一文件
我定义了三个按钮:
- 开始录制 - 停止录制 - 暂停录制
我能够成功地开始和停止录制。但我无法暂停录制,然后再次恢复录制。我查看了stackoverflow上的这个问题/答案,但我不知道他们如何暂停和恢复视频?我在这里找到了一些其他帖子,但它们中没有一个有任何示例代码,我可以用来尝试它。如果AVAssetWrtier是正确的方法,那么如何将其与AVCaptureSession一起使用?
这是我的三个按钮的代码:
- 开始录制 - 停止录制 - 暂停录制 ios - 暂停视频录制 使用AVFoundation在iOS中暂停和恢复视频捕获以同一文件
-(IBAction) makeMovieNow
{
NSLog(@"makeMovieNow ...");
[session startRunning];
[movieFileOutput startRecordingToOutputFileURL:movieURL recordingDelegate:self];
}
-(IBAction) makeMovieStop
{
NSLog(@"makeMovieStop ...");
//stop recording
[session stopRunning];
}
-(IBAction) makeMoviePause
{
NSLog(@"makeMoviePause ...");
//pause video??? How?
}
//********** DID FINISH RECORDING TO OUTPUT FILE AT URL **********
- (void)captureOutput:(AVCaptureFileOutput *)captureOutput
didFinishRecordingToOutputFileAtURL:(NSURL *)outputFileURL
fromConnections:(NSArray *)connections
error:(NSError *)error
{
NSLog(@"didFinishRecordingToOutputFileAtURL - enter");
BOOL RecordedSuccessfully = YES;
if ([error code] != noErr)
{
NSLog(@"ERROR RECODING MOVIE!!! - enter");
// A problem occurred: Find out if the recording was successful.
id value = [[error userInfo] objectForKey:AVErrorRecordingSuccessfullyFinishedKey];
if (value)
{
RecordedSuccessfully = [value boolValue];
}
}
if (RecordedSuccessfully)
{
//----- RECORDED SUCESSFULLY -----
NSLog(@"didFinishRecordingToOutputFileAtURL - success");
UISaveVideoAtPathToSavedPhotosAlbum(videoPath2, self, nil, nil);
}
}