使用AVSpeechSynthesizer进行iOS文本转语音

时间:2015-10-08 14:08:54

标签: ios ios9 text-to-speech xcode7 avspeechsynthesizer

我在iOS应用中使用AVSpeechSynthesizer进行文字转语音。

除了运行iOS 9.0.2的iPad 2(型号A1395)之外,语音合成器在所有设备上都能正常工作。我正在使用Xcode 7.0.1。

问题是,在播放文字时说“希望”字母“p”要么非常安静,要么不播放用户只能听到“ho”。如果文本是“希望”,那么它就是正确的。

关于如何解决这个问题的任何想法?

1 个答案:

答案 0 :(得分:1)

有一些参数(语音,速率......)需要设置,我已经遇到过iOS 9的一些错误,其中一些代码直接与以前的iOS一起工作。以下是我初始化AVSpeechSynthesizer的代码:

NSString*str = @"hope";
AVSpeechSynthesizer*    synth = [[AVSpeechSynthesizer alloc] init];
AVSpeechUtterance *utterance = [AVSpeechUtterance
                                        speechUtteranceWithString: str];
utterance.rate = AVSpeechUtteranceDefaultSpeechRate;
NSString*lang = @"en-US"
utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:lang];
[synth speakUtterance:utterance];

你可以在iPad 2上试试这个代码吗?