【发布时间】:2016-03-27 01:15:46
【问题描述】:
我想要某种程度的实时语音到文本的转换。我正在使用带有interim_results=true 的网络套接字接口。但是,我只收到第一个音频块的结果。我发送的第二个,第三个......音频块没有被转录。我确实知道我的接收器没有被阻止,因为我确实收到了不活动消息。
json {"error": "Session timed out due to inactivity after 30 seconds."}
如果我需要提供更多上下文信息,请告诉我是否遗漏了什么。
仅供参考,这是我的初始化 json。
{
"action": "start",
"content-type":"audio/wav",
"interim_results": true,
"continuous": true,
"inactivity_timeout": 10
}
在我为第一个音频块获得的结果中,最终的 json 字段始终以false 接收。
另外,我正在使用 golang,但这并不重要。
编辑:
考虑下面的伪日志
- localhost-server 接收前 4 秒的二进制数据
#lets say Binary 1 - 二进制 1 被发送到 Watson
- {interim_result_1 for first chunk}
- {interim_result_2 for first chunk}
- localhost-server 接收到最后 4 秒的二进制数据
#lets say Binary 2 - 二进制 2 被发送到 Watson
- 向 Watson 发送 {"action": "stop"}
- {interim_result_3 for first chunk}
- 第一个块的最终结果
- 我没有收到第二个块的任何转录
【问题讨论】:
-
你能发布你的代码吗?
-
另外,请仔细检查 init json - 这听起来像是省略
continuous(或设置为 false)时的预期行为 -
我确实仔细检查了我的初始化 json。我做了一个 [gist] (gist.github.com/paritosh-gupta/7984bcfc0ec6871c3f83ee0541cd4bfd) 来查看代码。一旦它工作,我会将我的代码移动到公共存储库并在此处放置一个链接。谢谢!
标签: ibm-cloud speech-to-text ibm-watson