2013-07-04 8 views
18

Ho trovato molti librerie come flite che possono essere utilizzati, come in data here, ma voglio sapere se c'è qualche built-in class fornito da iOS SDK simile a NSSpeechRecognizer fornito in OS X.iOS offre un supporto di sintesi vocale o qualsiasi classe come NSSpeechRecognizer?

+1

questa è una domanda di confusione. la domanda indica il riconoscimento vocale nella descrizione, ma viene contrassegnata con "sintesi vocale" e indica anche "text to speech support" nel titolo. –

risposta

45

Ci non è supportato da text-to-speech in iOS 5 o 6 - è necessario utilizzare una libreria di terze parti. Se stai usando iOS 7 sei fortunato.

C'è una nuova classe in iOS 7 denominata AVSpeechSynthesizer (Apple's docs can be found here). È possibile utilizzare questo per eseguire la sintesi vocale. Ecco un semplice esempio:

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

[synth speakUtterance:utterance]; 

proprietà come la velocità e il tipo di voce sono impostati nella AVSpeechUtterance, piuttosto che il sintetizzatore.

+4

anche se ancora in beta iOS 7 è ora pubblico e include la classe 'AVSpeechSynthesizer' che può essere utilizzata per la sintesi vocale. [Riferimento] (https://developer.apple.com/library/prerelease/ios/documentation/AVFoundation/Reference/AVSpeechSynthesizer_Ref/Reference/Reference.html#//apple_ref/doc/uid/TP40013447). – eliocs

+0

iOS7 viene aggiornato oggi per consentire l'aggiornamento della risposta con il codice effettivo. – Topsakal

+0

Grazie, ho aggiornato con un codice di esempio – lxt

Problemi correlati