SpeechRecognitionEngine Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje prostředky pro přístup k modulu pro rozpoznávání řeči v procesu a jeho správě.
public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
- Dědičnost
-
SpeechRecognitionEngine
- Implementuje
Příklady
Následující příklad ukazuje část konzolové aplikace, která demonstruje základní rozpoznávání řeči. Vzhledem k tomu, že tento příklad používá Multiple režim RecognizeAsync metody, provádí rozpoznávání, dokud nezavřete okno konzoly nebo zastavíte ladění.
using System;
using System.Speech.Recognition;
namespace SpeechRecognitionApp
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (
SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
// Create and load a dictation grammar.
recognizer.LoadGrammar(new DictationGrammar());
// Add a handler for the speech recognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start asynchronous, continuous speech recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
while (true)
{
Console.ReadLine();
}
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Recognized text: " + e.Result.Text);
}
}
}
Poznámky
Můžete vytvořit instanci této třídy pro kterýkoli z nainstalovaných rozpoznávání řeči. Pokud chcete získat informace o tom, které nástroje pro rozpoznávání jsou nainstalovány, použijte statickou InstalledRecognizers metodu.
Tato třída slouží ke spouštění modulů pro rozpoznávání řeči v procesu a poskytuje kontrolu nad různými aspekty rozpoznávání řeči následujícím způsobem:
Pokud chcete vytvořit rozpoznávání řeči v procesu, použijte jeden z SpeechRecognitionEngine konstruktorů.
Ke správě gramatiky rozpoznávání řeči použijte metodu LoadGrammar, LoadGrammarAsync, UnloadGrammara UnloadAllGrammars metody a Grammars vlastnost.
Ke konfiguraci vstupu pro rozpoznávání použijte metodu SetInputToAudioStream, SetInputToDefaultAudioDevice, SetInputToNull, SetInputToWaveFile, nebo SetInputToWaveStream metodu.
K rozpoznávání řeči použijte metodu nebo RecognizeAsync metoduRecognize.
Chcete-li změnit způsob, jakým rozpoznávání zpracovává ticho nebo neočekávaný vstup, použijte příkaz BabbleTimeout, InitialSilenceTimeoutEndSilenceTimeout, a EndSilenceTimeoutAmbiguous vlastnosti.
Pokud chcete změnit počet alternativ, které funkce rozpoznávání vrátí, použijte MaxAlternates tuto vlastnost. Rozpoznávání vrátí výsledky rozpoznávání v objektu RecognitionResult .
Pokud chcete synchronizovat změny v rozpoznávání, použijte metodu RequestRecognizerUpdate . Rozpoznávání používá k provádění úloh více než jedno vlákno.
K emulaci vstupu do rozpoznávání použijte metody EmulateRecognize a EmulateRecognizeAsync metody.
Objekt SpeechRecognitionEngine je určen pouze pro použití procesu, který vytvořil instanci objektu. Naproti tomu SpeechRecognizer sdílí jeden rozpoznávatel s libovolnou aplikací, která ho chce použít.
Poznámka:
Před uvolněním posledního odkazu na rozpoznávání řeči vždy volejte Dispose . Jinak prostředky, které používá, nebudou uvolněny, dokud uvolňování paměti volá metodu Finalize objektu rozpoznávání.
Konstruktory
| Name | Description |
|---|---|
| SpeechRecognitionEngine() |
Inicializuje novou instanci SpeechRecognitionEngine třídy pomocí výchozího rozpoznávání řeči pro systém. |
| SpeechRecognitionEngine(CultureInfo) |
Inicializuje novou instanci SpeechRecognitionEngine třídy pomocí výchozího rozpoznávání řeči pro zadané národní prostředí. |
| SpeechRecognitionEngine(RecognizerInfo) |
Inicializuje novou instanci SpeechRecognitionEngine pomocí informací v objektu RecognizerInfo k určení rozpoznávání, který se má použít. |
| SpeechRecognitionEngine(String) |
Inicializuje novou instanci SpeechRecognitionEngine třídy s řetězcový parametr, který určuje název rozpoznávání, který se má použít. |
Vlastnosti
| Name | Description |
|---|---|
| AudioFormat |
Získá formát zvuku, který přijímá SpeechRecognitionEngine. |
| AudioLevel |
Získá úroveň zvuku, který přijímá SpeechRecognitionEngine. |
| AudioPosition |
Získá aktuální umístění ve zvukovém streamu vygenerované zařízením, které poskytuje vstup do SpeechRecognitionEngine. |
| AudioState |
Získá stav zvuku, který přijímá SpeechRecognitionEngine. |
| BabbleTimeout |
Získá nebo nastaví časový interval, během kterého SpeechRecognitionEngine přijímá vstup obsahující pouze šum na pozadí před dokončením rozpoznávání. |
| EndSilenceTimeout |
Získá nebo nastaví interval ticha, který SpeechRecognitionEngine přijme na konci jednoznačného vstupu před dokončením operace rozpoznávání. |
| EndSilenceTimeoutAmbiguous |
Získá nebo nastaví interval ticha, který SpeechRecognitionEngine přijme na konci nejednoznačného vstupu před dokončením operace rozpoznávání. |
| Grammars |
Získá kolekci Grammar objektů, které jsou načteny v této SpeechRecognitionEngine instanci. |
| InitialSilenceTimeout |
Získá nebo nastaví časový interval, během kterého SpeechRecognitionEngine přijímá vstup obsahující pouze ticho před dokončením rozpoznávání. |
| MaxAlternates |
Získá nebo nastaví maximální počet alternativních výsledků rozpoznávání, které SpeechRecognitionEngine vrací pro každou operaci rozpoznávání. |
| RecognizerAudioPosition |
Získá aktuální umístění SpeechRecognitionEngine ve zvukovém vstupu, který zpracovává. |
| RecognizerInfo |
Získá informace o aktuální instanci SpeechRecognitionEngine. |
Metody
| Name | Description |
|---|---|
| Dispose() |
SpeechRecognitionEngine Odstraní objekt. |
| Dispose(Boolean) |
SpeechRecognitionEngine Odstraní objekt a uvolní prostředky používané během relace. |
| EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Emuluje vstup určitých slov do rozpoznávání řeči pomocí textu místo zvuku pro synchronní rozpoznávání řeči a určuje, jak rozpoznávací nástroj zpracovává porovnání slov v kódu Unicode mezi slovy a gramatikou rozpoznávání řeči načtenou. |
| EmulateRecognize(String, CompareOptions) |
Emuluje vstup fráze do rozpoznávání řeči pomocí textu místo zvuku pro synchronní rozpoznávání řeči a určuje, jak rozpoznávací nástroj zpracovává porovnání výrazu Unicode mezi frází a gramatikou rozpoznávání načtené řeči. |
| EmulateRecognize(String) |
Emuluje vstup fráze do rozpoznávání řeči pomocí textu místo zvuku pro synchronní rozpoznávání řeči. |
| EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Emuluje vstup konkrétních slov do rozpoznávání řeči pomocí pole RecognizedWordUnit objektů místo zvuku pro asynchronní rozpoznávání řeči a určuje, jak rozpoznávací modul zpracovává porovnání znaků Unicode mezi slovy a gramatikou rozpoznávání řeči načtenou. |
| EmulateRecognizeAsync(String, CompareOptions) |
Emuluje vstup fráze do rozpoznávání řeči, používá text místo zvuku pro asynchronní rozpoznávání řeči a určuje, jak rozpoznávací modul zpracovává porovnání unicode mezi frází a načtenými gramatikami rozpoznávání řeči. |
| EmulateRecognizeAsync(String) |
Emuluje vstup fráze do rozpoznávání řeči pomocí textu místo zvuku pro asynchronní rozpoznávání řeči. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| InstalledRecognizers() |
Vrátí informace pro všechny nainstalované rozpoznávání řeči v aktuálním systému. |
| LoadGrammar(Grammar) |
Synchronně načte Grammar objekt. |
| LoadGrammarAsync(Grammar) |
Asynchronně načte gramatiku rozpoznávání řeči. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| QueryRecognizerSetting(String) |
Vrátí hodnoty nastavení pro rozpoznávání. |
| Recognize() |
Provede synchronní operaci rozpoznávání řeči. |
| Recognize(TimeSpan) |
Provede synchronní operaci rozpoznávání řeči se zadanou počáteční dobou časového limitu ticha. |
| RecognizeAsync() |
Provede jednu asynchronní operaci rozpoznávání řeči. |
| RecognizeAsync(RecognizeMode) |
Provádí jednu nebo více asynchronních operací rozpoznávání řeči. |
| RecognizeAsyncCancel() |
Ukončí asynchronní rozpoznávání bez čekání na dokončení aktuální operace rozpoznávání. |
| RecognizeAsyncStop() |
Po dokončení aktuální operace rozpoznávání zastaví asynchronní rozpoznávání. |
| RequestRecognizerUpdate() |
Požaduje, aby se rozpoznač pozastavil, aby aktualizoval svůj stav. |
| RequestRecognizerUpdate(Object, TimeSpan) |
Vyžaduje, aby se rozpoznávání pozastavil, aby aktualizoval svůj stav, a poskytuje posun a token uživatele pro přidruženou událost. |
| RequestRecognizerUpdate(Object) |
Požaduje, aby se rozpoznávání pozastavil, aby aktualizoval svůj stav a pro přidruženou událost poskytuje token uživatele. |
| SetInputToAudioStream(Stream, SpeechAudioFormatInfo) |
Nakonfiguruje objekt tak SpeechRecognitionEngine , aby přijímal vstup ze zvukového streamu. |
| SetInputToDefaultAudioDevice() |
Nakonfiguruje objekt tak SpeechRecognitionEngine , aby přijímal vstup z výchozího zvukového zařízení. |
| SetInputToNull() |
Zakáže vstup do rozpoznávání řeči. |
| SetInputToWaveFile(String) |
Nakonfiguruje SpeechRecognitionEngine objekt tak, aby přijímal vstup ze zvukového formátu waveformu (.wav). |
| SetInputToWaveStream(Stream) |
Nakonfiguruje SpeechRecognitionEngine objekt tak, aby přijímal vstup z datového proudu, který obsahuje data formátu zvuku waveformu (.wav). |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| UnloadAllGrammars() |
Uvolní všechny Grammar objekty z nástroje pro rozpoznávání. |
| UnloadGrammar(Grammar) |
Uvolní zadaný Grammar objekt z SpeechRecognitionEngine instance. |
| UpdateRecognizerSetting(String, Int32) |
Aktualizuje zadané nastavení pro SpeechRecognitionEngine zadanou celočíselnou hodnotu. |
| UpdateRecognizerSetting(String, String) |
Aktualizuje zadané nastavení modulu rozpoznávání řeči se zadanou hodnotou řetězce. |
Událost
| Name | Description |
|---|---|
| AudioLevelUpdated |
Vyvolá se, když SpeechRecognitionEngine hlásí úroveň jeho zvukového vstupu. |
| AudioSignalProblemOccurred |
Vyvolá se, SpeechRecognitionEngine když zjistí problém ve zvukovém signálu. |
| AudioStateChanged |
Vyvolá se při změně stavu zvuku přijatého uživatelem SpeechRecognitionEngine. |
| EmulateRecognizeCompleted |
Vyvolá se při SpeechRecognitionEngine dokončení asynchronní operace rozpoznávání emulovaného vstupu. |
| LoadGrammarCompleted |
Vyvolá se při SpeechRecognitionEngine dokončení asynchronního načítání objektu Grammar . |
| RecognizeCompleted |
Vyvolá se při SpeechRecognitionEngine dokončení asynchronní operace rozpoznávání. |
| RecognizerUpdateReached |
Vyvolá se, když se spuštění SpeechRecognitionEngine pozastaví a přijme změny. |
| SpeechDetected |
Vyvolá se, SpeechRecognitionEngine když zjistí vstup, který dokáže identifikovat jako řeč. |
| SpeechHypothesized |
Vyvolá se, když SpeechRecognitionEngine rozpoznal slovo nebo slova, která mohou být součástí více úplných frází v gramatikě. |
| SpeechRecognitionRejected |
Vyvolá se při příjmu SpeechRecognitionEngine vstupu, který neodpovídá žádnému z jeho načtených a povolených Grammar objektů. |
| SpeechRecognized |
Vyvolá se při příjmu SpeechRecognitionEngine vstupu, který odpovídá libovolnému z jeho načtených a povolených Grammar objektů. |