谷歌语音到文本API不适用于超过一分钟的音频文件

2024-04-28 12:09:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用googlespeech-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))

这种逻辑运行良好,但由于某些原因,转录只返回一分钟的记录值,而忽略了其余的部分。在

为什么会这样,有人能帮我吗?在


Tags: 文件totextapi类型raw属性response
2条回答

我对这个问题的发现如下

1)Google语音到文本API是为识别短音频文件而构建的。 2) 它在给定时间内处理的“音频数据”的数量是有限的。推得太多,谷歌就会忽略它 3) 如果你真的想进入这一领域,你就必须弄清楚如何预处理你的音频文件,并将音频文件“分割”成可消费的块。在

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

相关问题 更多 >