如何开始录制视频?AVCaptureVideoPreviewLayer

时间:2015-01-20 10:37:45

标签: ios swift ip-camera

我正在设置一个带有previewlayert的自定义相机。一切正常。我设置了方向和一切。 我想问一下如何设置自动对焦? 第二,如何启动相机录制视频?(因为它只显示前置摄像头显示的内容,你看到了你的身影)......但我想开始录制。

我会优先考虑Swift中的代码,但是它在Objective C中没问题,我就翻译它。谢谢你!

1 个答案:

答案 0 :(得分:1)

来自Apple's Audio/Video capture documentation

保存到电影文件:

使用AVCaptureMovieFileOutput对象将影片数据保存到文件中。 (AVCaptureMovieFileOutput是AVCaptureFileOutput的具体子类,它定义了许多基本行为。)您可以配置电影文件输出的各个方面,例如录制的最长持续时间或其最大文件大小。如果剩余的磁盘空间不足,也可以禁止录制。

AVCaptureMovieFileOutput *aMovieFileOutput = [[AVCaptureMovieFileOutput alloc] init];

CMTime maxDuration = <#Create a CMTime to represent the maximum duration#>;
aMovieFileOutput.maxRecordedDuration = maxDuration;
aMovieFileOutput.minFreeDiskSpaceLimit = <#An appropriate minimum given the quality of the movie format and the duration#>;
The resolution and bit rate for the output depend on the capture session’s sessionPreset. The video encoding is typically H.264 and audio encoding is typically AAC. The actual values vary by device.*

AVCaptureMovieFileOutput *aMovieFileOutput = <#Get a movie file output#>;
NSURL *fileURL = <#A file URL that identifies the output location#>;
[aMovieFileOutput startRecordingToOutputFileURL:fileURL recordingDelegate:<#The delegate#>];

在captureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:的实现中,委托可能会将生成的影片写入Camera Roll相册。它还应该检查可能发生的任何错误。