SpeechRecognizer.EmulateRecognizeAsync Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Emuluje dane wejściowe do rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy.
Przeciążenia
EmulateRecognizeAsync(String) |
Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy. |
EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Emuluje dane wejściowe określonych słów do rozpoznawania mowy udostępnionej, używając tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy i określa sposób, w jaki funkcja rozpoznawania mowy obsługuje porównanie Unicode między wyrazami a załadowaną gramatyką rozpoznawania mowy. |
EmulateRecognizeAsync(String, CompareOptions) |
Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej, używając tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy i określa sposób obsługi porównania Unicode między frazą a załadowaną gramatyką rozpoznawania mowy. |
Uwagi
Te metody pomijają dane wejściowe audio systemu. Może to być przydatne podczas testowania lub debugowania aplikacji lub gramatyki.
Współużytkowany rozpoznawanie SpeechDetectedzgłasza zdarzenia , , SpeechHypothesizedSpeechRecognitionRejectedi SpeechRecognized tak, jakby operacja rozpoznawania nie została emulowana. Gdy rozpoznawanie zakończy operację rozpoznawania asynchronicznego, zgłasza EmulateRecognizeCompleted zdarzenie. Rozpoznawanie ignoruje nowe wiersze i dodatkowe białe znaki i traktuje znaki interpunkcyjne jako dane wejściowe literału.
Uwaga
Jeśli rozpoznawanie mowy systemu Windows jest w stanie uśpienia , współużytkowany rozpoznawanie nie przetwarza danych wejściowych i nie zgłasza SpeechDetected powiązanych zdarzeń, ale nadal zgłasza EmulateRecognizeCompleted zdarzenie.
Uwaga
RecognitionResult Obiekt wygenerowany przez współużytkowany rozpoznawanie w odpowiedzi na emulowane dane wejściowe ma wartość null
dla jego Audio właściwości.
Aby emulować rozpoznawanie synchroniczne, użyj EmulateRecognize metody .
EmulateRecognizeAsync(String)
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy.
public:
void EmulateRecognizeAsync(System::String ^ inputText);
public void EmulateRecognizeAsync (string inputText);
member this.EmulateRecognizeAsync : string -> unit
Public Sub EmulateRecognizeAsync (inputText As String)
Parametry
- inputText
- String
Dane wejściowe operacji rozpoznawania.
Przykłady
Poniższy przykład jest częścią aplikacji konsolowej, która ładuje gramatykę rozpoznawania mowy i demonstruje dane wejściowe emulowane asynchronicznie, skojarzone wyniki rozpoznawania i skojarzone zdarzenia zgłaszane przez rozpoznawanie mowy. Jeśli rozpoznawanie mowy systemu Windows nie jest uruchomione, uruchomienie tej aplikacji spowoduje również uruchomienie rozpoznawania mowy systemu Windows. Jeśli rozpoznawanie mowy systemu Windows jest w stanie uśpienia , EmulateRecognizeAsync zawsze zwraca wartość null.
using System;
using System.Speech.Recognition;
using System.Threading;
namespace SharedRecognizer
{
class Program
{
static bool completed;
static void Main(string[] args)
{
// Initialize an instance of the shared recognizer.
using (SpeechRecognizer recognizer = new SpeechRecognizer())
{
// Create and load a sample grammar.
Grammar testGrammar =
new Grammar(new GrammarBuilder("testing testing"));
testGrammar.Name = "Test Grammar";
recognizer.LoadGrammar(testGrammar);
// Attach event handlers for recognition events.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
SpeechRecognizedHandler);
recognizer.EmulateRecognizeCompleted +=
new EventHandler<EmulateRecognizeCompletedEventArgs>(
EmulateRecognizeCompletedHandler);
completed = false;
// This EmulateRecognizeAsync call generates a SpeechRecognized event.
recognizer.EmulateRecognizeAsync("testing testing");
// Wait for the asynchronous operation to complete.
while (!completed)
{
Thread.Sleep(333);
}
completed = false;
// This EmulateRecognizeAsync call does not match the grammar
// or generate a SpeechRecognized event.
recognizer.EmulateRecognizeAsync("testing one two three");
// Wait for the asynchronous operation to complete.
while (!completed)
{
Thread.Sleep(333);
}
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Handle the SpeechRecognized event.
static void SpeechRecognizedHandler(
object sender, SpeechRecognizedEventArgs e)
{
if (e.Result != null)
{
Console.WriteLine("Recognition result = {0}",
e.Result.Text ?? "<no text>");
}
else
{
Console.WriteLine("No recognition result");
}
}
// Handle the EmulateRecognizeCompleted event.
static void EmulateRecognizeCompletedHandler(
object sender, EmulateRecognizeCompletedEventArgs e)
{
if (e.Result == null)
{
Console.WriteLine("No result generated.");
}
completed = true;
}
}
}
Uwagi
Rozpoznawanie, które są dostarczane z vista i Windows 7 ignorują wielkość liter i szerokości znaków podczas stosowania reguł gramatycznych do frazy wejściowej. Aby uzyskać więcej informacji na temat tego typu porównania, zobacz CompareOptions wartości OrdinalIgnoreCase wyliczenia i IgnoreWidth. Rozpoznawanie ignoruje również nowe wiersze i dodatkowe białe znaki i traktują znaki interpunkcyjne jako dane wejściowe literału.
Ta metoda przechowuje w zadaniu wszystkie wyjątki inne niż użycie, które mogą zgłaszać synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwróconym zadaniu, ten wyjątek zostanie zgłoszony po oczekiwaniu na zadanie. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. Aby uzyskać informacje o przechowywanych wyjątkach, zobacz wyjątki zgłaszane przez EmulateRecognize(String)usługę .
Zobacz też
- EmulateRecognize(String)
- EmulateRecognizeCompleted
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Dotyczy
EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
Emuluje dane wejściowe określonych słów do rozpoznawania mowy udostępnionej, używając tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy i określa sposób, w jaki funkcja rozpoznawania mowy obsługuje porównanie Unicode między wyrazami a załadowaną gramatyką rozpoznawania mowy.
public:
void EmulateRecognizeAsync(cli::array <System::Speech::Recognition::RecognizedWordUnit ^> ^ wordUnits, System::Globalization::CompareOptions compareOptions);
public void EmulateRecognizeAsync (System.Speech.Recognition.RecognizedWordUnit[] wordUnits, System.Globalization.CompareOptions compareOptions);
member this.EmulateRecognizeAsync : System.Speech.Recognition.RecognizedWordUnit[] * System.Globalization.CompareOptions -> unit
Public Sub EmulateRecognizeAsync (wordUnits As RecognizedWordUnit(), compareOptions As CompareOptions)
Parametry
- wordUnits
- RecognizedWordUnit[]
Tablica jednostek wyrazów, która zawiera dane wejściowe dla operacji rozpoznawania.
- compareOptions
- CompareOptions
Bitowa kombinacja wartości wyliczenia opisujących typ porównania do użycia dla emulowanej operacji rozpoznawania.
Uwagi
Ta metoda tworzy RecognitionResult obiekt przy użyciu informacji podanych w parametrze wordUnits
.
Rozpoznawanie używa metody compareOptions
, gdy stosuje reguły gramatyczne do frazy wejściowej. Osoby rozpoznające, które są dostarczane z systemem Vista i Windows 7 ignorują przypadek, jeśli OrdinalIgnoreCase wartość lub IgnoreCase jest obecna. Rozpoznawanie zawsze ignoruje szerokość znaku i nigdy nie ignoruje typu Kana. Rozpoznawanie ignoruje również nowe wiersze i dodatkowe odstępy i traktuje znaki interpunkcyjne jako dane wejściowe literału. Aby uzyskać więcej informacji na temat szerokości znaków i typu Kana, zobacz wyliczenie CompareOptions .
Ta metoda przechowuje w zadaniu wszystkie wyjątki inne niż użycie, które mogą zgłaszać synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwróconym zadaniu, ten wyjątek zostanie zgłoszony po oczekiwaniu na zadanie. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. Aby uzyskać informacje o przechowywanych wyjątkach, zobacz wyjątki zgłaszane przez EmulateRecognize(RecognizedWordUnit[], CompareOptions)usługę .
Zobacz też
- EmulateRecognize(String)
- EmulateRecognizeCompleted
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Dotyczy
EmulateRecognizeAsync(String, CompareOptions)
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
- Źródło:
- SpeechRecognizer.cs
Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej, używając tekstu zamiast dźwięku do asynchronicznego rozpoznawania mowy i określa sposób obsługi porównania Unicode między frazą a załadowaną gramatyką rozpoznawania mowy.
public:
void EmulateRecognizeAsync(System::String ^ inputText, System::Globalization::CompareOptions compareOptions);
public void EmulateRecognizeAsync (string inputText, System.Globalization.CompareOptions compareOptions);
member this.EmulateRecognizeAsync : string * System.Globalization.CompareOptions -> unit
Public Sub EmulateRecognizeAsync (inputText As String, compareOptions As CompareOptions)
Parametry
- inputText
- String
Fraza wejściowa dla operacji rozpoznawania.
- compareOptions
- CompareOptions
Bitowa kombinacja wartości wyliczenia opisujących typ porównania do użycia dla emulowanej operacji rozpoznawania.
Uwagi
Rozpoznawanie używa metody compareOptions
, gdy stosuje reguły gramatyczne do frazy wejściowej. Osoby rozpoznające, które są dostarczane z systemem Vista i Windows 7 ignorują przypadek, jeśli OrdinalIgnoreCase wartość lub IgnoreCase jest obecna. Rozpoznawanie zawsze ignoruje szerokość znaku i nigdy nie ignoruje typu Kana. Rozpoznawanie ignoruje również nowe wiersze i dodatkowe odstępy i traktuje znaki interpunkcyjne jako dane wejściowe literału. Aby uzyskać więcej informacji na temat szerokości znaków i typu Kana, zobacz wyliczenie CompareOptions .
Ta metoda przechowuje w zadaniu wszystkie wyjątki inne niż użycie, które mogą zgłaszać synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwróconym zadaniu, ten wyjątek zostanie zgłoszony po oczekiwaniu na zadanie. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. Aby uzyskać informacje o przechowywanych wyjątkach, zobacz wyjątki zgłaszane przez EmulateRecognize(String, CompareOptions)usługę .
Zobacz też
- EmulateRecognize(String)
- EmulateRecognizeCompleted
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized