【问题标题】:Convert audio files for CMU Sphinx 4 input为 CMU Sphinx 4 输入转换音频文件
【发布时间】:2012-11-21 11:52:18
【问题描述】:

我想使用 CMU Sphinx 4 运行识别大量文件。Sphinx 需要以下格式:

  • 16 千赫兹
  • 16 位
  • 单声道
  • 小端序

我的文件类似于 44100 khz、32 位立体声 mp3 文件。我尝试使用 Tritonus,然后使用它的更新版本 JavaZoom,使用来自bakuzen 的代码进行转换。但是,AudioSystem.getAudioInputStream(File) 抛出了 UnsupportedAudioFileException,我一直无法弄清楚原因,所以我继续前进。

现在我正在尝试 ffmpeg。命令ffmpeg -i input.mp3 -ac 1 -ab 16 -ar 16000 output.wav 似乎应该可以解决问题(除了小端序),但是当我使用 Audacity 检查输出时,它仍然将其标记为“32 位浮点数”。我在this site 上找到的命令也使用了-acodec pcm_s16le,从它​​的名字看似乎是输出16 位小端;但是,Audacity 仍然告诉我输出是 32 bit float

谁能告诉我如何将音频文件转换为 CMU Sphinx 4 所需的格式?

【问题讨论】:

    标签: java audio ffmpeg speech-recognition cmusphinx


    【解决方案1】:

    您是否真的在 CMU Sphinx 4 中尝试过 ffmpeg 的输出? 32 位浮点数可能是您在 Audacity 中的默认采样格式(Edit > Preferences > Quality)。我猜它会将任何导入的文件转换为这些设置,因此它可能不会报告实际文件的参数,但可能是 Audacity 中的工作文件。

    删除-ab 16。这将指示编码器使用 16 位/秒,而 ffmpeg 无论如何都会为 pcm_s16le 忽略它。所以你的命令看起来像:

    ffmpeg -i input.mp3 -acodec pcm_s16le -ac 1 -ar 16000 output.wav
    

    在 Linux 中转换目录中的所有 mp3 文件:

    for f in *.mp3; do ffmpeg -i "$f" -acodec pcm_s16le -ac 1 -ar 16000 "${f%.mp3}.wav"; done
    

    或窗户:

    for /r %i in (*) do ffmpeg -i %i -acodec pcm_s16le -ac 1 -ar 16000 %i.wav
    

    在 Windows 批处理文件中:

    for /r %%i in (*.mp3) do ffmpeg -i "%%i" -acodec pcm_s16le -ac 1 -ar 16000 "%i.wav"
    

    您可以使用fileffmpegffprobemediainfo 以及其他实用程序查看文件信息:

    $ file hjl0bC.wav 
    hjl0bC.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 16000 Hz
    
    $ ffmpeg -i hjl0bC.wav
    [...]
    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 16000 Hz, mono, s16, 256 kb/s
    

    【讨论】:

    • 谢谢,这似乎是正确的格式。但是,我的输出文件仍然不能在 Sphinx 4 上运行。可能要直接问@Nikolay Shmyrev...
    • 格式正确。我的文件只有零能级区域,所以一旦我在前端添加抖动,一切都很好。
    • @NateGlenn 我添加了您的编辑,但被其他用户拒绝。我不是 Windows 用户,所以我没有测试它。
    • 谢谢。我想如果我的编辑被拒绝,我需要查看编辑政策。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多