我目前正在为一个软件工具制作视频教程。我用 RecordMyDesktop 录制了一些短视频(30 秒到 4 分钟之间),现在需要将它们合并成一个视频。任务流程如下:
将文件从远洋船到AVI(或其他可行的格式)。
从视频中裁剪不需要的部分(例如与 RecordMyDesktop 本身的交互)。
将各个裁剪的视频合并为一个文件。
听起来很简单,但过去几周我经历了一系列尝试,却始终没有成功。下面我将详细介绍我迄今为止采取的步骤以及发现的问题。
转换远洋船到AVI
关于这个主题有很多帖子,指向多种工具。其中许多帖子似乎已经过时了,但我最终成功使用avconv
,例如:
avconv -i "input.ogv" -vcodec mjpeg -acodec mp2 -qscale 10 "output.avi"
之前我尝试过ffmpeg
,Avidemux,Lives 和其他,但它们都在 Ubuntu 14.04 上出现错误或崩溃。
虽然avconv
图像质量明显下降,音频中也出现大量噪音,但并不造成灾难性的后果。
裁剪
对于这项任务,据我所知,唯一允许在帧级别进行裁剪的工具是 Avidemux。其他工具(例如 Lives)也宣传此功能,但无法执行。
使用 Avidemux 执行此任务时没有出现任何错误,但生成的视频开始出现问题。Totem 无法播放其中一个视频,并发出异常;OpenShot 在打开一些使用 Avidemux 裁剪的视频时也发出警告。
合并
到目前为止,我已经用五种不同的工具尝试完成这项任务,但都失败了:
开放射击- 占用了 4 GB 的 RAM,然后占用了 4 GB 的交换空间,此时系统变得无响应,被迫重新启动。裁剪后的 avi 视频总计略大于 200 Mb。
avimerge- 生成合并文件,不会发出警告或错误消息,但图像和声音不同步。有时播放的声音来自上一步裁剪掉的部分。
基诺- 也生成了一个合并文件而没有发出错误,但完全破坏了图像,它不断闪烁并上下跳动,让人无法理解。
猫+门编码器- 最终结果存在与avimerge。
艾维德姆克斯- 最终发现它也能合并文件,尽管过程并不明显。生成的视频会产生不同步的声音和图像;当使用 Totem 等播放器打开合并文件时,长度大约是 Avidemux 报告长度的两倍。
问题
在这个阶段,我强烈怀疑合并步骤的上游出现了问题,也许是裁剪出现了问题(因此详细的故事也出现了问题)。
我的问题归结为:如何使用 RecordMyDesktop 制作的视频执行这三个看似简单的任务?如果您能提出建议,无论是全新的处理流程,还是更改某个步骤,我都十分感激。也欢迎经验丰富的 RecordMyDesktop 用户发表评论。
更新一:包括与cat
和合并的结果mencoder
。
更新二:包括与 Avidemux 合并的结果。
答案1
也许您正在寻找不同的工作流程。
你可以先用 剪掉你想要的部分oggz-chop
。只需在终端中输入:
oggz-chop -o output.ogv -s start -e end input.ogv
这应该会给你想要保留的好文件。确保按顺序命名它们,以便以后处理它们。
在那之后:
有一个oggCat
命令,它可以将两个或多个 ogg 文件连接在一起,生成一个长度等于所有提供的长度总和的 ogg 文件。
对您有帮助的命令行是:
oggCat output.ogv infile1.ogv infile2.ogv infile3.ogv ...
请不要将它与来自同一包的另一个名为的命令相混淆oggJoin
,该命令的作用完全不同,它会创建一个包含多个可并行运行的流的单个文件。
现在,对于裁剪,我知道有一种方法可以无损地做到这一点,即通过编辑 Theora 流的标题,但我目前无法弄清楚如何做到这一点。如果我找到方法,我会更新答案。