【问题标题】:Google Speech to Text API not working for audio files longer than one minuteGoogle Speech to Text API 不适用于超过一分钟的音频文件
【发布时间】:2018-03-27 17:20:07
【问题描述】:

我正在尝试使用 Google Speech to Text API 转换具有以下属性的音频文件

1) 原始文件 2) 采样率:16000 3)比特率:16 4) 音频类型:单声道

我正在使用以下 Python 代码来获取文本文件

service_request = service.speech().asyncrecognize(
        body={
            'config': {
                'encoding': 'LINEAR16',  # raw 16-bit signed LE samples
                'sampleRate': 16000,  # 16 khz
                'languageCode': 'en-US',  # a BCP-47 language tag
            },
            'audio': {
                'uri':'gs://xxxxxxxxx/english.raw'
                }
            })
    response = service_request.execute()
    print(json.dumps(response))

这个逻辑运作良好,但由于某种原因,转录只返回一分钟的录音而忽略其余部分。

为什么会这样,谁能帮帮我?

【问题讨论】:

    标签: python google-speech-api


    【解决方案1】:

    很难从您的代码中分辨出来,但您必须提交同步请求。根据docs,长度限制为~60 秒。异步请求最多接受大约 80 分钟。通读 APIs and Reference 文档,了解如何正确构建对您正在使用的 API 的请求。

    【讨论】:

    • 嗨,马特,我很担心,但我正在使用“asyncrecognize”方法进行 api 调用。在发布结果之前,我也在等待响应收到“完成”。
    【解决方案2】:

    我对这个问题的发现如下

    1) Google Speech to Text API 专为识别短音频文件而构建。 2)它在给定时间内可以处理的“音频数据”量是有限的。推动太多,谷歌会忽略它 3)如果你真的想进入这个,一个人必须弄清楚如何预处理你的音频文件并将音频文件“划分”成可消耗的块。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多