API Web de Voz
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2018.
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