He mirado en esto y por desgracia, las opciones son o muy caro o mala calidad :
Relacionado con esto, aquí es cómo se puede utilizar TTS en línea de Google (código tomado de iPhone SDK - Google TTS and encoding):
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"file.mp3"];
NSString *text = @"You are one chromosome away from being a potato.";
NSString *urlString = [NSString stringWithFormat:@"http://www.translate.google.com/translate_tts?tl=en&q=%@",text];
NSURL *url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSMutableURLRequest* request = [[[NSMutableURLRequest alloc] initWithURL:url] autorelease];
[request setValue:@"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1" forHTTPHeaderField:@"User-Agent"];
NSURLResponse* response = nil;
NSError* error = nil;
NSData* data = [NSURLConnection sendSynchronousRequest:request
returningResponse:&response
error:&error];
[data writeToFile:path atomically:YES];
AVAudioPlayer *player;
NSError *err;
if ([[NSFileManager defaultManager] fileExistsAtPath:path])
{
player = [[AVAudioPlayer alloc] initWithContentsOfURL:
[NSURL fileURLWithPath:path] error:&err];
player.volume = 0.4f;
[player prepareToPlay];
[player setNumberOfLoops:0];
[player play];
}
El marco voz en off de Apple es privado, sólo puede utilizar en la accesibilidad.Al menos si quieres que tu solicitud sea aprobada. Pero si usted quiere usarlo mientras se decide sobre qué sistema utilizar, aquí está:
// Not App Store safe. Only available in real devices.
// See http://arstechnica.com/apple/2010/02/iphone-voiceservices-looking-under-the-hood/
#define RTLD_LAZY 0x1
#define RTLD_NOW 0x2
#define RTLD_LOCAL 0x4
#define RTLD_GLOBAL 0x8
NSObject *voiceSynthesizer;
void *voiceServices;
-(void) say:(NSString*)text {
if (!voiceSynthesizer)
{
NSString *vsLocation = @"/System/Library/PrivateFrameworks/VoiceServices.framework/VoiceServices";
voiceServices = dlopen(vsLocation.UTF8String, RTLD_LAZY);
voiceSynthesizer = [NSClassFromString(@"VSSpeechSynthesizer") new];
}
[voiceSynthesizer performSelector:@selector(startSpeakingString:) withObject:text];
}
cheque esto: https://bitbucket.org/sfoster/iphone-tts/ – Satish
comprobar mi respuesta http://stackoverflow.com/questions/12839671/text-to-speech-libraries-for-iphone/12839821 # 12839821 –