[FFmpeg-user] Output a sequence of images with known timings

Moritz Barsnick barsnick at gmx.net
Thu Nov 19 12:42:52 EET 2020


On Wed, Nov 18, 2020 at 17:45:53 +0000, adam smith via ffmpeg-user wrote:

> My issue is that the first image time varies depending on the output fps.
> Eg fps=1/1 will output the first image from the 1st second of source; and so on.
> Fps=1/5 will output the first image from the 3rd second of the source.
> Fps=1/11 will output the first image from the 6th second of the source.
> It keeps getting further away from the start while remaining approx halfway to the point I expected.

That seems to be the expected behavior from the fps filter's averaging.

> Any ideas how I force the first image to either be the first frame of the source, or the same value as the frequency?

Do take a look at the documentation of the select filter. It even has
an example on how to extract certain frames, e.g. by number:

https://ffmpeg.org/ffmpeg-filters.html#select_002c-aselect

    Select one frame every 100:
        select='not(mod(n\,100))'

Cheers,
Moritz


More information about the ffmpeg-user mailing list