#ffmpeg
#linux #Видео #ffmpeg #vlc #обработка видео
Вопрос:
у меня есть несколько видеороликов, и я хочу добавить к ним водяной знак, но проблема в том, что в каждом видео «размер водяного знака» отличается (в некоторых видеороликах водяной знак меньше, а в некоторых больше — я думаю, из-за размера видеовхода, потому что он отличается)
вот моя команда ffmpeg (просто ссылка отличается)
ffmpeg -i "http://VIDEO-LINK" -i "/var/www/logo/logo.png" -filter_complex 'overlay=17:17' -vcodec h264 -crf 25 -preset veryfast -maxrate 600k -bufsize 600k -aspect '640:360' -s '640:360' -acodec libfdk_aac -hls_time 10 -hls_wrap 10 -start_number 1 -y "1.m3u8"
есть ли способ создать какой-либо процентный или фиксированный водяной знак на основе выходных данных размером 640×360
потому что, если входное видео имеет размер 640×360, оно показывает большой водяной знак с помощью этой команды, если входная ссылка равна 1280×720, то водяной знак такой маленький
Ответ №1:
Вы можете использовать фильтр scale2ref.
-filter_complex "[1][0]scale2ref=iw/8:ih/8[wm][vid];[vid][wm]overlay=17:17[out]"
Если соотношение сторон вашего водяного знака не совпадает с соотношением сторон ваших видеовходов, то scale2ref будет искажать ваш логотип. Лучше всего выполнить одноразовую операцию, при которой логотип дополняется, чтобы изображение имело то же соотношение сторон, что и ваши видео.