【问题标题】:Linux command to extend the duration of audio filesLinux命令延长音频文件的持续时间
【发布时间】:2010-11-06 19:06:18
【问题描述】:

我有一个网络应用程序,可以让人们制作音效。有时声音效果的长度小于 0.55 秒。在这种情况下,它们可能无法在 Chrome 浏览器中正常播放。我想知道一个命令行音频处理实用程序,它可以让我用空虚填充短于 0.55 秒的声音,以将声音持续时间增加到至少 0.55 秒。

我研究过 Audacity 批处理,但不知道如何在命令行上使用它。我也研究过使用 sox,但找不到将声音延长到最短持续时间的选项。

【问题讨论】:

    标签: linux command-line audio


    【解决方案1】:

    使用

    sox -n silence.wav trim 0.55
    

    生成一个 0.55 秒长的静音文件。

    然后

    sox -m -v 1 yourfile.wav silence.wav -t wav outfile
    

    【讨论】:

      【解决方案2】:

      发出 0.55 秒的无声 wav。然后将其与您的文件连接起来。它将有超过 0.55 秒......所以你可能想剪掉它。

      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 检查它们的持续时间来过滤它们。

      【讨论】:

      • 我怎么知道要剪多少?我不想剪切音频的任何非静音部分。
      • @Daniel X Moore:这就是我写关于 soxi 的原因:您只需要对短于 0.55 秒的文件执行此操作。应该使用带有一些 grep/awk 来检查条件的 shell 循环。
      • 请举例?我认为混合技术是更简单的方法,因为它适用于任何文件长度。
      • @Daniel X Moore:是的,现在我也这么认为。
      【解决方案3】:

      检查SoX 你应该能够做到这一点。它是一个音频工具包(多平台)。首先在声音的末尾添加足够的静音,然后剪掉适当的部分。

      【讨论】:

        猜你喜欢
        • 2012-02-14
        • 1970-01-01
        • 2015-07-25
        • 1970-01-01
        • 1970-01-01
        • 2013-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多