SpeechRecognition
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Das SpeechRecognition-Interface der Web Speech API ist das Steuerinterface für den Erkennungsdienst; es behandelt auch das SpeechRecognitionEvent, das vom Erkennungsdienst gesendet wird.
Hinweis: Bei einigen Browsern, wie Chrome, beinhaltet die Nutzung von Spracherkennung auf einer Webseite eine serverbasierte Erkennungs-Engine. Ihr Audio wird an einen Webdienst zur Verarbeitung der Erkennung gesendet, daher funktioniert es nicht offline.
Konstruktor
SpeechRecognition()-
Erstellt ein neues
SpeechRecognition-Objekt.
Instanz-Eigenschaften
SpeechRecognition erbt auch Eigenschaften von seinem übergeordneten Interface, EventTarget.
SpeechRecognition.lang-
Gibt die Sprache der aktuellen
SpeechRecognitionzurück und legt sie fest. Wenn nicht angegeben, wird standardmäßig der HTMLlang-Attributwert verwendet, oder die Spracheinstellung des Benutzeragenten, falls diese ebenfalls nicht festgelegt ist. SpeechRecognition.continuous-
Steuert, ob kontinuierliche Ergebnisse für jede Erkennung zurückgegeben werden oder nur ein einzelnes Ergebnis. Standardmäßig wird nur ein einzelnes Ergebnis zurückgegeben (
false.) SpeechRecognition.interimResults-
Steuert, ob Zwischenergebnisse zurückgegeben werden sollen (
true) oder nicht (false). Zwischenergebnisse sind Ergebnisse, die noch nicht endgültig sind (z.B. ist dieSpeechRecognitionResult.isFinal-Eigenschaftfalse.) SpeechRecognition.maxAlternatives-
Legt die maximale Anzahl von
SpeechRecognitionAlternatives fest, die pro Ergebnis bereitgestellt werden. Der Standardwert ist 1. SpeechRecognition.phrases-
Legt ein Array von
SpeechRecognitionPhrase-Objekten fest, die für das kontextuelle Biasing verwendet werden sollen. SpeechRecognition.processLocally-
Gibt an, ob die Spracherkennung lokal auf dem Gerät des Benutzers durchgeführt werden muss.
SpeechRecognition.unspokenPunctuation-
Gibt an, ob die Spracherkennungs-Engine Interpunktionszeichen basierend auf den natürlichen Sprachmustern des Benutzers schlussfolgernd einfügen soll.
Veraltete Eigenschaften
Das Konzept der Grammatik wurde aus der Web Speech API entfernt. Verwandte Funktionen verbleiben in der Spezifikation und werden von unterstützenden Browsern für die Rückwärtskompatibilität weiterhin erkannt, haben jedoch keinen Einfluss auf Spracherkennungsdienste.
SpeechRecognition.grammars-
Gibt eine Sammlung der
SpeechGrammar-Objekte zurück und legt diese fest, die die von der aktuellenSpeechRecognitionverstandenen Grammatiken repräsentieren.
Statische Methoden
SpeechRecognition.available()-
Prüft, ob die angegebenen Sprachen für die Spracherkennung verfügbar sind.
SpeechRecognition.install()-
Installiert die erforderlichen Sprachpakete für die geräteinterne Spracherkennung in den angegebenen Sprachen.
Instanz-Methoden
SpeechRecognition erbt auch Methoden von seinem übergeordneten Interface, EventTarget.
SpeechRecognition.abort()-
Stoppt den Spracherkennungsdienst beim Zuhören von eingehenden Audios und versucht nicht, ein
SpeechRecognitionResultzurückzugeben. SpeechRecognition.start()-
Startet den Spracherkennungsdienst, um auf eingehende Audiosignale (von einem Mikrofon oder einer Audiospur) zu lauschen und gibt die Ergebnisse dieser Erkennung zurück.
SpeechRecognition.stop()-
Stoppt den Spracherkennungsdienst beim Zuhören von eingehenden Audiosignalen und versucht, basierend auf den bisher erfassten Ergebnissen ein
SpeechRecognitionResultzurückzugeben.
Ereignisse
Hören Sie auf diese Ereignisse mit addEventListener() oder durch Zuweisung eines Ereignis-Listeners zur oneventname-Eigenschaft dieses Interfaces.
audiostart-
Wird ausgelöst, wenn der Benutzeragent begonnen hat, Audio aufzunehmen.
audioend-
Wird ausgelöst, wenn der Benutzeragent die Audioaufnahme beendet hat.
end-
Wird ausgelöst, wenn der Spracherkennungsdienst die Verbindung getrennt hat.
error-
Wird ausgelöst, wenn ein Fehler in der Spracherkennung auftritt.
nomatch-
Wird ausgelöst, wenn der Spracherkennungsdienst ein endgültiges Ergebnis ohne signifikante Erkennung zurückgibt. Dies könnte eine gewisse Erkennung beinhalten, die den
confidence-Schwellenwert nicht erfüllt oder übertrifft. result-
Wird ausgelöst, wenn der Spracherkennungsdienst ein Ergebnis zurückgibt — ein Wort oder ein Satz wurde positiv erkannt und dies wurde an die App zurückgemeldet.
soundstart-
Wird ausgelöst, wenn ein beliebiges Geräusch — erkennbar als Sprache oder nicht — erkannt wurde.
soundend-
Wird ausgelöst, wenn ein beliebiges Geräusch — erkennbar als Sprache oder nicht — nicht mehr erkannt wird.
speechstart-
Wird ausgelöst, wenn ein Geräusch, das vom Spracherkennungsdienst als Sprache erkannt wird, erkannt wurde.
speechend-
Wird ausgelöst, wenn Sprache, die vom Spracherkennungsdienst erkannt wird, nicht mehr erkannt wird.
start-
Wird ausgelöst, wenn der Spracherkennungsdienst beginnt, auf Audio zu lauschen, um es zu erkennen.
Beispiele
In unserem Speech color changer-Beispiel erstellen wir eine neue SpeechRecognition-Objektinstanz, indem wir den SpeechRecognition()-Konstruktor verwenden.
Nachdem einige andere Werte definiert wurden, stellen wir dann sicher, dass der Erkennungsdienst startet, wenn eine Schaltfläche geklickt wird (siehe SpeechRecognition.start()). Wenn ein Ergebnis erfolgreich erkannt wurde, wird das result-Ereignis ausgelöst, wir extrahieren die gesprochene Farbe aus dem Ereignisobjekt und setzen dann die Hintergrundfarbe des <html>-Elements auf diese Farbe.
const recognition = new SpeechRecognition();
recognition.continuous = false;
recognition.lang = "en-US";
recognition.interimResults = false;
recognition.maxAlternatives = 1;
const diagnostic = document.querySelector(".output");
const bg = document.querySelector("html");
const startBtn = document.querySelector("button");
startBtn.onclick = () => {
recognition.start();
console.log("Ready to receive a color command.");
};
recognition.onresult = (event) => {
const color = event.results[0][0].transcript;
diagnostic.textContent = `Result received: ${color}`;
bg.style.backgroundColor = color;
};
Spezifikationen
| Spezifikation |
|---|
| Web Speech API> # speechreco-section> |