我想读一篇很长的文字:
NSString *text =@"Long test with dot. I want speaching pause when read dot. How can I do?"; AVSpeechSynthesizer *synthesizer = [AVSpeechSynthesizer new]; [synthesizer setDelegate:self]; AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc] initWithString:text]; utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:[self.defaults objectForKey:LANGUAGE]]; utterance.rate = 0.28; [synthesizer speakUtterance:utterance];
我想合成器检测点并暂停100毫秒.
可能吗?我能怎么做 ??
解决方法
我的意思是一个点(.)
但也许我找到了一个解决方案也是字符”,’:
NSString *text = @"Line one. LineTwo aftre a pause. Line three,pause here again."; text = [text stringByReplacingOccurrencesOfString:@"," withString:@"."]; NSArray *a = [text componentsSeparatedByString:@"."]; for(NSString *line in a) { AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc] initWithString:line]; utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:[self.defaults objectForKey:LINGUA]]; utterance.rate = 0.28; utterance.**postUtteranceDelay** = 0.3; [self.synthesizer speakUtterance:utterance]; }