【发布时间】:2020-03-25 22:16:46
【问题描述】:
我觉得我已经很接近得到我想要的东西了,但是缺少了一些特别的东西。我想使用 Google 的 Speech to Text 引擎来实时流式传输音频数据(在这种情况下来自 wav 文件,但可以是标准输入)并在应用程序检测到静音时生成成绩单。我开始with this code,这很好,但尽管它说它流式传输音频,但我只有在它完成向 GCP 发送整个音频文件后才能取回转录本。
我的计划:to use a VAD 这样我就可以检测到静音,或者至少没有语音活动。我的 VAD 设置为在检测到 0.5 秒或 3 秒的静音时发送消息。当检测到 3s 时,我想将自上次静音以来的所有数据视为“一个短语”。然后将其发送到 GCP,然后它会为此发送回转录本。
到目前为止,我已经成功检测到静音 - 即 VAD 的实施工作,并且我已经让 STT 为整个音频文件生成脚本,但是我我正在努力做的是在检测到静音之后和当检测到静音时将数据切碎,并让 GCP 生成该位的成绩单。我想,一句话,我正在为我的缓冲区而苦苦挣扎......
非常感谢任何帮助。
另一方面,我认为这是因为 GCP STT 的实现方式而采用的方法,但这可能不是最好的方法,我认为 EOF 将关闭流到 STT 和在这种情况下,当 VAD 再次检测到语音并再次调用它时,我需要创建一个新的。我decided to make a gist of my code as it would be quite large here。
谢谢
【问题讨论】:
标签: go google-cloud-platform stream speech-to-text google-cloud-speech