Cocoa 使用AvassetradeOutput实现快进

Cocoa 使用AvassetradeOutput实现快进,cocoa,cocoa-touch,avfoundation,gpuimage,avassetreader,Cocoa,Cocoa Touch,Avfoundation,Gpuimage,Avassetreader,我正在尝试在我的应用程序中添加一个快进功能,它大量使用GPUImage,但遇到了一些内存问题 在-[GPUImageMovie readnextvideframefromoutput:]的顶部,我替换了以下内容: CMSampleBufferRef sampleBufferRef = [videoTrackOutput copyNextSampleBuffer]; 为此: CMSampleBufferRef sampleBufferRef = [videoTrackOutput copyNex

我正在尝试在我的应用程序中添加一个快进功能,它大量使用GPUImage,但遇到了一些内存问题

在-[GPUImageMovie readnextvideframefromoutput:]的顶部,我替换了以下内容:

CMSampleBufferRef sampleBufferRef = [videoTrackOutput copyNextSampleBuffer];
为此:

CMSampleBufferRef sampleBufferRef = [videoTrackOutput copyNextSampleBuffer];
if(GPUImageSpeedModeFast == self.speedMode) {
    sampleBufferRef = [videoTrackOutput copyNextSampleBuffer];
}

这似乎可以工作几秒钟,但随后我的应用程序由于内存问题而被终止。我认为这是高分配率,因为似乎没有任何泄漏。有人有这方面的经验吗?有什么想法吗?

事实上,GPUImageMovie的最佳途径似乎是使用AVPlayerItem对其进行实例化,而不是尝试允许其使用AVAsset路径