2017-01-31 5 views
0

Я использую следующую команду FFmpeg делать скриншоты каждые 5 секунд видео файла, длина которого составляет 85 секунд:Почему скриншоты, сделанные с ffmpeg неравномерными по времени?

ffmpeg -i out2.mp4 -vf fps=1/05 img%03d.jpg 

я получаю 18 файлов Когда я смотрю на получающиеся скриншоты, они 5 секунд друг от друга , но первый кадр начинается около 3 секунд, второй - через 8 секунд и т. д. Как мне заставить его начать с самого первого кадра, а затем перейти на 5 секунд на последующих кадрах?

ответ

0

Вы используете функцию fps, основной целью которой является изменение частоты кадров, а не выделение определенных кадров. При использовании его для уменьшения частоты кадров он использует регулярную каденцию для сохранения кадров. Для 1/5 это средний кадр в 5-секундном сегменте.

Используйте фильтр select.

ffmpeg -i out2.mp4 -vf select='lte(mod(t,5),0.01)' -vsync 0 img%03d.jpg