iOS 上的文字转语音

Posted

技术标签:

【中文标题】iOS 上的文字转语音【英文标题】:Text to Speech on iOS 【发布时间】:2011-04-16 13:46:48 【问题描述】:

我想在 ios 上为语音添加文本,但注意到 Cocoa-Touch 中似乎缺少 NSSpeechSynthesizer。

您是否推荐任何第三方、商业或 FOSS 库? Apple 会拒绝包含第三方库的应用吗?

【问题讨论】:

【参考方案1】:

How to programmatically use iOS voice synthesizers? (text to speech)

从 iOS 7 开始,Apple 提供以下 API...

https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVSpeechSynthesizer_Ref/Reference/Reference.html

#import <AVFoundation/AVFoundation.h>
…
AVSpeechUtterance *utterance = [AVSpeechUtterance 
                            speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];

【讨论】:

【参考方案2】:

看看CMU's Flite TTS 引擎。

Flite 有几个 iOS 端口,例如

https://github.com/KingOfBrian/VocalKit https://github.com/jonbarlo/iPhoneTTSSampleApp https://bitbucket.org/sfoster/iphone-tts/(不工作) http://wiki.monotouch.net/HowTo/Interop/Interopping_with_Open_Source_Text-to-Speech_(TTS)_C_libraries__for_iPhone。

【讨论】:

对于那些没有经过艰苦学习的人来说,Flite 的质量绝对是可怕的(想想旧的 Windows,最好的),而且在任何项目中使用它所需的文件数量使得对于昂贵的构建操作。 (分析示例项目会产生 1 个警告和 33 个分析器结果。不好。)它是免费的,但基本上毫无价值。 我不同意它毫无价值——这取决于您是否需要高保真语音再现!我的应用程序使用 Flite,并通过 80 年代的风格合成得到增强。【参考方案3】:

我听说OpenEars 很好,但我对它的了解并不多。至于苹果是否接受带有第三方库的应用程序,这完全取决于第三方库是否使用私有框架。我确信 OpenEars 网站上提供了这些信息。

【讨论】:

【参考方案4】:

如果您没有在 App Store 上发布您的应用,我推荐 VoiceService API。它是一个私有 API。但它易于使用并输出高质量的声音。

【讨论】:

以上是关于iOS 上的文字转语音的主要内容,如果未能解决你的问题,请参考以下文章

iOS自带文字转语音

iOS10原生的语音转文字功能

iOS 文字转语音 API

iOS中 语音识别功能/语音转文字教程具体解释 韩俊强的博客

iOS开发----文字转语音

iOS 10中如何搭建一个语音转文字框架