voz textos texto solo que pantalla online nada mac leer lea hacer habla escuchar deja como ios accessibility voice audio

textos - ¿Cómo usar programáticamente los sintetizadores de voz iOS?(texto a voz)



texto a voz iphone (6)

A partir de iOS 7, Apple proporciona this API.

Vea this respuesta.

C objetivo

#import <AVFoundation/AVFoundation.h> … AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:@"Hello World!"]; AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init]; [synth speakUtterance:utterance];

Rápido

import AVFoundation … let utterance = AVSpeechUtterance(string: "Hello World!") let synth = AVSpeechSynthesizer() synth.speakUtterance(utterance)

Los dispositivos iOS tienen sintetizadores de voz incorporados para la función VoiceOver de Accessibility. ¿Hay alguna forma de que pueda usar estos sintetizadores programáticamente para generar sonidos basados ​​en texto?

Mi problema es: estoy trabajando en una aplicación simple para que los niños aprendan colores y en lugar de grabar los nombres de los colores en cada idioma que quiero admitir y almacenarlos como archivos de audio, prefiero generar los sonidos en tiempo de ejecución con alguna función de texto a voz.

Gracias

[EDITAR: esta pregunta fue hecha antes de iOS7 por lo que realmente deberías considerar la respuesta elegida e ignorar las anteriores, a menos que seas un arqueólogo de software]


Este código funcionó para mí con Swift e iOS 8 tanto en el simulador como en el iPhone 6. Necesitaba agregar la biblioteca estándar de AVFoundation:

import AVFoundation // ... func onSayMeSomething() { let utterance = AVSpeechUtterance(string: "Wow! I can speak!") utterance.pitchMultiplier = 1.3 utterance.rate = AVSpeechUtteranceMinimumSpeechRate * 1.5 let synth = AVSpeechSynthesizer() synth.speakUtterance(utterance) }


Lamentablemente, iOS no expone una API pública para generar voz de manera programática.

Hay una API privada que puede usar, si no está enviando a la App Store.

De lo contrario, consulte las respuestas a esta pregunta para ver una serie de bibliotecas de terceros que puede usar.



puede encontrar esta útil aplicación para hacer que su iPhone sea accesible

Como se indica en "API y herramientas de accesibilidad de iPhone", se puede acceder automáticamente a los controles y vistas estándar de UIKit. Si usa solo controles UIKit estándar, probablemente no tenga que hacer mucho trabajo adicional para asegurarse de que su aplicación sea accesible. En este caso, el siguiente paso es garantizar que la información de atributo predeterminada suministrada por estos controles tenga sentido en su aplicación. Para saber cómo hacerlo, consulte "Proporcionar información de atributos precisa y útil".


#import <AVFoundation/AVFoundation.h> AVSpeechSynthesizer *av = [[AVSpeechSynthesizer alloc] init]; AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc]initWithString:@"Text to say"]; [av speakUtterance:utterance];