【发布时间】:2016-08-26 17:43:50
【问题描述】:
我正在尝试以确切的时间戳开始录制视频。
我已经设法通过使用找到的方法获取每个帧的时间戳:here 和 here。
- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection{
CMTime time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer);
...
// check if time > timestampToStart, use these frames
}
通过这样做,我只能使用我指定的时间戳之后的帧。
问题是在 timstampToStart 处使用的第一帧不会完全,而是在 timstampToStart 加上一个可以在 0-1/fps 之间的小间隔(通常 fps = 24)。
如何确保使用的第一帧与我想要的时间戳完全(或非常接近)
【问题讨论】:
标签: ios objective-c avfoundation avcapturesession