Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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.

EventTarget SpeechRecognition

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 SpeechRecognition zurück und legt sie fest. Wenn nicht angegeben, wird standardmäßig der HTML lang-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 die SpeechRecognitionResult.isFinal-Eigenschaft false.)

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 aktuellen SpeechRecognition verstandenen 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 SpeechRecognitionResult zurü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 SpeechRecognitionResult zurü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.

js
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

Browser-Kompatibilität

Siehe auch