Подтвердить что ты не робот

Как сделать видео со статическим фоном изображения в FFMPEG?

У меня есть изображение. У меня есть прозрачный FLV. Я хочу использовать изображение в качестве фона для прозрачного FLV и выводить его как FLV.

Эта команда работает, но видео длится один кадр:

ffmpeg -i background.png -f flv -vcodec flv -b 1500k -vf "movie=test_videos/alpha.flv [logo]; [in][logo] overlay=0:0 [out]" -s 800x464 -y output.flv

Я попытался использовать параметры -t и -vframes безрезультатно.

Есть ли у кого-нибудь советы?

4b9b3361

Ответ 1

Я извиняюсь за свой первоначальный комментарий, мой поиск вначале вызвал очень мало результатов.

Теперь посмотрим на документацию Я вижу на самом деле, что вы должны быть в состоянии сделать это. У меня нет времени проверять это, но я бы постарался сделать два прохода. Первый проход должен превратить ваш PNG в фильм с прозрачным фоном, который будет иметь такую ​​же продолжительность, что и ваш другой фильм. Что-то вроде:

ffmpeg -loop_input -f image2 -i background.png -r 25 -vframes 250 -an -vcodec png test.mov

Я выбрал PNG для видеокодека, потому что в соответствии с этим сообщением он поддерживает прозрачность в контейнерах MOV.

Тогда вы, должно быть, просто сможете передать этот фильм в свою оригинальную команду, где у вас есть ваше изображение.

Ответ 2

Полное решение, которое мне понравилось, это команда:

ffmpeg -loop_input -f image2 -i background.png -r 25 -vframes 2500 -an -vcodec libx264 -b 1500k -vf "movie=test_videos/alpha.flv [logo]; [in][logo] overlay=0:0 [out]" -s 800x464 -y output.mov