[FFmpeg-user] mpdecimate and setpts

Carl Eugen Hoyos ceffmpeg at gmail.com
Mon Feb 12 15:57:13 EET 2018


2018-02-12 7:57 GMT+01:00 Chen Fisher <chen.fisher at gmail.com>:
> I'm using mpdecimate to remove similar frames:
> ffmpeg -i in.mp4 -vf mpdecimate out.mp4
>
> But the ending result has the same number of frames as the original video
> file (although smaller file size).
>
> When using mpdecimate with setpts, the ending result has indeed smaller
> frame count and smaller file size than before.
> BUT, it will also change the time and "skip" those similar frames. I'm
> looking for a way to remove frames but still have the time as the original.
> So the "duplicate" frame will actually be played for the duration of all
> removed duplicate frames.
>
> ffmpeg -i in.mp4 -vf "mpdecimate,setpts=N/FRAME_RATE/TB" out.mp4

You cannot combine mpdecimate and mov/mp4 output in a useful way
because our mov/mp4 muxer only supports constant frame rate, this
is a known limitation of FFmpeg.
Try mkv.

Carl Eugen


More information about the ffmpeg-user mailing list