SpeechRecognitionEngine.Recognize Metoda
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í.
Spustí synchronní operaci rozpoznávání řeči.
Přetížení
| Name | Description |
|---|---|
| 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. |
Poznámky
Tyto metody provádějí jednu synchronní operaci rozpoznávání. Rozpoznávání provede tuto operaci s načtenými a povolenými gramatikami rozpoznávání řeči.
Během volání této metody může rozpoznávání vyvolat následující události:
SpeechDetected. Vyvolá se, když rozpoznává vstup, který dokáže identifikovat jako řeč.
SpeechHypothesized. Vyvolá se při vytvoření nejednoznačné shody s jednou z aktivních gramatik.
SpeechRecognitionRejected nebo SpeechRecognized. Vyvolá se, když rozpoznávání dokončí operaci rozpoznávání.
Funkce recognizer nevyvolá RecognizeCompleted událost při použití jedné z Recognize metod.
Metody Recognize vrací RecognitionResult objekt, nebo null pokud operace není úspěšná nebo není povolen rozpoznávání.
Synchronní operace rozpoznávání může selhat z následujících důvodů:
Řeč není zjištěna před vypršením časových limitů intervalů pro vlastnosti BabbleTimeout nebo InitialSilenceTimeout parametr
initialSilenceTimeoutmetody Recognize .Modul rozpoznávání rozpozná řeč, ale nenajde žádné shody v žádném z načtených a povolených Grammar objektů.
Chcete-li upravit, jak rozpoznávací nástroj zpracovává časování řeči nebo ticha s ohledem na rozpoznávání, použijte BabbleTimeout, InitialSilenceTimeouta EndSilenceTimeoutAmbiguousEndSilenceTimeoutvlastnosti.
Před rozpoznáváním SpeechRecognitionEngine musí být načten alespoň jeden Grammar objekt. Pokud chcete načíst gramatiku rozpoznávání řeči, použijte metodu nebo LoadGrammarAsync gramatikuLoadGrammar.
Chcete-li provést asynchronní rozpoznávání, použijte jednu z RecognizeAsync metod.
Recognize()
Provede synchronní operaci rozpoznávání řeči.
public:
System::Speech::Recognition::RecognitionResult ^ Recognize();
public System.Speech.Recognition.RecognitionResult Recognize();
member this.Recognize : unit -> System.Speech.Recognition.RecognitionResult
Public Function Recognize () As RecognitionResult
Návraty
Výsledek rozpoznávání pro vstup nebo null pokud operace není úspěšná nebo není povolena funkce rozpoznávání.
Příklady
Následující příklad ukazuje část konzolové aplikace, která demonstruje základní rozpoznávání řeči. Příklad vytvoří DictationGrammar, načte ho do rozpoznávání řeči v procesu a provede jednu operaci rozpoznávání.
using System;
using System.Speech.Recognition;
namespace SynchronousRecognition
{
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());
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Modify the initial silence time-out value.
recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5);
// Start synchronous speech recognition.
RecognitionResult result = recognizer.Recognize();
if (result != null)
{
Console.WriteLine("Recognized text = {0}", result.Text);
}
else
{
Console.WriteLine("No recognition result available.");
}
}
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
}
}
Poznámky
Tato metoda provádí jednu operaci rozpoznávání. Rozpoznávání provede tuto operaci s načtenými a povolenými gramatikami rozpoznávání řeči.
Během volání této metody může rozpoznávání vyvolat následující události:
SpeechDetected. Vyvolá se, když rozpoznává vstup, který dokáže identifikovat jako řeč.
SpeechHypothesized. Vyvolá se při vytvoření nejednoznačné shody s jednou z aktivních gramatik.
SpeechRecognitionRejected nebo SpeechRecognized. Vyvolá se, když rozpoznávání dokončí operaci rozpoznávání.
Funkce recognizer při použití této metody nevyvolá RecognizeCompleted událost.
Metoda Recognize() vrátí RecognitionResult objekt, nebo null pokud operace není úspěšná.
Synchronní operace rozpoznávání může selhat z následujících důvodů:
Před vypršením intervalů časového limitu BabbleTimeout nebo InitialSilenceTimeout vlastností se rozpoznávání řeči nezjistí.
Modul rozpoznávání rozpozná řeč, ale nenajde žádné shody v žádném z načtených a povolených Grammar objektů.
Chcete-li provést asynchronní rozpoznávání, použijte jednu z RecognizeAsync metod.
Viz také
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)
Platí pro
Recognize(TimeSpan)
Provede synchronní operaci rozpoznávání řeči se zadanou počáteční dobou časového limitu ticha.
public:
System::Speech::Recognition::RecognitionResult ^ Recognize(TimeSpan initialSilenceTimeout);
public System.Speech.Recognition.RecognitionResult Recognize(TimeSpan initialSilenceTimeout);
member this.Recognize : TimeSpan -> System.Speech.Recognition.RecognitionResult
Public Function Recognize (initialSilenceTimeout As TimeSpan) As RecognitionResult
Parametry
- initialSilenceTimeout
- TimeSpan
Interval doby, po který rozpoznávání řeči přijímá vstup obsahující pouze ticho před dokončením rozpoznávání.
Návraty
Výsledek rozpoznávání pro vstup nebo null pokud operace není úspěšná nebo není povolena funkce rozpoznávání.
Příklady
Následující příklad ukazuje část konzolové aplikace, která demonstruje základní rozpoznávání řeči. Příklad vytvoří DictationGrammar, načte ho do rozpoznávání řeči v procesu a provede jednu operaci rozpoznávání.
using System;
using System.Speech.Recognition;
namespace SynchronousRecognition
{
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());
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start synchronous speech recognition.
RecognitionResult result = recognizer.Recognize(TimeSpan.FromSeconds(5));
if (result != null)
{
Console.WriteLine("Recognized text = {0}", result.Text);
}
else
{
Console.WriteLine("No recognition result available.");
}
}
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
}
}
Poznámky
Pokud modul pro rozpoznávání řeči rozpozná řeč v časovém intervalu určeném argumentem initialSilenceTimeout , Recognize(TimeSpan) provede jednu operaci rozpoznávání a ukončí se. Parametr initialSilenceTimeout nahrazuje vlastnost rozpoznávání InitialSilenceTimeout .
Během volání této metody může rozpoznávání vyvolat následující události:
SpeechDetected. Vyvolá se, když rozpoznává vstup, který dokáže identifikovat jako řeč.
SpeechHypothesized. Vyvolá se při vytvoření nejednoznačné shody s jednou z aktivních gramatik.
SpeechRecognitionRejected nebo SpeechRecognized. Vyvolá se, když rozpoznávání dokončí operaci rozpoznávání.
Funkce recognizer při použití této metody nevyvolá RecognizeCompleted událost.
Metoda Recognize() vrátí RecognitionResult objekt, nebo null pokud operace není úspěšná.
Synchronní operace rozpoznávání může selhat z následujících důvodů:
Řeč se nezjistí před vypršením časových limitů intervalů BabbleTimeout pro parametr nebo pro tento
initialSilenceTimeoutparametr.Modul rozpoznávání rozpozná řeč, ale nenajde žádné shody v žádném z načtených a povolených Grammar objektů.
Chcete-li provést asynchronní rozpoznávání, použijte jednu z RecognizeAsync metod.
Viz také
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)