首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google-Cloud-Speech: StreamingRecognize方法的第一个中期结果中的延迟

Google-Cloud-Speech: StreamingRecognize方法的第一个中期结果中的延迟
EN

Stack Overflow用户
提问于 2017-08-31 22:00:37
回答 1查看 371关注 0票数 1

我们正在尝试通过JAVA客户端使用谷歌的StreamingRecognize方法。我们正在从麦克风读取数据,并将其发送到speech API。使用以下设置:识别配置- LINEAR16,16 size,en-US我们尝试将不同的缓冲区大小推送到StreamingRecognize (最多16000字节)。我们观察到,获得第一个结果至少需要4-5秒,并且在中间结果被流式传输之后。任何人都能确认这是否是API的预期行为。另外,如果能知道为什么会有这么多延迟,那就太好了。是否有任何方法或工作可以最小化延迟。

请注意,在延迟之后,我们将获得临时结果,并最终以合理的准确性获得完整的发声

EN

回答 1

Stack Overflow用户

发布于 2017-09-27 06:43:36

我怀疑在描述的上下文中有两种行为是错误的,

在您的java服务应用程序中,

  1. 采样率不应是硬编码或固定不变的,因为每个系统或安装在相应系统中的麦克风适配器的采样率都会有所不同。例如,8000、16000、41000、48000等,因此您需要从麦克风的音频上下文中选择采样率,并在第一个初始调用中将其发送到Requestconfig setter中进行更新。
  2. 如果您在连接握手时通过websocket流式传输,则将这些采样率(字节/帧)发送到第一个请求观察者,从第二个请求开始,您需要跳过第一个请求观察者,并可以直接传递到第二个请求观察者以获取记录。

如果以上几点都不起作用,请分享你的StreamingRecognize类。这样我就可以相应地调优您的代码

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45983346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档