google 语音转文本无法正确处理非常短的音频(单个单词)

google speech to text not working correctly with very short audio (single words)

我正在使用流式音频和 wav 文件测试 google 语音转文本 API。 我正在使用来自电话的音频:8000 采样率、8 位、mulaw 编码。 Google 配置设置正确。

当我用正常序列测试它时,它 returns 是一个正确的转录。 然而,当我说一个词(尤其是一个数字)时,我经常得不到 api -> 的回应,就好像它没有输入一样。流式传输和批量转录都会发生这种情况。

有人知道为什么会这样吗?如何解决?

Cloud Speech-to-Text API best practices 建议使用无损编解码器,如 FLAC 或 LINEAR16。我用 LINEAR16 进行了验证,它适用于作为数字的单个单词。所以解决方案是对音频进行转码。