产品帮助中心

欢迎来到简鹿技术支持中心,我们可以为您提供哪些帮助?

如何使用 FFmpeg 将两个视频合成一左一右教程

时间:2025-01-07 作者:小鹿 来源:简鹿办公
简鹿格式工厂
官方正版
纯净安全
软件评分:
格式工厂的全新替代产品。简鹿格式工厂是一款功能全面的音视频格式转换软件,能够轻松将各种音视频文件转换为所需格式。软件还特别支持 m3u8 下载与转换,是视频转换专家的必备工具。
Win下载 Mac下载

FFmpeg 是一个强大的多媒体处理工具,能够执行各种音频和视频的编码、解码、转码、流媒体以及滤镜应用等任务。在本教程中,我们将介绍如何使用 FFmpeg 来将两个视频文件并排合成(即一左一右),这对于制作对比视频、教学材料或任何需要同时展示两个画面的应用非常有用。

如何将两个视频合成一左一右

准备工作

确保您的计算机上已经安装了最新版本的 FFmpeg。如果您还没有安装,请访问 FFmpeg官方网站 下载适合您操作系统的安装包,并按照说明进行安装。


确保您想要合成的两个视频文件格式兼容且具有相同的分辨率和帧率。如果它们不一致,可能需要先对其中一个或两个视频进行预处理以匹配这些属性。

使用 FFmpeg 合成视频

要将两个视频并排合成,可以使用 FFmpeg 的 hstack 滤镜,该滤镜可以水平堆叠多个输入视频。以下是具体命令示例:


ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex "[0:v][1:v]hstack=inputs=2" output.mp4


在这个命令中:

-i video1.mp4 和 -i video2.mp4 分别指定了第一个和第二个输入视频文件。

-filter_complex "[0:v][1:v]hstack=inputs=2" 定义了一个复杂的过滤器链,其中 [0:v] 表示第一个输入的视频流,[1:v] 表示第二个输入的视频流,而 hstack=inputs=2 则指示 FFmpeg 水平排列这两个视频流。

output.mp4 是输出文件名,您可以根据需要更改。

处理不同分辨率或帧率的视频

如果两个视频有不同的分辨率或帧率,直接使用上述命令可能会导致问题。在这种情况下,我们需要先调整视频的属性使其一致。以下是一个例子,它首先缩放视频到相同的分辨率,并设置相同的帧率为 30 fps:


ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex \

"[0:v]scale=640:480,fps=fps=30[left]; \

 [1:v]scale=640:480,fps=fps=30[right]; \

 [left][right]hstack=inputs=2" \

output.mp4


在此命令中:


scale=640:480 设置每个视频的分辨率为 640x480 像素。

fps=fps=30 确保每个视频的帧率为 30 fps。

其余部分与之前的命令相同,用于将两个视频水平堆叠。

添加音频支持

默认情况下,上面的命令会复制第一个输入视频中的音频。如果您希望包含两个视频的音频或者只选择特定的一个作为最终输出的一部分,可以通过添加额外的选项来实现。例如,仅保留第一个视频的音频:


ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex \

"[0:v][1:v]hstack=inputs=2" \

-map 0:a? -c:a copy \

output.mp4


这里使用了 -map 0:a? 参数来指定从第一个输入视频中提取音频(如果有),并且通过 -c:a copy 直接复制而不重新编码音频流。


通过以上步骤,您应该能够成功地使用 FFmpeg 将两个视频文件并排合成。FFmpeg 提供了极其灵活的功能集,允许用户根据自己的需求定制命令行参数。对于更复杂的需求,如添加边框、水印或其他特效,也可以利用 FFmpeg 的丰富滤镜库进一步扩展功能。

热门教程
音频格式转换器 格式工厂
相关软件推荐
办公软件,就选简鹿 简便、快捷、高效

客户服务

帮助中心

关注我们

百家号 搜狐号 抖音号 CSDN B站平台
QQ客服
QQ:3236169202 复制
简鹿办公QQ客服二维码
微信客服
微信:jianlu365 复制
简鹿办公微信公众号
回到顶部