如何在iOS中为AvcaptureSession设置videoMaximumDuration

Vip*_*Ias 2 xcode avfoundation ios avcapturesession avcapturemoviefileoutput

我正在使用AVCaptureSession录制视频.但我无法设置最大视频长度.如果我使用ImagePicker控制器,则有方法用于设置最大视频持续时间,如videoMaximumDuration.但在AVCaptureSession中我如何设置MaximumDuration.请帮助我...先生谢谢

Jim*_*ney 6

您可以使用属性设置的最长期限maxRecordedDuration您的AVCaptureMovieFileOutput设置.

这是一个例子.

self.movieFileOutput = [[AVCaptureMovieFileOutput alloc]init];

Float64 maximumVideoLength = 60; //Whatever value you wish to set as the maximum, in seconds
int32_t prefferedTimeScale = 30 //Frames per second

CMTime maxDuration = CMTimeMakeWithSeconds(maximumVideoLength, preferredTimescale_;

self.movieFileOutput.maxRecordedDuration = maxDuration;

self.movieFileOutput.minFreeDiskSpaceLimit = 1024*1024;

  if(self.captureSession canAddOutput:self.movieFileOutput){
     [self.captureSession addOutput:self.movieFileOutput];

  }
Run Code Online (Sandbox Code Playgroud)

我希望这回答了你的问题