我正在尝试使用 MediaMetadataRetriever 获取 mp4 视频的最后一帧,但它总是返回短视频的第一帧(如 3 秒长的视频),它适用于长视频。FFmpegMediaMetadataRetriever 也给出相同的结果。
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(video);
String time = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
Bitmap frameAtTime = retriever.getFrameAtTime(Long.parseLong(time)*1000, MediaMetadataRetriever.OPTION_CLOSEST);
mImage.setImageBitmap(frameAtTime);
任何建议,将不胜感激。