首页 文章

如何加快谷歌 Cloud 演讲

提问于
浏览
0

我正在使用麦克风通过浏览器录制声音,将其转换为文件并将文件发送到java服务器 . 然后,我的java服务器将文件发送到 Cloud 语音api并给我转录 . 问题是转录超长(对应2秒的时间约为3.7秒) .

所以我想加快转录速度 . 要做的第一件事就是流式传输数据(如果我在记录的开头开始转录 . 问题是我并不真正理解api . 例如,如果我想从源代码转录我的音频流(浏览器/麦克风)我需要使用某种JS api,但我找不到任何我可以在浏览器中使用的东西(我们不能使用这样的节点吗?) .

否则我需要将我的数据从我的js流式传输到我的java(不知道怎么做而不破坏数据...)然后从那里通过streamingRecognizeFile推送它:https://github.com/GoogleCloudPlatform/java-docs-samples/blob/master/speech/cloud-client/src/main/java/com/example/speech/Recognize.java

但它需要一个文件作为输入,所以我该如何使用它呢?我无法真正告诉系统我完成或不记录...它将如何理解它是转录的结束?

我想在我的网络浏览器中创建一些东西,就像那里的谷歌演示一样:https://cloud.google.com/speech/

我认为有一些基本的东西我不明白使用流式api的方式 . 如果有人能够解释一下我应该如何处理这个问题,那就太遗憾了 .

谢谢 .

1 回答

  • 1

    Google "Speech-to-Text typically processes audio faster than real-time, processing 30 seconds of audio in 15 seconds on average" [1] . 您可以使用Google API Explorer准确测试每个请求需要多长时间[2] .

    为了加快转录速度,您可以尝试将识别元数据添加到您的请求[3] . 如果您了解语音的背景,则可以提供短语提示[4] . 或者使用增强模型来使用特殊的机器学习模型集[5] . 所有这些建议都会提高准确性,并可能对转录速度产生影响 .

    使用流识别时,在配置中可以将 singleUtterance 选项设置为 True . 这将检测用户是否暂停说话并停止识别 . 如果不是流请求将继续直到内容限制,这是流请求[6]的1分钟音频长度 .

相关问题