使用OGG/Vorbis,有没有办法继续录制到现有的音频文件?

使用OGG/Vorbis,有没有办法继续录制到现有的音频文件?

我正在使用 Vorbis/ogg 录制音频(使用arecord然后转至 oggenc)。我下载了 oggvideotools,它给了我oggCat,它可以让我将两个先前录制的音频文件合并到一个文件中。但是,我的问题是这样的:

我正在使用的设备已知已“拔出插头”,但它是在电源打开时进行录制的(更换电池等)。一旦设备重新开机,我需要继续录制到之前的文件(自动录制)。

现在,我可以用来arecord录制两个单独的文件,然后一旦录制完成,我可以 oggCat 这两个文件,但这并不能 100% 得到我想要的,我需要能够继续录制第一个文件文件被切断。

我需要 python 和 busybox 解决方案。不幸的是,Python 和 Busybox 之外的其他解决方案对我来说不可用 - 此外,下载其他包/程序也不可用,我有oggencarecord、 和oggvideotools

关于去哪里看有什么建议吗?我可以通过某种方式将arecord数据从临时文件传输到吗oggCat?喜欢:

oggCat NewFile.ogg File1.ogg (arecord file2.ogg ...)

(arecord file2.ogg ...)当前正在录制并同时附加到的文件在哪里Newfile.ogg

附言。音频文件将具有完全相同的参数 - 即相同的通道、速率等。

答案1

我还没有测试过,但考虑使用流程替代。这将获取一个程序的标准输出,并通过管道将其提供给另一个程序。

oggCat NewFile.ogg File1.ogg <(arecord)

如果我是正确的,这会将新录音附加到audio.ogg。我看到的最大问题是 arecord 默认情况下会输出 wav,因此您可能需要将其编码为 ogg。

抱歉,我没有麦克风来测试。但我还是回答了,因为我觉得这就是你正在寻找的部分,并且可以自己解决其余的问题。

相关内容