Web Speech API
Die Web Speech API ermöglicht die Integration von Sprachdaten in Webanwendungen. Die Web Speech API besteht aus zwei Teilen: SpeechSynthesis (Text-zu-Sprache) und SpeechRecognition (Asynchrone Spracherkennung).
Konzepte und Nutzung der Web Speech API
Die Web Speech API ermöglicht es Webanwendungen, Sprachdaten zu verarbeiten. Sie hat zwei Komponenten:
- Die Spracherkennung wird über das
SpeechRecognition-Interface aufgerufen, das die Fähigkeit bietet, Sprachkontext aus einer Audioquelle zu erkennen und es Ihrer Anwendung ermöglicht, entsprechend zu reagieren. Im Allgemeinen verwenden Sie den Konstruktor des Interfaces, um ein neuesSpeechRecognition-Objekt zu erstellen. Dieses Objekt bietet mehrere Ereignis-Handler, um zu erkennen, wann Sprache vom Mikrofon des Geräts (oder von einem Audiotrack) eingeht. Sie können angeben, ob Sie möchten, dass die Spracherkennung einen vom Benutzer bereitgestellten Dienst nutzt (Standard) oder lokal im Browser durchgeführt wird. - Die Sprachsynthese wird über das
SpeechSynthesis-Interface aufgerufen, eine Text-zu-Sprache-Komponente, die es Programmen ermöglicht, ihre Textinhalte (normalerweise über den Standardsprache-Synthesizer des Geräts) vorzulesen. Verschiedene Stimmtypen werden durchSpeechSynthesisVoice-Objekte repräsentiert, und verschiedene Textteile, die gesprochen werden sollen, werden durchSpeechSynthesisUtterance-Objekte dargestellt. Sie können diese durch Übergabe an dieSpeechSynthesis.speak()-Methode sprechen lassen.
Für weitere Details zur Nutzung dieser Funktionen, siehe Verwendung der Web Speech API.
Interfaces der Web Speech API
>Spracherkennung
SpeechRecognition-
Das Steuerungsinterface für den Erkennungsdienst; es verwaltet auch das
SpeechRecognitionEvent, das vom Erkennungsdienst gesendet wird. SpeechRecognitionAlternative-
Repräsentiert ein einzelnes Wort, das vom Spracherkennungsdienst erkannt wurde.
SpeechRecognitionErrorEvent-
Repräsentiert Fehlermeldungen des Erkennungsdienstes.
SpeechRecognitionEvent-
Das Ereignisobjekt für die
resultundnomatch-Ereignisse und enthält alle Daten, die mit einem vorläufigen oder endgültigen Spracherkennungsergebnis verbunden sind. SpeechRecognitionPhrase-
Repräsentiert eine Phrase, die in die Spracherkennungs-Engine eingegeben werden kann, um kontextbezogene Bevorzugung zu verwenden.
SpeechRecognitionResult-
Repräsentiert ein einzelnes Erkennungsergebnis, das mehrere
SpeechRecognitionAlternative-Objekte enthalten kann. SpeechRecognitionResultList-
Repräsentiert eine Liste von
SpeechRecognitionResult-Objekten oder ein einzelnes, wenn die Ergebnisse imcontinuous-Modus erfasst werden.
Sprachsynthese
SpeechSynthesis-
Das Steuerungsinterface für den Sprachdienst; dies kann verwendet werden, um Informationen über die auf dem Gerät verfügbaren Synthesestimmen abzurufen, Sprache zu starten und zu pausieren sowie andere Befehle auszuführen.
SpeechSynthesisErrorEvent-
Enthält Informationen über Fehler, die bei der Verarbeitung von
SpeechSynthesisUtterance-Objekten im Sprachdienst auftreten. SpeechSynthesisEvent-
Enthält Informationen über den aktuellen Status von
SpeechSynthesisUtterance-Objekten, die im Sprachdienst verarbeitet wurden. SpeechSynthesisUtterance-
Repräsentiert eine Sprachanforderung. Es enthält den Inhalt, den der Sprachdienst lesen soll, und Informationen darüber, wie es gelesen werden soll (z. B. Sprache, Tonhöhe und Lautstärke).
SpeechSynthesisVoice-
Repräsentiert eine Stimme, die das System unterstützt. Jede
SpeechSynthesisVoicehat ihren eigenen relativen Sprachdienst einschließlich Informationen über Sprache, Name und URI. Window.speechSynthesis-
Wird als Teil eines
[NoInterfaceObject]-Interfaces namensSpeechSynthesisGetterspezifiziert und vomWindow-Objekt implementiert. DiespeechSynthesis-Eigenschaft bietet Zugriff auf denSpeechSynthesis-Controller und somit den Einstiegspunkt für die Sprachsynthesefunktionalität.
Veraltete Interfaces
Das Konzept der Grammatik wurde aus der Web Speech API entfernt. Verwandte Funktionen bleiben in der Spezifikation und werden weiterhin von unterstützenden Browsern für die Rückwärtskompatibilität erkannt, haben aber keinen Einfluss auf die Spracherkennungsdienste.
SpeechGrammar-
Repräsentiert Wörter oder Wortmuster, die der Erkennungsdienst erkennen soll.
SpeechGrammarList-
Repräsentiert eine Liste von
SpeechGrammar-Objekten.
Fehler
Für Informationen zu Fehlern, die von der Speech API gemeldet werden (z. B. "language-not-supported" und "language-unavailable"), sehen Sie sich die folgende Dokumentation an:
Sicherheitserwägungen
Der Zugriff auf die Spracherkennung auf dem Gerät-Funktionalität der Web Speech API wird durch die on-device-speech-recognition Permissions-Policy-Direktive kontrolliert.
Insbesondere wenn eine definierte Richtlinie die Nutzung blockiert, werden alle Versuche, die SpeechRecognition.available() oder SpeechRecognition.install()-Methoden der API aufzurufen, fehlschlagen.
Beispiele
Unsere Web Speech API Beispiele veranschaulichen Spracherkennung und -synthese.
Sehen Sie sich auch den Web Speech API Playground an.
Spezifikationen
| Spezifikation |
|---|
| Web Speech API> # speechreco-section> |
| Web Speech API> # tts-section> |