安卓-如何从视频文件中获取帧



我想从存储在设备上的视频文件中提取帧。我找到的每一个解决方案都是使用FFmpegMediaMetadataRetriever或MediaMetadaraRetriever,但正如我在这里所写的,它对我不起作用。有其他方法从视频中提取帧吗?

我承认我已经有一段时间没有使用这个方法了,但如果它仍然适用于当前的Android API,它应该会起到作用。

请告诉我它是否仍然有效。如果没有,我会删除这个答案。

public static Bitmap getVideoFrame(Context context, Uri uri, long time) {
Bitmap bitmap = null;
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
try {
retriever.setDataSource(context, uri);
bitmap = retriever.getFrameAtTime(time);
} catch (RuntimeException ex) {
ex.printStackTrace();
} finally {
try {
retriever.release();
} catch (RuntimeException ex) {
ex.printStackTrace();
}
}
return bitmap;
}

希望这能有所帮助。

相关内容

  • 没有找到相关文章

最新更新