我见过许多类似的问题,比如我的,但我有一个区别,我需要在java中而不是在c / c中这样做,我需要它在Android设备上工作.
我找到了使用“MediaMetadataRetrIEver”的方法.
但是我需要花费太长时间来分离帧(帧约1秒),我需要读取600帧,所以只需要10分钟就可以在没有图像处理的情况下读取图像.
我想知道是否有另一种方法可以从视频中分割帧,或者 *** 纵MediaMetadataRetrIEver并使其快速工作.
非常感谢!
解决方法:
听起来你想要使用MediaCodec解码器.有一些例子here.
特别是,如果查看DecodeEditEncodeTest代码,checkVIDeofile()函数会将先前创建的流解码为外部纹理,然后使用OpenGL ES对其进行处理. (要从.mp4文件执行此 *** 作,您需要通过MediaExtractor访问它.)
MediaMetadataRetrIEver#getFrameatTime()实际上是用于提取缩略图,并不特别适合提取大量的帧.
更新:现在有sample code用于使用MediaExtractor,MediaCodec和GLES(API 16)提取视频帧.
总结以上是内存溢出为你收集整理的将视频分割成帧的最快方法全部内容,希望文章能够帮你解决将视频分割成帧的最快方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)