在 iOS 中同时管理文本到语音和语音识别
Posted
技术标签:
【中文标题】在 iOS 中同时管理文本到语音和语音识别【英文标题】:Managing text-to-speech and speech recognition at same time in iOS 【发布时间】:2016-05-06 07:14:44 【问题描述】:我希望我的ios
应用程序使用文本转语音向用户读取它从服务器接收的一些信息,并且我还希望允许用户通过语音停止此类语音命令。我已经尝试过像OpenEars
这样的iOS 语音识别框架,我发现问题在于它正在侦听和检测应用程序本身“说”的信息,并且它干扰了用户语音命令的识别。
有人在iOS
中处理过这种情况并找到了解决方案吗?在此先感谢
【问题讨论】:
您可以使用AVSpeechSynthesizer
进行文字转语音:developer.apple.com/library/ios/documentation/AVFoundation/…
@RichardG 比你,我已经在使用它了,我只是在语音识别部分使用第三方框架,无论如何我都面临我描述的问题......
@AppsDev - 如果您找到任何解决方案,请考虑分享
【参考方案1】:
实现起来并不是一件小事。不幸的是,iOS 和其他人记录了通过扬声器播放的声音。您唯一的选择是使用耳机。在这种情况下,语音识别可以继续监听输入。除非插入耳机,否则在 TTS 期间 Openears 中的识别被禁用。
如果你仍然想实现这个被称为“介入”的功能,你必须做以下事情:
-
存储您通过麦克风播放的音频
实施降噪算法,有效地从录音中删除音频。您可以使用互相关在录音中找到适当的偏移量,并使用频谱减法来去除音频。
识别剩余信号中的语音。
如果不对 openears 源进行重大修改,就不可能做到这一点。
相关问题是android Speech Recognition while music is playing
【讨论】:
以上是关于在 iOS 中同时管理文本到语音和语音识别的主要内容,如果未能解决你的问题,请参考以下文章