核心图像从磁盘上的视频获取样本缓冲区?

时间:2014-02-14 17:39:26

标签: ios core-image

因此,在录制实时视频时,您可以使用AVCaptureSession并通过委托方法过滤实时视频:

- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection

使用它,您可以从缓冲区获取CIImage,稍后您可以将图像过滤器应用于:

CVImageBufferRef imageBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);
CIImage *sourceImage = [CIImage imageWithCVPixelBuffer:(CVPixelBufferRef)imageBuffer options:nil];

我的问题是,如何从磁盘过滤视频?由于我没有那种代理方法可以自动给出输出缓冲区,我必须手动完成。

我需要的是一种从磁盘上的视频逐帧获取并对其应用核心图像过滤器的方法。

1 个答案:

答案 0 :(得分:0)

尝试查看此AVCaptureSession_Class

我和"SquareCam"和我有很多样本 "StopNGo for iOS"就够了。

它会在内存中逐帧显示,但不会在磁盘上显示。如果你需要它 - 你可以自己做。