wseemann / FFmpegMediaMetadataRetriever

FFmpegMediaMetadataRetriever provides a unified interface for retrieving frame and meta data from an input media file.
1.72k stars 387 forks source link

A very short video can't get the last frame, like a video with only 1 second? #195

Closed RockyQu closed 5 years ago

RockyQu commented 5 years ago

Is there something I have written wrong? this my code:

private Bitmap GetFramePictures(String url) { FFmpegMediaMetadataRetriever mediaMetadataRetriever = new FFmpegMediaMetadataRetriever();

    mediaMetadataRetriever.setDataSource(url);
    FFmpegMediaMetadataRetriever.Metadata metadata = mediaMetadataRetriever.getMetadata();
    Logg.e( metadata.getLong("duration"));

// Bitmap videoShortCut = mediaMetadataRetriever.getFrameAtTime( ); long ffmduration = Long.parseLong(mediaMetadataRetriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_DURATION)); Logg.e( ffmduration); Bitmap bitmap1 = mediaMetadataRetriever.getFrameAtTime(ffmduration * 1000, FFmpegMediaMetadataRetriever.OPTION_CLOSEST); mediaMetadataRetriever.release(); return bitmap1; }

quancs commented 5 years ago

I have meet the same bug. I cannot get the last frame of the video.

andreififiita commented 5 years ago

Same here. Any updates?