2015-09-29 26 views
6

Problem: w iOS 7.x i iOS 8.x ten kod działa poprawnie, ale w przypadku iOS 9.x tempo mówienia jest coraz wolniejsze w porównaniu do wskaźnika mowy w systemie iOS 7 & 8.Natężenie komentarzy AVSpeechSynthesizer różniące się w iOS7 i iOS 9

self.synthesizer = [[AVSpeechSynthesizer alloc] init]; 

self.synthesizer.delegate = self; 

AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc] initWithString:[NSString stringWithFormat:@"Hey %@, please choose places to explore or select excursions to see our custom crafted deals",[defaults objectForKey:@"USERNAME"]]]; 

utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"]; 

utterance.rate = 0.10; 

[self.synthesizer speakUtterance:utterance]; 
+0

Możliwy duplikat [iOS9 stopy AVSpeechUtterance dla AVSpeechSynthesizer emisji] (http://stackoverflow.com/questions/32761786/ios9-avspeechutterance-rate-for -avspeechsynthesizer-issue) – Gregarious

Odpowiedz

3

[utterance setRate: 0.5f]; będzie wykonać zadanie

+0

[wypowiedzenie setRate: 0.5f]; To na pewno zwiększy tempo wypowiadania ... ale teraz na iOS 7 i iOS 8 stanie się zbyt szybki – Himz

+0

'if ([[[UIDevice currentDevice] systemVersion] floatValue]> 8.5) { [wypowiedź setRate: 0.5f]; } else { [wypowiedzenie setRate: 0.1f]; } ' – Kaisp

+0

Tak, to jest coś, co robimy, ale dlaczego tak jest? Dlaczego współczynnik wypowiadania jest różny – Himz