Как добавить изображение в видео в определенном месте кадра, используя ffmpeg - PullRequest
0 голосов
/ 29 февраля 2020

Мне нужно добавить наложение изображения в видео с помощью ffmpeg. ffmpeg -i test.mp4 -i logo.png -filter_complex "[0:v][1:v] overlay=10:10:enable='between(t,1,10)'" output.mp4 Я попробовал приведенный выше код, но размер наложенного изображения очень высокий, и он отображается в верхней части кадра. Изображение1 Изображение1 показывает результат, который я получаю после выполнения вышеуказанного кода. Мне нужен вывод как image2. image2

Ответы [ 2 ]

1 голос
/ 01 марта 2020
ffmpeg test.mp4 -i logo.png -filter_complex "\
[1][0]scale2ref=w=oh*mdar:h=ih/10[logo][input0];\
[input0][logo]overlay=x=main_w*0.05:(main_h-overlay_h)-(main_h * 
0.1):enable='between(t,1,10)'" output.mp4

Описание линии:

Make Lo go -высота 10% от высоты видео x=main_w*0.05 -> позиция Lo go 5% от левого края экрана; (main_h-overlay_h)-(main_h * 0.1) -> позиция Lo go 10% от нижнего края экрана;

Если вы предпочитаете постепенное появление lo go, а не внезапное появление, используйте это :

ffmpeg -i test.mp4 -loop 1 -i logo.png -filter_complex "\
[1][0]scale2ref=w=oh*mdar:h=ih/10[logo][input0];\
[logo]format=rgba,\
fade=in:\
st=1:\
d=0.5:\
alpha=1\
,fade=out:st=6:d=0.5:alpha=1\
[logo2];\
[input0][logo2]overlay=x=main_w*0.05:(main_h-overlay_h)-(main_h * 0.1):" output.mp4

(Вы можете удалить строку 8, если не хотите исчезать.)

0 голосов
/ 01 марта 2020

Это происходит потому, что размеры (ширина, высота) вашего изображения велики. Вам нужно масштабировать image.simple.

ffmpeg -i test.mp4 -i logo.png -filter_complex "[1]scale=300:100;[0:v][1] overlay=10:10:enable='between(t,1,10)'" output.mp4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...