Я пытаюсь получить последний кадр видео в формате mp4 с помощью MediaMetadataRetriever, но он всегда возвращает первый кадр для коротких видео (например, видео длиной 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);
Любые предложения будут оценены.