0

최대 지속 시간 제한을 설정하여 AVCaptureMovieFileOutput을 사용하여 동영상 파일을 녹화했습니다. 예를 들어 : I 10 초 비디오를 녹화하려면, 나는 다음과 같은 동영상 파일의 최대 지속 시간 및 기타 속성을 설정했다 ... 녹화 된 비디오는 구초 (나는 연주하는 표시되어AVCaptureMovieFileOutput을 사용하여 기록 된 시간의 차이

  Float64 TotalSeconds = 10; 
     int32_t preferredTimeScale = 30 
     CMTime maxDuration = CMTimeMakeWithSeconds(TotalSeconds, preferredTimeScale); 
     aMovieFileOutput.maxRecordedDuration = maxDuration; 
     aMovieFileOutput.minFreeDiskSpaceLimit = 1024 * 1024; 

그러나 MPMoviePlayerController 사용), 왜 그 시간 차이가 .. 정확하게 10 초를 기록하는 방법. 최대 지속 시간을 설정하는 동안 나는 잘못된 행동을하고 있습니까? 고맙습니다.

답변

0

하면 출력

#define CAPTURE_FRAMES_PER_SECOND 30 


//SET THE CONNECTION PROPERTIES (output properties) 
AVCaptureConnection* captureConnection = [self.movieFileOutput connectionWithMediaType:AVMediaTypeVideo]; 

if(captureConnection.supportsVideoMinFrameDuration) captureConnection.videoMinFrameDuration = CMTimeMake(1,CAPTURE_FRAMES_PER_SECOND); 
if(captureConnection.supportsVideoMaxFrameDuration) captureConnection.videoMaxFrameDuration = CMTimeMake(1,CAPTURE_FRAMES_PER_SECOND); 

CMTimeShow(captureConnection.videoMinFrameDuration); 
CMTimeShow(captureConnection.videoMaxFrameDuration); 
에 대한 좋은 프레임 속도를주십시오
관련 문제