18910140161

JavaScript-语音识别Safari-堆栈溢出

顺晟科技

2022-10-18 12:43:07

192

我按照API:https://wicg.github.io/speech-api/创建了一个语音识别网站。该网站可以在Chrome中运行,但不能在Safari中运行。

这是有道理的:基于浏览器支持的细节:https://developer.mozilla.org/en-us/docs/web/api/web_speech_api/using_the_web_speech_api#browser_support(语音到文本转换目前仅限于桌面版和安卓版Chrome)

但没有意义的基础是:https://developer.mozilla.org/en-us/docs/web/api/speechrecognition#browser_compatibility最后一个环节,声称有支持。

我很困惑,Safari是否提供支持?

我从Safari得到

的错误是:检测到语音识别错误:服务不允许这个错误是

什么意思?

服务不允许

用户代理不允许请求的语音识别服务,或者因为用户代理不支持它,或者因为安全、隐私或用户偏好的原因。在这种情况下,将允许使用另一种更合适的语音识别服务。

https://developer.mozilla.org/en-us/docs/web/api/speechrecognitionerrorevent/error.

我尝试在Safari设置和我的计算机设置中为麦克风提供明确的权限。不起作用。我不知道如何为Safari提供语音识别的明确权限。它应该请求许可,但它没有。

有没有人对如何在Safari上进行语音识别有什么建议?

这是代码:

<代码>Var Recognition=新建语音识别()Var textbox=$(";#textbox";)var指令=$(";#指令";)变量cont=' '识别.连续=真//识别开始识别.onStart=函数(){说明.文本(";语音识别已打开";)}识别.OnSpeechEnd=函数(){指令.文本(";未检测到语音";)}Recognition.OnError=函数(事件){Instructions.text('检测到语音识别错误:'+event.error)}Recognition.OnResult=函数(事件){var current=event.resultIndex;var transcript=event.results[current][0].transcript;CONT+=抄本文本框.Val(续)}$(";#start-btn";)。单击(函数(事件){如果(连续长度){续+=' '}Recognition.start()})```我根据本教程创建了这个:https://www.youtube.com/watch?v=rwb6rqqcmxc.

顺晟科技:

是否确保在网站上设置了SSL证书?有时,如果麦克风不在安全连接上,浏览器可能会阻止对麦克风的访问。

现在,如果这是一个本地站点,您可以使用自签名SSL证书作为解决方法,如果它没有发布的话。

我想通了。对于Safari,用户需要启用语音到文本的听写功能才能工作。详情可以在这里找到:https://bugs.webkit.org/show_bug.cgi?id=225298

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航