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 objeto SpeechRecognition, 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 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 objetos SpeechSynthesisVoice y las diferentes partes del texto que desea que se hablen se representan mediante objetos SpeechSynthesisUtterance. Puedes hacer que se hablen pasándolos al método SpeechSynthesis.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 y nomatch 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 modo continuous.

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] llamada SpeechSynthesisGetter e implementada por el objeto Window, la propiedad speechSynthesis brinda acceso al controlador SpeechSynthesis 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