ios - iOS下逐帧读取视频

标签 ios video frame avfoundation core-video

我正在寻找一种使用 iOS API 检索视频的各个帧的方法。 我尝试使用 AVAssetImageGenerator,但它似乎只提供最接近秒数的帧,这对我的使用来说有点太粗糙了。

根据我对文档的理解,AVAssetReader、AVAssetReaderOutput 和 CMSampleBufferGetImageBuffer 的管道我应该能够做一些事情,但我被 CVImageBufferRef 困住了。有了这个,我正在寻找一种获取 CGImageRef 或 UIImage 的方法,但还没有找到。

不需要实时,我越能坚持提供的 API 越好。

非常感谢!

编辑: 基于此站点:http://www.7twenty7.com/blog/2010/11/video-processing-with-av-foundation这个问题:how to convert a CVImageBufferRef to UIImage我正在接近解决方案。问题,AVAssetReader 在第一个 copyNextSampleBuffer 之后停止读取,没有给我任何东西(sampleBuffer 为 NULL)。

视频可由 MPMoviePlayerController 读取。我不明白怎么了。

最佳答案

上面的两个链接实际上回答了我的问题,空的 copyNextBufferSample 是 iOS SDK 5.0b3 的问题,它在设备上工作。

关于ios - iOS下逐帧读取视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6783214/

相关文章:

java - 创建多关卡游戏时如何重新启动 JFrame?

ios - 如何使用 XCUItest 设置 UserDefaults

ios - iOS 7 和 8 中的启动屏幕和图标尺寸问题和混淆

ios - 如何在 UICollectionView 上设置高度/保持 UICollectionView 的高度不在模拟器中扩展

android - 隐藏youtubeview的视频仅播放音频

video - 停止 youtube 视频自动播放

javascript - 播放暂停 html5 视频 javascript

php - 如何使用 PHP5-FFMPEG 获得良好的帧质量?

java - JDialog 并禁用主窗口

ios - 在 Realm 中删除一对多关系的项目