ibm-cloud - 除了第一个音频 block 之外,不接收其他结果

标签 ibm-cloud speech-to-text ibm-watson

我想要一定程度的实时语音到文本转换。我正在使用带有 interim_results=true 的网络套接字接口(interface)。但是,我仅收到第一个音频 block 的结果。我发送的第二个、第三个......音频 block 没有被转录。我确实知道我的接收器没有被阻止,因为我确实收到了不活动消息。

json {"error": "由于 30 秒后不活动, session 超时。"}

如果我需要提供更多上下文信息,请告诉我是否遗漏了某些内容。

仅供引用,这是我的 init json。

{
 "action": "start",
 "content-type":"audio/wav",
 "interim_results": true,
 "continuous": true,
 "inactivity_timeout": 10
}

在我获得的第一个音频 block 的结果中,最终的 json 字段始终接收为 false

此外,我正在使用 golang 但这并不重要。

编辑:

考虑以下伪日志

  • localhost-server 接收前 4 秒的二进制数据#let say Binary 1
  • 二进制 1 发送至 Watson
  • {第一个 block 的interim_result_1}
  • {第一个 block 的interim_result_2}
  • localhost-server 接收最后 4 秒的二进制数据#let say Binary 2
  • 二进制 2 发送至 Watson
  • 向 Watson 发送 {"action": "stop"}
  • {第一个 block 的interim_result_3}
  • 第一个 block 的最终结果
  • 我没有收到第二 block 的任何转录

Link to code

最佳答案

您收到超时消息是因为该服务等待您发送更多音频或发送表明音频提交结束的消息。您正在发送该消息吗?这非常简单:

  • 通过发送 JSON 文本消息,并将操作键设置为值 stop:{"action": "stop"}

  • 通过发送空的二进制消息

https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/doc/speech-to-text/websockets.shtml

如果这不能解决您的问题,请告诉我

关于ibm-cloud - 除了第一个音频 block 之外,不接收其他结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36242810/

相关文章:

ibm-cloud - 错误 WATSNGWERR-0x0113001c 意味着什么?

mysql - Bluemix MobileFirstStarter MySQL ClassNotFoundException 错误

mysql - 如何在 Bluemix 上为 MySQL 配置云数据源?

java - 免费(最好是开源)语音到文本库的选项

node.js - 在 NodeJS 上为 Watson Conversation 配置 HTTPS

ibm-cloud - Watson Dialog 服务到对话服务

AndroidPocketSphinx : How does the system know which recognizer is invoked?

google-cloud-platform - 谷歌语音转文本: Invalid recognition 'config' : bad sample rate hertz

speech-recognition - IBM Watson 支持 "Speaker diarization"/"Speaker Recognition"吗?

ibm-watson - 如何实现具有多个工作空间的 Watson 对话