如何在iOS 7中使用AVSpeechUtterance将“每分钟字数”的文本转换为语速

时间:2014-08-23 03:17:53

标签: ios objective-c avspeechsynthesizer

我想将“每分钟字数”转换为AVSpeechUtterance的语速。

我该怎么做?

我可以使用语速获得文本的总时间长度吗?

我的代码:

- (AVSpeechUtterance*)convertTextToSpeak:(NSString*)textToSpeak {
    AVSpeechUtterance *speechUtterance = [[AVSpeechUtterance alloc] initWithString:textToSpeak];
    speechUtterance.rate = 0.2; // default = 0.5 ; min = 0.0 ; max = 1.0
    speechUtterance.pitchMultiplier = 1.0; // default = 1.0 ; range of 0.5 - 2.0
    speechUtterance.voice = [self customiseVoice];
    return speechUtterance;
}

1 个答案:

答案 0 :(得分:1)

据我所知,两种情况都不可能。 rate不等于每分钟特定数量的单词,它取决于实际文本(单词有多长,有多少暂停/标点符号......),语音/语言等等你可以通过尝试一下来得到近似值。

还没有用于确定AVSpeechUtterance长度的API(除非在说出来时进行测量,但这可能不是您想要的)。