开发者

Text to Speech on iOS

I'd like to add text to speech on the iOS, but noticed that NSSpeechSynthesizer seems to be missing from Cocoa-Touch.

Are there any third par开发者_如何学运维ty, commercial or FOSS, libraries that you would recommend? Will Apple reject an app that contains a third party library?


How to programmatically use iOS voice synthesizers? (text to speech)

Starting from iOS 7 Apple provides the following 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];


Have a look a CMU's Flite TTS engine.

There are a few iOS ports of Flite, for example

  • https://github.com/KingOfBrian/VocalKit
  • https://github.com/jonbarlo/iPhoneTTSSampleApp
  • https://bitbucket.org/sfoster/iphone-tts/ (not working)
  • http://wiki.monotouch.net/HowTo/Interop/Interopping_with_Open_Source_Text-to-Speech_(TTS)_C_libraries__for_iPhone.


I've heard that OpenEars is good, but I don't really know too much about it. As for Apple accepting an app with third-party libraries, it all depends on whether or not the third-party library uses private frameworks or not. I'm sure that information is available on the OpenEars website.


If you are not releasing your app on the App store, I recommend VoiceService API. It is a private API. But it is easy to use and outputs high quality sounds.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜