Можно ли наложить изображение на каждый кадр видео, используя FFMPEG
Я пытаюсь наложить 10 разных изображений на 10-секундное видео. В настоящее время я могу наложить одно изображение за весь промежуток времени видео, используя FFMPEG. Я хочу, чтобы каждую секунду на видео можно было видеть другое изображение.
Как я могу добиться этого, если это возможно?
С уважением, Рувим
2 ответа
Да, команда должна выглядеть примерно так:
ffmpeg -y
-i foo.mp4 -i foo.jpg -i bar.jpg [...put more pics here...]
-filter_complex "
[0:v][1:v] overlay=25:25:enable='between(t,0,1)' [tmp];
[tmp][2:v] overlay=25:25:enable='between(t,1,2)' [tmp]
...continue the same way...
"
bar.mp4
Простой способ, если у вас есть упорядоченная последовательность изображений:
ffmpeg -i video.mp4 -pattern_type glob -framerate 1 -i "*.png" \
-filter_complex overlay output.mp4
Недостатком является то, что все входные изображения должны иметь одинаковую ширину, высоту и формат пикселей: в противном случае наложенные кадры могут отображаться неправильно.