我有一个Web应用程序,它可以让人们作出的声音效果的持续时间。有时声音效果不到0.55秒。在这种情况下,他们可能无法在Chrome浏览器中正常播放。我想知道一个命令行音频处理实用程序,它将使我能够填充短于0.55秒的声音,并将声音持续时间增加至少0.55秒。Linux命令延长音频文件
我已经看过成无畏的批量处理,但无法弄清楚如何使用它的命令行上。我也研究过使用sox,但找不到延长声音的最短时间选项。
我有一个Web应用程序,它可以让人们作出的声音效果的持续时间。有时声音效果不到0.55秒。在这种情况下,他们可能无法在Chrome浏览器中正常播放。我想知道一个命令行音频处理实用程序,它将使我能够填充短于0.55秒的声音,并将声音持续时间增加至少0.55秒。Linux命令延长音频文件
我已经看过成无畏的批量处理,但无法弄清楚如何使用它的命令行上。我也研究过使用sox,但找不到延长声音的最短时间选项。
使用
sox -n silence.wav trim 0.55
产生的沉默0.55s长的文件。
然后
sox -m -v 1 yourfile.wav silence.wav -t wav outfile
检查SoX你应该能够做到这一点。它是一个音频工具包(多平台)。首先在声音的末尾添加足够的沉默,然后剪掉合适的部分。
做一个沉默的0.55s WAV。然后将其与您的文件连接起来。它将有0.55s以上的...所以你可能想要削减它。
sox yourfile.wav silence.wav outfile.wav trim 0 0.55
编辑:它似乎可以使用-n作为文件名生成沉默。因此,它看起来像:
sox yourfile.wav -n outfile.wav trim 0 0.55
如果yourfile.wav具有采样率超过48000不同,你需要以这种速度产生的沉默也为串联工作:
sox yourfile_at_44100.wav -r 44100 -n outfile.wav trim 0 0.55
如果你想要做的只有实际上短于0.55的文件,您可能需要通过使用soxi
来检查它们的持续时间来过滤它们。
我怎么知道多少下调?我不想削减任何非沉默部分的音频。 – 2010-11-06 19:31:24
@Daniel X Moore:这就是我为什么写soxi的原因:你只需要在小于.55s的文件上执行此操作。用一些grep/awk来检查条件的shell循环应该这样做。 – liori 2010-11-07 11:36:07
请举例?我认为混合技术是更简单的方法,因为它可以处理任何文件长度。 – 2010-11-07 23:20:50