问题标签 [sfspeechrecognizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
319 浏览

ios - 不同语言的iOS语音重置

我有一个当前的语音识别捕获效果很好 - 你说你想要什么,它就可以了。对于它的价值来说也相当准确......

我遇到的问题是这样的:

  • 如果我在停止和启动后尝试更改语言,则会失败并出现以下错误

    /li>

但是,如果我停止录制并使用原始语言重置,它会正常工作。例如,即使从韩语开始,只要我停下来,切换到...韩语...然后再次按开始,它就可以了。不管我做了多少次这个过程。

问题是,继续我的例子,如果我从韩语开始切换到一种语言,甚至是英语,它会给我这个错误(包含在我的FYI 中)。recognitionTaskWithRequest

似乎起始语言与它是否有效无关,只要我选择不同的语言它就会失败,而当我选择相同的起始语言时它就会起作用。

stopListening的是这样的:

更新:

我发现,在连续两次重置后(保持相同的新选择的语言),录音按预期工作。

但就目前而言,我找不到一个解决方案,让它在更改语言后第一次立即工作......奇怪。

0 投票
0 回答
602 浏览

ios - 语音转文本错误 - Swift 4

我正在开发一个将语音转换为文本的应用程序,由于某些原因出现以下错误。

Utility] +[AFAggregator logDictationFailedWithError:] 错误域=kAFAssistantErrorDomain Code=203 "Corrupt" UserInfo={NSLocalizedDescription=Corrupt, NSUnderlyingError=0x60c000253c50 {Error Domain=SiriSpeechErrorDomain Code=102 "(null)"}}

请找到以下代码。

recognitonTask结果返回零。任何帮助表示赞赏。

0 投票
1 回答
182 浏览

ios - IOS/Objective-C/Swift/Speech:在声明 SFSpeech Recognizer 变量时指定 Locale

我正在尝试将一些我正在学习的 Swift 翻译为语音项目的 Objective-C。

Swift 显然允许您在声明变量时指定 SpeechRecognizer 的语言环境,如下所示:

在Objective-C中可以做到这一点吗?现在我已经在接口中声明了一个变量:

然后稍后设置语言环境:

理想情况下,我想在声明的一开始就这样做,但我对 Swift 和 Objective-C 真正做的事情之间的区别很模糊。

感谢您的任何建议或见解。

0 投票
2 回答
77 浏览

parsing - UWP - 语音识别 - 无法引用外部语法文件

我正在构建一个具有语音识别功能的 UWP 应用程序。我想从另一个 -root- 文件中引用一个外部语法文件。以下是根语法文件(名为RootGrammar.xml)的代码:

而外部语法文件(名为words.xml)是:

这两个文件位于同一个文件夹(名为Grammar)中,该文件夹位于解决方案的顶层。

我为根语法文件中的 URI 属性尝试了许多值,例如:

  • uri= "/words.xml"
  • uri= "\words.xml"
  • uri = "../words.xml"
  • uri = "..\words.xml"
  • uri = "ms-appx:///Grammar///words.xml"

我还尝试将外部文件重命名为words.grxml,还尝试显式识别 uri 中的规则(即uri = "/words.xml#words"),但所有这些都导致GrammarCompilationFailure.

0 投票
2 回答
428 浏览

ios - 从 SFSpeechRecognizer 停止语音输入后处理文本

我正在使用 iOS SFSpeechRecognizer API 开发语音转文本应用程序。

在这里找到了一个很棒的教程:它工作得很好。

我想在语音输入停止后立即处理文本并执行一些操作。那么,很好奇是否有可用于 SFSpeechRecognizer 的委托方法,它可以识别语音输入何时停止,以便我可以捕获输入并进一步处理?

0 投票
0 回答
410 浏览

ios - 带有多个请求的 SFSpeechRecognizer 216 错误

我有一个 AVAudio 和 SFSpeechRecognizer 的实现,通常在前几次都可以正常工作。但是,在一个或多个请求之后,我收到 216 错误。

尽管有很多关于这些错误(216、203 和其他错误)在 SO 和其他网站上可能意味着什么的问题,但似乎没有人确定。有人建议问题是您需要包含一行

其他人说,您只能在完成块中执行此操作,否则您将收到 203 错误

Apple 开发者论坛中的另一个人表示,216 错误实际上是 Nuance 错误,因为他们说,Nuance 为 Apple 处理了一些后端处理。Nuance 的 IOS SDK 实际上确实有错误 216

我已经添加了,request.endAudio()但我似乎无法消除通常由第三或第四个识别任务弹出的这个错误。

任何人都可以提出一个明确的解决方案或进一步阐明它的作用。如果苹果工程师能给出明确的回答,那就太棒了。

感谢您的任何建议或见解。

0 投票
1 回答
475 浏览

swift - Swift SFSpeechRecognizer 附加现有的 UITextView 内容

我在我的应用程序中使用 SFSpeechRecognizer,由于有一个专用按钮(开始语音识别),它可以很好地帮助最终用户在 UITextView 中输入评论。

但是,如果用户先手动输入一些文本,然后启动其语音识别,则先前手动输入的文本将被删除。如果用户在同一个 UITextView 上执行两次语音识别(用户正在“语音”录制其文本的第一部分,然后停止录制,最后重新开始录制),情况也是如此,之前的文本被删除。

因此,我想知道如何将 SFSpeechRecognizer 识别的文本附加到现有文本中。

这是我的代码:

我试图更新

经过

self.decaration.text += (result?.bestTranscription.formattedString)!

但它会为每一个识别出的句子赚取一个金币。

知道我该怎么做吗?

0 投票
1 回答
273 浏览

ios - SpeechRecognizer 后视频不播放

SpeechRecognizer 后视频不播放。没有得到任何错误只是卡在 AVPlayerViewController 上。我也停止了语音识别器。然后在我尝试播放视频之后。该视频在 SpeechRecognizer 之前完美播放。

也许可能的 SpeechRecognizer 并没有被这段代码阻止。所以,也许问题出在 stopRecording() 中。

在此处输入图像描述

0 投票
1 回答
186 浏览

ios - 将识别的语音与已知文本进行比较的最佳方法

给定我希望用户阅读(或多或少准确)的已知手稿(文本),识别用户在手稿中的进度的最佳方法是什么?

当我在 iOS 上寻找特定的解决方案时,我也对更一般的答案感兴趣。

iOS 提供了一个名为Speech的语音识别框架,我可以使用它来识别任何语音。我目前的方法是使用该框架的字符串结果将它们与手稿进行匹配。但是,在我看来,这似乎有相当多的开销,并且当我第一次向语音识别器提供预期的单词以便它“知道”要听什么时,它会节省资源并提高精度。

例如,当手稿中的下一个单词是“fish”时,我不需要语音识别器在整个英语词典中搜索与录制的音频最匹配的单词——我只需要得到一个概率值多么可能就是用户刚才说的“鱼”。

我认为这与关键词发现非常相似,只是我不仅发现了几个关键词,而且发现了整个手稿中的单词。

不幸的是,我无法在 iOS 上找到这样的 API。有没有比上述方法更好的方法来实现这种“语音跟踪”?

0 投票
0 回答
127 浏览

ios - 语音识别:备用子串始终为空,大部分时间置信度为 0

我正在尝试在 iOS 中使用语音识别,但我想我们没有交到朋友……

我已经设置了一个SFSpeechRegonizer并相应地设置了它的委托。现在我实现委托方法如下:

每当调用委托方法时,都会打印出如下内容:

转录很好。但是,alternativeSubstrings数组始终为空,并且confidence大多数时间值为 0。时不时地它们是非零的——但是当这种情况发生时它是不可预测的:

为什么没有alternativeSubstrings,为什么confidence大部分时间都是 0,我该如何解决这个问题?我 Apple 的语音库只是坏了或有什么问题?