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 objetSpeechRecognition
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'interfaceSpeechGrammar
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
, 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 objetsSpeechSynthesisVoice
, et les différentes parties de texte à vocaliser sont interprétés par les objetsSpeechSynthesisUtterance
. On peut les faire vocaliser en les passant à la méthodeSpeechSynthesis.speak()
.
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
reçu de l'outil de reconnaissance. SpeechRecognitionAlternative
-
Représente un mot unique qui a été reconnu par l'outil de reconnaissane vocale.
SpeechRecognitionError
-
Répresente les messages d'erreur de l'outil de reconnaissance vocale.
SpeechRecognitionEvent
-
L'objet événement pour les événements
result
etnomatch
, et contient toutes les données associées avec un résultat de reconnaissance vocale intermédiaire ou définitif. SpeechGrammar
-
Les mots ou schémas de mots que l'on demande à l'outil de reconnaissance vocale de reconnaître.
SpeechGrammarList
-
Répresente une liste des objets
SpeechGrammar
. SpeechRecognitionResult
-
Répresente une unique reconnaissance réussie, qui peut contenir plusieurs objets
SpeechRecognitionAlternative
. SpeechRecognitionResultList
-
Répresente une liste d'objets
SpeechRecognitionResult
, ou bien un seul si les résultats sont récupérés en modecontinuous
.
La synthèse vocale
SpeechSynthesis
-
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
-
Contient les informations concernant toutes les erreurs qui se produisent pendant le traitement des objets
SpeechSynthesisUtterance
dans l'outil de synthèse vocale. SpeechSynthesisEvent
-
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
-
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
-
Spécifiée comme une partie de l'interface
[NoInterfaceObject]
intituléeSpeechSynthesisGetter
, et implémentée par l'objetWindow
, la propriétéspeechSynthesis
fournit l'accès au controleurSpeechSynthesis
, 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
- Using the Web Speech API
- Article sur le site SitePoint
- Article HTML5Rocks
- Demo [aurelio.audero.it]