我没有使用FFmpegMediaMetadataRetriever获得任何位图

时间:2013-08-18 09:58:32

标签: android video bitmap ffmpeg frame

我正在开发一个应用程序来提取视频的帧,但是我无法使用MediaMetadataRetriever,因为它失败了很多次。所以我找到了一个名为FFmpegMediaMetadataRetriever的外部库,由William Seemann编写,用于提取帧。但我没有使用方法FFmpegMediaMetadataRetriever.getFrameAtTime(很长时间)得到任何位图。

这是我正在尝试的代码:

    FFmpegMediaMetadataRetriever mediaData = new FFmpegMediaMetadataRetriever();
    mediaData.setDataSource("/storage/sdcard0/DCIM/video.mp4");

    frame = (ImageView)findViewById(R.id.frame);
    frame.setImageBitmap(mediaData.getFrameAtTime());

相反,我可以从视频中获取元数据,我可以使用MedaMetadataRetriever提取帧,所以我认为视频是正确的。

我不知道为什么我无法提取帧。如果图书馆适合我,我会很高兴。 谢谢!

1 个答案:

答案 0 :(得分:2)

代码中有一个错误导致返回空帧,我刚刚解决了这个问题。请执行新的代码检查,然后重试。