L'API Web Speech

Expérimental: Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

L'API Web Speech permet d'intégrer des données liées à la voix dans des applications web. L'API Web Speech se compose de deux parties : SpeechSynthesis (synthèse vocale) et SpeechRecognition (reconnaissance vocale asynchrone).

Concepts et usages de l'API Web Speech

L'API Web Speech rend les applications web capables de manipuler des données liées à la voix. Cette API se compose de deux parties :

  • La reconnaissance vocale ( Speech recognition ) est accessible via l'interface SpeechRecognition qui fournit la capacité de reconnaitre la voix dans une source audio (normalement grâce à l'outil par défaut de reconnaissance vocale de l'appareil) et de réagir de façon pertinente. En général, on utilisera le constructeur de l'interface pour créer un nouvel objet SpeechRecognition qui a un nombre de gestionnaires d'événements disponibles pour détecter lorsque de la parole arrive dans le micro de l'appareil. L'interface SpeechGrammar (en-US) représente un conteneur pour une série de règles de grammaire que votre application devrait reconnaître. La grammaire est définie en utilisant JSpeech Grammar Format (JSGF).
  • La synthèse vocale ( Speech synthesis ) est disponible via l'interface SpeechSynthesis (en-US), un composant qui permet aux programmes de vocaliser leur contenu textuel (normalement grâce au synthétiseur vocal par défaut de l'appareil). Differents types de voix sont disponibles dans les objets SpeechSynthesisVoice (en-US), et les différentes parties de texte à vocaliser sont interprétés par les objets SpeechSynthesisUtterance. On peut les faire vocaliser en les passant à la méthode SpeechSynthesis.speak() (en-US).

Pour plus de détails concernant ces fonctionnalités, voir Using the Web Speech API.

Les interfaces de l'API Web Speech

Le reconnaissance vocale

SpeechRecognition

L'interface de contrôle de l'outil de reconnaissance; elle traite aussi le SpeechRecognitionEvent (en-US) reçu de l'outil de reconnaissance.

SpeechRecognitionAlternative (en-US)

Représente un mot unique qui a été reconnu par l'outil de reconnaissane vocale.

SpeechRecognitionError (en-US)

Répresente les messages d'erreur de l'outil de reconnaissance vocale.

SpeechRecognitionEvent (en-US)

L'objet événement pour les événements result (en-US) et nomatch (en-US), et contient toutes les données associées avec un résultat de reconnaissance vocale intermédiaire ou définitif.

SpeechGrammar (en-US)

Les mots ou schémas de mots que l'on demande à l'outil de reconnaissance vocale de reconnaître.

SpeechGrammarList (en-US)

Répresente une liste des objets SpeechGrammar (en-US).

SpeechRecognitionResult (en-US)

Répresente une unique reconnaissance réussie, qui peut contenir plusieurs objets SpeechRecognitionAlternative (en-US).

SpeechRecognitionResultList (en-US)

Répresente une liste d'objets SpeechRecognitionResult (en-US), ou bien un seul si les résultats sont récupérés en mode continuous (en-US).

La synthèse vocale

SpeechSynthesis (en-US)

L'interface de contrôle de l'outil de vocalisation; elle peut être utiliser pour rechercher des informations concernant les voix de synthèse disponible dans l'appareil, le démarrage et l'interruption de la vocalisation, et les commandes complémentaires.

SpeechSynthesisErrorEvent (en-US)

Contient les informations concernant toutes les erreurs qui se produisent pendant le traitement des objets SpeechSynthesisUtterance dans l'outil de synthèse vocale.

SpeechSynthesisEvent (en-US)

Contient les informations concernant l'état actuel des objets SpeechSynthesisUtterance qui ont été traités par l'outil de synthèse vocale.

SpeechSynthesisUtterance

Répresente une requête de synthèse vocale. Il contient le contenu que l'outil de synthèse vocale devrait vocaliser et les informations sur comment le vocaliser (e.g. langue, ton et volume).

SpeechSynthesisVoice (en-US)

Représente une voix qui est supportée par le système. Chaque SpeechSynthesisVoice a son propre outil de synthèse vocale incluant les informations concernant la langue, le nom et l'URI.

Window.speechSynthesis (en-US)

Spécifiée comme une partie de l'interface [NoInterfaceObject] intitulée SpeechSynthesisGetter, et implémentée par l'objet Window, la propriété speechSynthesis fournit l'accès au controleur SpeechSynthesis (en-US), et de ce fait un point d'entrée à la fonctionnalité de synthèse vocale.

Exemples

Le Web Speech API repo sur GitHub contient des démos qui illustrent la reconnaissance vocale et la synthèse vocale.

Spécifications

Specification
Web Speech API
# speechreco-section
Web Speech API
# tts-section

Compatibilité des navigateurs

api.SpeechRecognition

BCD tables only load in the browser

api.SpeechSynthesis

BCD tables only load in the browser

Voir aussi