Does iOS provide built in text to speech support or any class like NSSpeechRecognizer?

Krishna picture Krishna · Jul 4, 2013 · Viewed 8.4k times · Source

i have found many libraries like flite which can be be used, as in given here, but I want to know if there is any Built-In class provided by iOS SDK similar to NSSpeechRecognizer provided in OS X.

Answer

lxt picture lxt · Jul 4, 2013

There is no built in text-to-speech support in iOS 5 or 6 - you'll need to use a third party library. If you are using iOS 7 you're in luck.

There's a new class in iOS 7 called AVSpeechSynthesizer (Apple's docs can be found here). You can use this to perform text-to-speech. Here's a simple example:

AVSpeechUtterance *utterance = [AVSpeechUtterance 
                                speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];

[synth speakUtterance:utterance];

Properties such as speed and voice type are set in the AVSpeechUtterance, rather than the synthesizer.