我发现了很多像flite这样的库,它们可以使用,如这里所示,但我想知道iOS SDK是否提供了类似于OS X中提供的NSSpeechRecognizer的内置类。
iOS 5或6中没有内置的文本到语音支持,您需要使用第三方库。如果你使用的是iOS 7,那你就很幸运了。
iOS7中有一个新类叫做AVSpeechSynthesizer
(苹果的文档可以在这里找到)。您可以使用它执行文本到语音转换。这里有一个简单的例子:
AVSpeechUtterance *utterance = [AVSpeechUtterance
speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];
诸如速度和语音类型之类的属性是在AVSpeechUtterance
中设置的,而不是在合成器中设置的。