API Web de Voz
La API Web de Voz (Web Speech API) te permite incorporar datos de voz en aplicaciones web.
La API Web de Voz tiene dos partes: SpeechSynthesis
(Texto a voz) y SpeechRecognition
(Reconocimiento de voz asíncrono).
Conceptos y uso de la API Web de Voz
La API Web de Voz permite que las aplicaciones web manejen datos de voz. Hay dos componentes en esta API:
-
Se accede al reconocimiento de voz a través de la interfaz
SpeechRecognition
, que brinda la capacidad de reconocer el contexto de voz desde una entrada de audio (normalmente a través del servicio de reconocimiento de voz predeterminado del dispositivo) y responder adecuadamente. Por lo general, usará el constructor de la interfaz para crear un nuevo objetoSpeechRecognition
, que tiene varios controladores de eventos disponibles para detectar cuándo se ingresa voz a través del micrófono del dispositivo. La interfazSpeechGrammar
representa un contenedor para un conjunto particular de gramática que tu aplicación debería reconocer. La gramática se define mediante JSpeech Grammar Format (JSGF). -
Se accede a la síntesis de voz a través de la interfaz
SpeechSynthesis
, un componente de texto a voz que permite que los programas lean su contenido de texto (normalmente a través del sintetizador de voz predeterminado del dispositivo). Los diferentes tipos de voz se representan mediante Los objetosSpeechSynthesisVoice
y las diferentes partes del texto que desea que se hablen se representan mediante objetosSpeechSynthesisUtterance
. Puedes hacer que se hablen pasándolos al métodoSpeechSynthesis.speak()
.
Para obtener más detalles sobre el uso de estas funciones, consulte Uso de la API Web de Voz.
Interfaces de la API Web de Voz
Reconocimiento de voz
SpeechRecognition
-
La interfaz del controlador para el servicio de reconocimiento; esto también maneja el
SpeechRecognitionEvent
enviado desde el servicio de reconocimiento. SpeechRecognitionAlternative
-
Representa una sola palabra que ha sido reconocida por el servicio de reconocimiento de voz.
SpeechRecognitionErrorEvent
-
Representa mensajes de error del servicio de reconocimiento.
SpeechRecognitionEvent
-
El objeto de evento para los eventos
result
ynomatch
y contiene todos los datos asociados con un evento intermedio o resultado final del reconocimiento de voz. SpeechGrammar
-
Las palabras o patrones de palabras que queremos que reconozca el servicio de reconocimiento.
SpeechGrammarList
-
Representa una lista de objetos
SpeechGrammar
. SpeechRecognitionResult
-
Representa una única coincidencia de reconocimiento, que puede contener varios objetos
SpeechRecognitionAlternative
. SpeechRecognitionResultList
-
Representa una lista de objetos
SpeechRecognitionResult
, o uno solo si los resultados se capturan en el modocontinuous
.
Síntesis de voz
SpeechSynthesis
-
La interfaz del controlador para el servicio de voz; esto se puede usar para recuperar información sobre las voces de síntesis disponibles en el dispositivo, iniciar y pausar el habla y otros comandos además.
SpeechSynthesisErrorEvent
-
Contiene información sobre los errores que se producen al procesar objetos
SpeechSynthesisUtterance
en el servicio de voz. SpeechSynthesisEvent
-
Contiene información sobre el estado actual de los objetos
SpeechSynthesisUtterance
que se han procesado en el servicio de voz. SpeechSynthesisUtterance
-
Representa una solicitud de voz. Contiene el contenido que debe leer el servicio de voz e información sobre cómo leerlo (por ejemplo, idioma, tono y volumen).
SpeechSynthesisVoice
-
Representa una voz que admite el sistema. Cada
SpeechSynthesisVoice
tiene su propio servicio de voz relativo que incluye información sobre el idioma, el nombre y la URI. Window.speechSynthesis
-
Especificada como parte de una interfaz
[NoInterfaceObject]
llamadaSpeechSynthesisGetter
e implementada por el objetoWindow
, la propiedadspeechSynthesis
brinda acceso al controladorSpeechSynthesis
y, por lo tanto, al punto de entrada a la funcionalidad de síntesis de voz.
Errores
Para obtener información sobre los errores arrojados por la API Web de Voz (por ejemplo, "language-not-supported"
y "language-unavailable"
), consulte la siguiente documentación:
Ejemplos
Los ejemplos de la API Web de Voz en GitHub contienen demostraciones para ilustrar el reconocimiento y la síntesis de voz.
Especificaciones
Specification |
---|
Web Speech API # speechreco-section |
Web Speech API # tts-section |
Compatibilidad con navegadores
api.SpeechRecognition
BCD tables only load in the browser
api.SpeechSynthesis
BCD tables only load in the browser