FFMPEG zoom-pan для нескольких изображений - PullRequest
0 голосов
/ 19 января 2019

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

Команда: -

ffmpeg -f lavfi -r 30 -t 10 -i \
color=#000000:1920x1080 \
-f lavfi \
-r 30 -t 10 \
-i aevalsrc=0 \
-i "image-1.png" \
-i "image-2.png" \
-y -filter_complex \
"[0:v]fifo[bg];\
[2:v]setpts=PTS-STARTPTS+0/TB,scale=4455:2506:force_original_aspect_ratio=decrease,zoompan=z='min(zoom+0.0015,2.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=150:fps='30':s='1920x1080'[v2];\
[bg][v2]overlay=0:0:enable='between(t,0, 5)'[bg];\
[3:v]setpts=PTS-STARTPTS+5.07/TB,scale=3840:2160:force_original_aspect_ratio=decrease,zoompan=z='min(zoom+0.0015,2.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=150:fps='30':s='1920x1080'[v3];\
[bg][v3]overlay=0:0:enable='between(t,5, 10)'[bg];\
[1:a]amix=inputs=1:duration=first:dropout_transition=0" \
-map "[bg]" -vcodec "libx264" -preset "veryfast" -crf "15" "output.mp4"

Вывод не такой, как ожидалось, он только увеличивает масштаб только на первом изображении, второе изображение просто статично.

FFMPEG версия - 4.1

1 Ответ

0 голосов
/ 19 января 2019

Использование

ffmpeg -f lavfi -i color=#000000:1920x1080:r=30:d=10 \
       -f lavfi -t 10 -i anullsrc \
       -i "image-1.png" \
       -i "image-2.png" \
       -filter_complex \
"[2:v]scale=4455:2506:force_original_aspect_ratio=decrease,zoompan=z='min(zoom+0.0015,2.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=150:fps=30:s='1920x1080'[v2];\
 [bg][v2]overlay=0:0:enable='between(t,0,5)'[bg];\
 [3:v]scale=3840:2160:force_original_aspect_ratio=decrease,zoompan=z='min(zoom+0.0015,2.5)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=150:fps=30:s='1920x1080',setpts=PTS+5/TB[v3];\
 [bg][v3]overlay=0:0:enable='between(t,5,10)'[bg];\
-map "[bg]" -map 1:a -vcodec libx264 -preset veryfast -crf 15 -y "output.mp4"

Для источников lavfi лучше всего установить частоту кадров и длительность, где это применимо, в фильтре.

Поскольку изображения не зацикливаются, -t выиграноне имеет никакого эффекта.Поскольку zoompan будет устанавливать fps на своем выходе, вы можете пропустить настройку скорости ввода.А поскольку это одно изображение, setpts перед zoompan не имеет значения.Он должен быть установлен только на зум-приборе, временные метки которого необходимо сместить.

Поскольку у вас только один звук, нет смысла отправлять его в amix - нет ничего, с чем можно было бы смешаться!Просто сопоставьте это напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...