У меня есть одна команда ffmpeg, которая объединяет два видео mp4 вместе, а затем другая команда, которая применяет водяной знак к выходному видео первой команды. Команды следующие:
Объединить бок о бок
ffmpeg -i left.mp4 -i right.mp4 -filter_complex "[0:v][1:v]hstack,format=yuv420p[v];[0:a][1:a]amerge[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -ac 2 output.mp4
Применить водяной знак
ffmpeg -i output.mp4 -i watermark.png \ -filter_complex "overlay=x=(main_w-overlay_w)/2:y=(main_h-overlay_h)/2" output-with-watermark.mp4
Можно ли как-то применить водяной знак одновременно с объединением mp4-файлов?
решение1
Просто объедините свои фильтры:
ffmpeg -i left.mp4 -i right.mp4 -i watermark.png -filter_complex "[0:v][1:v]hstack,format=yuv420p[tmpv];[0:a][1:a]amerge[a];[tmpv][2:v]overlay=x=(main_w-overlay_w)/2:y=(main_h-overlay_h)/2[v]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -ac 2 output-with-watermark.mp4