ffmpegduplicates

Remove sequentially duplicate frames when using FFmpeg


Is there any way to detect duplicate frames within the video using ffmpeg?

I tried -vf flag with select=gt(scene\,0.xxx) for scene change. But, it did not work for my case.


Solution

  • Use the mpdecimate filter, whose purpose is to "Drop frames that do not differ greatly from the previous frame in order to reduce frame rate."


    The setpts filter expression generates smooth timestamps for a video at FRAME_RATE FPS. See an explanation for timestamps at What is video timescale, timebase, or timestamp in ffmpeg?