Мы обрабатываем короткие видеоролики.Большинство из них 640x480, записанные на мобильный телефон.У многих из них черная рамка слева и справа.Я хотел бы поставить водяные знаки на видео и в настоящее время использовать эту команду.
ffmpeg -i IN.mp4 -i WATERMARK.png -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" OUT.mp4
Проблема заключается в том, что при наличии рамки часть водяного знака попадает в рамку, а только часть - в фактическое содержимое.Хотелось бы разместить водяной знак в правом нижнем углу фактического содержимого.
Возможны ли какие-либо из этих или какие-либо другие идеи?
a, Динамически определять черные рамки и регулировать положение водяного знакасоответственно.
b. Обрежьте черную рамку и нанесите водяные знаки правильно на том же шаге.
Большое спасибо за помощь!
РЕДАКТИРОВАТЬ:
Я обнаружил, что это невозможно сделать за один шаг.
1, я могу получить размер обрезки
ffmpeg -i INPUT.mp4 -t 2 -vf cropdetect -f null - 2>&1 | awk '/crop/ { print $NF }' | tail -1
2, затем обрезать видео
ffmpeg -i INPUT.mp4 -filter:v "crop=352:480:144:0" -c:a copy OUTPUT.mp4
3, затем отметьте его водяным знаком
ffmpeg -i INPUT VIDEO.mp4 -i INPUT IMAGE.png -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" OUTPUT VIDEO.mp4
Есть ли способ объединить 2 и 3 в один шаг?