[FFmpeg-user] Selecting/dropping frames without re-encoding

Mikhail V mikhailwas at gmail.com
Sat Oct 8 01:01:05 EEST 2016

> You can do:
> $ ffmpeg -i input -vcodec copy -f image2 frame%4d
> Now make symbolic links to every second frame but
> with sequential numbers (Don't ask me how).
> $ ffmpeg -f image2 -vcodec dnxhd -i linked_frames%4d -vcodec copy out.mxf
> (25fps is the default for the image2 demuxer, use -framerate to change it)

Great, this worked for me. I don't know symlinks yet however so I have just
deleted every second frame with a python script and  then
ran that command - worked fine, a video file produces correctly.

> Or simply concatenate the frames you like with "cat" and do:
> $ ffmpeg -i concatenated_file -vcodec copy out.mxf

Well with concatenate I am also not very familiar, but I will look
in Moritz' solution. I tried to pass a list with only filenames to concat
filter but that did not work, seems the list must contain time points as
in Moritz' solution to work at all.
BTW after that manipulations a fair question arizes: why
ffmpeg does not support something like:
 "... -f image2 -i filelist.txt output"
It would ease all those strange manipulations and would not
need symlinks or whatever.

More information about the ffmpeg-user mailing list