Преобразование текста в речь на iOS

Я хотел бы добавить текст в речь на iOS, но заметил, что NSSpeechSynthesizer, похоже, отсутствует в Cocoa-Touch.

Есть ли какие-либо сторонние, коммерческие или FOSS библиотеки, которые вы бы порекомендовали? Будет ли Apple отклонять приложение, содержащее стороннюю библиотеку?


person cfischer    schedule 16.04.2011    source источник


Ответы (4)


Я слышал, что OpenEars - это хорошо, но на самом деле я мало о нем знаю. Что касается Apple, принимающей приложение со сторонними библиотеками, все зависит от того, использует ли сторонняя библиотека частные фреймворки или нет. Я уверен, что информация доступна на сайте OpenEars.

person edc1591    schedule 16.04.2011

Как программно использовать синтезаторы голоса iOS? (преобразование текста в речь)

Начиная с iOS 7 Apple предоставляет следующий API ...

https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVSpeechSynthesizer_Ref/Reference/Reference.html

#import <AVFoundation/AVFoundation.h>
…
AVSpeechUtterance *utterance = [AVSpeechUtterance 
                            speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];
person Onato    schedule 24.04.2014

Взгляните на движок CMU Flite TTS.

Есть несколько портов Flite для iOS, например

person Paul Dixon    schedule 17.04.2011
comment
Для тех из вас, кто не усвоил сложный путь, Flite абсолютно ужасен по качеству (подумайте, в лучшем случае, о старой Windows), а количество файлов, необходимых для его использования в любом проекте, делает операцию сборки чрезмерно дорогой. (Анализ образца проекта дает 1 предупреждение и 33 результата анализатора. Плохо.) Это бесплатно, но по сути бесполезно. - person Thromordyn; 15.06.2011
comment
Я не согласен с тем, что это бесполезно - все зависит от того, нужно ли вам воспроизведение речи с высокой точностью или нет! Мое приложение использует Flite и дополнено синтезом стиля 80-х. - person mikecsh; 04.09.2011

Если вы не публикуете свое приложение в магазине приложений, я рекомендую VoiceService API. Это частный API. Но он прост в использовании и выводит качественный звук.

person Peter Zhou    schedule 07.06.2012