使用 FFmpeg 将两个视频与 PNG 水印合成并添加音频
使用 FFmpeg 将两个视频与 PNG 水印图像合成并添加音频,并保留第一个视频的音频。
ffmpeg -i input1.mp4 -i input2.mp4 -i watermark.png -filter_complex
'[0:v]scale=1280:720[v0];[1:v]scale=1280:720[v1];[v0][2:v]overlay=main_w-overlay_w-10:10,format=yuv420p,setsar=1[v2];[v1][2:v]overlay=main_w-overlay_w-10:10,format=yuv420p,setsar=1[v3];[v2][v3]concat=n=2:v=1:a=0[outv]' -map '[outv]' -map 0:a -c:a copy output.mp4
命令解释:
-i input1.mp4:第一个视频输入文件。-i input2.mp4:第二个视频输入文件。-i watermark.png:PNG 水印图像输入文件。-filter_complex:使用 filter_complex 进行视频处理。[0:v]scale=1280:720[v0]:将第一个视频缩放至 1280x720 分辨率,并命名为 'v0'。[1:v]scale=1280:720[v1]:将第二个视频缩放至 1280x720 分辨率,并命名为 'v1'。[v0][2:v]overlay=main_w-overlay_w-10:10,format=yuv420p,setsar=1[v2]:将水印图像叠加到第一个视频上,并进行格式转换和纵横比设置,命名为 'v2'。[v1][2:v]overlay=main_w-overlay_w-10:10,format=yuv420p,setsar=1[v3]:将水印图像叠加到第二个视频上,并进行格式转换和纵横比设置,命名为 'v3'。[v2][v3]concat=n=2:v=1:a=0[outv]:将两个添加了水印的视频拼接在一起,并只保留视频流,命名为 'outv'。-map '[outv]':将 'outv' 作为输出视频流。-map 0:a:将第一个视频的音频流作为输出音频流。-c:a copy:使用复制编码方式保留音频。output.mp4:输出视频文件。
注意:
- 确保所有输入文件都在同一目录下。
overlay滤镜的参数可根据需要调整,例如位置、大小等。concat滤镜的参数n表示要拼接的视频数量,这里设置为 2。- 输出视频文件将包含第一个视频的音频。
使用这个命令可以快速将两个视频与水印图像合成并添加音频。
原文地址: https://www.cveoy.top/t/topic/mXmu 著作权归作者所有。请勿转载和采集!