Звук голоса AVSpeechUtterance en-US искажен на iOS 12 - PullRequest
0 голосов
/ 08 октября 2018

У меня есть приложение, использующее AVSpeechUtterance, которое до iOS 12 работало нормально. Оно все еще работает, но голос в США звучит искаженно.Этого не происходит на симуляторе XCode или на новом iPhone XS Max.Кажется, это происходит только на iPhone X. Удаление и переустановка приложения не решает проблему.Единственным исправлением было изменение голоса на en-IE.Кто-нибудь еще испытал это или нашел обходной путь ??

AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc] initWithString:@"This is a test"];
utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"];
utterance.rate = AVSpeechUtteranceDefaultSpeechRate;
[self.synthesizer speakUtterance:utterance];

1 Ответ

0 голосов
/ 08 октября 2018

iOS12 Сделано 'en-US', используйте Фред вместо Саманта ,

Попробуйте заменить:

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

на:

utterance.voice = [AVSpeechSynthesisVoice voiceWithIdentifier:@"com.apple.ttsbundle.Samantha-compact"];
...