使用avconv合并多个webm文件

Man*_*dit 8 video ffmpeg merge avconv

.webm在一个位置有多个文件,比如在视频文件夹中。我正在使用 Ubuntu 13.10 32 位系统。我想将我所有的 webm 文件合并到一个output.webm文件中。

我已经阅读过ffmpeg,但是当我尝试ffmpeg使用concat函数时,我得到了:

Unknown input format: 'concat'; 不推荐使用 ffmpeg 并使用 avconv 代替。

请建议如何avconv用于将多个 webm 文件合并为一个。

llo*_*gan 9

下载

第一步是下载ffmpeg. 它是一个独立的二进制文件,因此您无需安装它。直接执行就可以了。

您的(已过期)Ubuntu 版本avconv缺少许多功能,包括几个连接功能。

连接

如果您想尝试在不重新编码的情况下加入它们,请使用concat demuxer。所有视频必须具有相同的参数。

如果视频的宽度、高度、帧速率等不同,请使用concat 过滤器。过滤器将需要重新编码。

注意:一年半前,您从未在我对您的问题的评论中提供我要求的信息,因此我无法建议您特别需要使用哪一个。此外,如果没有此信息,我无法提供特定于您的输入的示例,因此以下示例是通用的,如果没有其他选项,则可能无法使用。

连接分路器

制作一个文本文件,列出您的输入:

file 'input0.webm'
file 'input1.webm'
file 'input2.webm'
Run Code Online (Sandbox Code Playgroud)

现在运行ffmpeg

ffmpeg -f concat -i input.txt -c copy output.webm
Run Code Online (Sandbox Code Playgroud)

连接过滤器

在这个例子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
Run Code Online (Sandbox Code Playgroud)

另见

  • @Sneetsher 如果只有有人会为 Stack Overflow 上的所有 Android 用户提供各种 ARM 版本……我们会看到过时的 2.4.2 版本少得多(不确定他们都是从哪里获得的)。 (2认同)