我.webm
在一个位置有多个文件,比如视频文件夹内。我使用的是 Ubuntu 13.10 32 位系统。我想将所有 webm 文件合并到一个output.webm
文件中。
我读过ffmpeg
,但是当我ffmpeg
尝试连接我得到的功能:
Unknown input format: 'concat'
;并且 ffmpeg 已被弃用并且改用 avconv。
请建议如何使用avconv
将多个 webm 文件合并为一个。
答案1
下载
第一步是下载ffmpeg
。它是一个独立的二进制文件,因此您不需要安装它。只需直接执行它即可。
您的(已过期的)Ubuntu 版本avconv
缺少许多功能,包括几个连接功能。
连接
使用连接解复用器如果您想尝试在不重新编码的情况下将它们合并。所有视频必须具有相同的参数。
使用连接过滤器如果视频的宽度、高度、帧速率等有所不同,过滤器将需要重新编码。
笔记:您从未提供我在一年半前对您的问题的评论中要求的信息,因此我无法建议您具体需要使用哪一个。此外,如果没有这些信息,我无法提供针对您的输入的特定示例,因此以下示例是通用的,如果没有其他选项,可能无法工作。
连接解复用器
创建一个文本文件,列出您的输入:
file 'input0.webm'
file 'input1.webm'
file 'input2.webm'
现在运行ffmpeg
:
ffmpeg -f concat -i input.txt -c copy output.webm
连接过滤器
在这个例子中input1.webm
有更大的宽 x 高比其他视频要大。此示例命令将缩放,input1.webm
以便与其他视频相匹配:
ffmpeg -i input0.webm -i input1.webm -i input2.webm -filter_complex \
"[1:v]scale=640:-1[v1]; \
[0:v][0:a][v1][1:a][2:v][2:a]concat=n=3:v=1:a=1[v][a]" \
-map "[v]" -map "[a]" output.webm