【发布时间】:2016-12-29 20:38:42
【问题描述】:
我可以在 AVSpeechSynthesizer 中更改语音的音高,或者对它的输出语音添加任何效果,使其听起来不同吗?
【问题讨论】:
标签: ios iphone xcode avspeechsynthesizer
我可以在 AVSpeechSynthesizer 中更改语音的音高,或者对它的输出语音添加任何效果,使其听起来不同吗?
【问题讨论】:
标签: ios iphone xcode avspeechsynthesizer
是的,您可以更改口语句子的音高和速率。
AVSpeechUtterance 类有两个相关属性:
pitchMultiplier: Float(值介于 0.5(最低音高)到 2.0(最高音高)之间)。默认音高为 1.0。rate: Float(两个常数之间的值:AVSpeechUtteranceMinimumSpeechRate(最慢的语速)和AVSpeechUtteranceMaximumSpeechRate(最高的语速)。当您创建 AVSpeechUtterance 时,只需适当地设置这些属性,然后让您的 AVSpeechSynthesizer 说出话语。
注意:您还可以更改AVSpeechUtterance 的声音(重音)。
我希望这会有所帮助。如果我说的有什么不清楚的地方,请告诉我。
【讨论】:
默认间距为 0.5。
AVSpeechUtteranceMinimumSpeechRate 为 0.0
AVSpeechUtteranceMaximumSpeechRate 为 1.0(最高语速)。
AVSpeechSynthesizer *synthesizer= [[AVSpeechSynthesizer alloc]init];
synthesizer.delegate=self;
AVSpeechUtterance *utterances =
[AVSpeechUtterance speechUtteranceWithString:text];utterances.voice
= [AVSpeechSynthesisVoice voiceWithLanguage:@"de-DE"];//change voice utterances.rate=0.5;//default rate
[synthesizer
speakUtterance:utterances];
【讨论】: