【问题标题】:webkitSpeechRecognition throws error "network"webkitSpeechRecognition 抛出错误“网络”
【发布时间】:2016-10-03 15:23:34
【问题描述】:

我有一个语音识别(使用 webkitSpeechRecognition)应用程序,在独立的 chrome 浏览器上运行时效果很好。

我将我的应用程序转换为电子包,它停止收听麦克风并发送回一条错误消息“网络”。文档显示“完成识别所需的网络通信失败。”。但是它直接在 chrome 中运行良好,没有任何问题。

我还将“SpeechSynthesisUtterance”用于文本到语音,并且在电子上没有任何问题。

几周前,在生成概念证明期间,我的解决方案运行良好,但它也停止了工作。

有人知道哪里出了问题吗?

【问题讨论】:

    标签: electron webkitspeechrecognition


    【解决方案1】:

    我可以使用我自己的 Google Speech API 密钥。

    请按照https://docs.smart-mirror.io/docs/howto/how_to_obtain_chromium_speech_keys.html上的说明获取

    一旦您拥有 API 密钥,ClientID 和 ClientSecret 将它们设置到您计算机的环境变量中,分别使用密钥 GOOGLE_API_KEY、GOOGLE_DEFAULT_CLIENT_ID、GOOGLE_DEFAULT_CLIENT_SECRET。

    确保在配置环境变量后重新启动系统。有时它们不会立即生效。

    【讨论】:

    • 不知道为什么这被否决了 - 效果很好!
    • 嗨,看来这不再是必需的了,但无论如何我都无法让它为 Electron 工作。有这方面的消息吗?
    【解决方案2】:

    来自https://www.chromium.org/developers/how-tos/api-keys

    无法为 Chrome 的 Speech API 获得额外配额。请查看 Cloud Speech API。

    请勿在任何 Chromium 群组/邮件列表中发布有关 Speech API 的问题。

    Chromium 代码使用的许多 Google API 是特定于 Google Chrome 的,不适合在衍生产品中使用。在 API 控制台 (http://developers.google.com/console) 中,您可以为上面列出的某些 API 购买额外的配额。 对于没有“定价”链接的 API,无法购买额外配额。

    所以我认为你只是不走运,你必须使用其他东西。如果你需要离线工作的东西,你可能想看看Sphinx

    【讨论】:

    • 上周一切正常!我看到 webkitSpeechRecognition 没有发出任何网络请求(据我从铬控制台上的网络选项卡中看到的)。为什么我需要 API 密钥?如果需要,我在哪里为 webkitSpeechRecognition 配置它?好糊涂!我以前从来没有这样做过。
    • 我能够从 fiddler 找到网络,我生成了自己的 api KEY 和客户端 ID/秘密。在环境变量上配置它们..现在正在使用但它仍然不起作用
    猜你喜欢
    • 2016-07-12
    • 2017-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多