好的。我有一些使用桌面录制工具。我使用ffmpeg
once 对它们进行了转码(主要是为了剪掉开头和结尾)。
现在,我有 3 个这样的文件,我想将它们合并成一个.ogv
文件。我尝试使用oggCat
,它因某种错误而崩溃(我尝试使用 将一个文件合并到其自身oggCat
,但也失败了,这让我相信我的发行版正在发送一个损坏的软件包版本)。简单地cat
ing 文件可以工作,但我无法查找,这很不酷。mencoder
像这样运行mencoder -ovc lavc -oac lavc file1.ogv file2.ogv file3.ogv -o complete.ogv
。它将文件转码为avi
并剪辑 3 个视频中的一小部分。
那么,我该怎么做呢?
更新 1:我目前的解决方法是将这 3 个文件转码为.mpg
使用ffmpeg
,然后cat
将它们合并在一起,然后将它们转码回ogv
。
更新 2:PiTiVi 适用于这种事情,但我需要一些可以自动化和编写脚本的命令行工具。
答案1
答案2
我将为此使用 ffmpeg 的 concat 解复用器(需要最新版本的 ffmpeg)。
首先,创建一个名为inputs.txt(或任意名称)的文件,其中包含如下行:
file '/path/to/input1.ogv'
file '/path/to/input2.ogv'
file '/path/to/input3.ogv'
请注意,这可以是相对或绝对文件路径。如果您的文件都位于同一目录中,并且以类似于以下的模式命名输入1.ogv,输入2.ogv...,可以使用for循环生成inputs.txt:
rm inputs.txt; for f in input*.ogv; do echo "$f" >> inputs.txt; done
创建文件后,您可以无损地连接 ogv 文件,如下所示:
ffmpeg -f concat -i inputs.txt -c copy output.ogv
答案3
您是否尝试过使用皮蒂维? 将三个剪辑按顺序放在时间线上,然后将结果保存为一个文件。
答案4
http://www.xiph.org/oggz/有一个特点,
合并将 Ogg 文件合并在一起,按照演示时间的顺序交错页面。
编辑:这并不能实现您想要的效果,因为您想一个接一个地播放视频。
http://sox.sourceforge.net也可能有效,语法(http://sox.sourceforge.net/sox.html):
sox infile1 infile2 outfile
编辑:这仅处理音频。
你可以尝试编译这oggvideotools然后看看 oggCat 是否有效。
编辑:这对你有用......
您可以询问http://sourceforge.net/projects/oggvideotools/support修复您的发行版中的问题,包括您在 1) 运行从您的发行版存储库获取的二进制文件 2) 编译 3) 运行编译版本时遇到的错误消息文本。
编辑:您正在寻找替代程序来进行连接。
尝试使用mkvtoolnix将 ogg 文件合并为单个 mkv,然后使用同一工具从中提取 ogg