Google Cloud Speech API 识别哪些音频文件类型?

What audio file types does Google Cloud Speech API recognize?

我正在尝试使用 Google 的 Cloud Speech API。这里有文档和代码示例:

https://cloud.google.com/speech/docs/basics
https://cloud.google.com/speech/docs/rest-tutorial

如果我将示例代码指向包含的文件 audio.raw,我可以将示例代码指向 运行,但不能使用简短的 .wav 文件。

我不知道音频样本文件是什么格式:

$ file audio.raw 
audio.raw: data

我的 .wav 文件可能有 10 秒的音频,但我得到的结果是空的。

我知道这个答案。

google cloud speech api returning empty result

之前有人问过我的问题,但是没有答案。

What types of audio are supported by Cloud Speech API?

我无法想象我必须正确获取音频文件的属性才能使其正常工作。我假设一个常见的用例,我的,是有人记录会议,不知道记录的参数,只想要一个文本文件。

编辑 2020 年 5 月:似乎情况有所改善,此答案不再正确:see new docs 了解有关受支持格式(包括 WAV)的详细信息。


截至 2016 年,似乎不支持 WAVe 格式。尽管这些格式被记录为支持:

  • LINEAR16 未压缩的 16 位带符号小端样本。这是 speech.asyncrecognize 可能使用的唯一编码。
  • FLAC 这是 speech.syncrecognize 和 StreamingRecognize 因为它使用无损压缩;所以 有损编解码器不会影响识别准确性。仅支持 16 位样本。并非 STREAMINFO 中的所有字段都受支持
  • 使用 G.711 压缩扩展 14 位音频样本的 MULAW 8 位样本 PCMU/mu-law。
  • AMR 自适应多速率窄带编解码器。采样率必须为 8000 赫兹。
  • AMR_WB 自适应多速率宽带编解码器。采样率必须为 16000 赫兹.

https://cloud.google.com/speech/reference/rest/v1beta1/RecognitionConfig#AudioEncoding

根据 Google 云语音文档: Speech-to-Text 支持使用 LINEAR16 或 MULAW 编码音频的 WAV 文件。 https://cloud.google.com/speech-to-text/docs/encoding