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 (en-US), 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 objeto SpeechRecognition (en-US), que tiene varios controladores de eventos disponibles para detectar cuándo se ingresa voz a través del micrófono del dispositivo. La interfaz SpeechGrammar (en-US) 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 (en-US), 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 objetos SpeechSynthesisVoice (en-US) y las diferentes partes del texto que desea que se hablen se representan mediante objetos SpeechSynthesisUtterance (en-US). Puedes hacer que se hablen pasándolos al método SpeechSynthesis.speak() (en-US).

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 (en-US)

La interfaz del controlador para el servicio de reconocimiento; esto también maneja el SpeechRecognitionEvent (en-US) enviado desde el servicio de reconocimiento.

SpeechRecognitionAlternative (en-US)

Representa una sola palabra que ha sido reconocida por el servicio de reconocimiento de voz.

SpeechRecognitionErrorEvent (en-US)

Representa mensajes de error del servicio de reconocimiento.

SpeechRecognitionEvent (en-US)

El objeto de evento para los eventos result (en-US) y nomatch (en-US) y contiene todos los datos asociados con un evento intermedio o resultado final del reconocimiento de voz.

SpeechGrammar (en-US)

Las palabras o patrones de palabras que queremos que reconozca el servicio de reconocimiento.

SpeechGrammarList (en-US)

Representa una lista de objetos SpeechGrammar (en-US).

SpeechRecognitionResult (en-US)

Representa una única coincidencia de reconocimiento, que puede contener varios objetos SpeechRecognitionAlternative (en-US).

SpeechRecognitionResultList (en-US)

Representa una lista de objetos SpeechRecognitionResult (en-US), o uno solo si los resultados se capturan en el modo continuous (en-US).

Síntesis de voz

SpeechSynthesis (en-US)

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 (en-US)

Contiene información sobre los errores que se producen al procesar objetos SpeechSynthesisUtterance (en-US) en el servicio de voz.

SpeechSynthesisEvent (en-US)

Contiene información sobre el estado actual de los objetos SpeechSynthesisUtterance (en-US) que se han procesado en el servicio de voz.

SpeechSynthesisUtterance (en-US)

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 (en-US)

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 (en-US)

Especificada como parte de una interfaz [NoInterfaceObject] llamada SpeechSynthesisGetter e implementada por el objeto Window, la propiedad speechSynthesis brinda acceso al controlador SpeechSynthesis (en-US) 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

Véase también