Condividi tramite


SpeechRecognizer.EmulateRecognizeAsync Metodo

Definizione

Emula l'input al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono.

Overload

Nome Descrizione
EmulateRecognizeAsync(String)

Emula l'input di una frase al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emula l'input di parole specifiche al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono e specifica come il riconoscimento gestisce il confronto Unicode tra le parole e le grammatiche di riconoscimento vocale caricate.

EmulateRecognizeAsync(String, CompareOptions)

Emula l'input di una frase al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono e specifica come il riconoscimento gestisce il confronto Unicode tra la frase e le grammatiche di riconoscimento vocale caricate.

Commenti

Questi metodi ignorano l'input audio di sistema. Questo può essere utile quando si esegue il test o il debug di un'applicazione o una grammatica.

Il riconoscitore condiviso genera gli SpeechDetectedeventi , SpeechHypothesized, SpeechRecognitionRejectede SpeechRecognized come se l'operazione di riconoscimento non sia emulata. Quando il riconoscitore completa l'operazione di riconoscimento asincrono, genera l'evento EmulateRecognizeCompleted . Il riconoscitore ignora nuove righe e spazi vuoti aggiuntivi e considera la punteggiatura come input letterale.

Annotazioni

Se il riconoscimento vocale di Windows si trova nello stato di sospensione , il riconoscitore condiviso non elabora l'input e non genera gli SpeechDetected eventi correlati e ma genera comunque l'evento EmulateRecognizeCompleted .

Annotazioni

L'oggetto RecognitionResult generato dal riconoscitore condiviso in risposta all'input emulato ha un valore di null per la relativa Audio proprietà.

Per emulare il riconoscimento sincrono, usare il EmulateRecognize metodo .

EmulateRecognizeAsync(String)

Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs

Emula l'input di una frase al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono.

public:
 void EmulateRecognizeAsync(System::String ^ inputText);
public void EmulateRecognizeAsync(string inputText);
member this.EmulateRecognizeAsync : string -> unit
Public Sub EmulateRecognizeAsync (inputText As String)

Parametri

inputText
String

Input per l'operazione di riconoscimento.

Esempio

L'esempio seguente fa parte di un'applicazione console che carica una grammatica di riconoscimento vocale e illustra l'input emulato asincrono, i risultati di riconoscimento associati e gli eventi associati generati dal riconoscimento vocale. Se il riconoscimento vocale di Windows non è in esecuzione, l'avvio dell'applicazione avvierà anche Riconoscimento vocale Windows. Se il riconoscimento vocale di Windows si trova nello stato di sospensione , EmulateRecognizeAsync restituisce sempre 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;
    }
  }
}

Commenti

I riconoscitori forniti con Vista e Windows 7 ignorano la larghezza di maiuscole e minuscole e caratteri quando si applicano regole grammaticali alla frase di input. Per altre informazioni su questo tipo di confronto, vedere i CompareOptions valori OrdinalIgnoreCase di enumerazione e IgnoreWidth. I riconoscitori ignorano anche nuove righe e spazi vuoti aggiuntivi e considerano la punteggiatura come input letterale.

Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da EmulateRecognize(String).

Vedi anche

Si applica a

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs

Emula l'input di parole specifiche al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono e specifica come il riconoscimento gestisce il confronto Unicode tra le parole e le grammatiche di riconoscimento vocale caricate.

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)

Parametri

wordUnits
RecognizedWordUnit[]

Matrice di unità di parole che contiene l'input per l'operazione di riconoscimento.

compareOptions
CompareOptions

Combinazione bit per bit dei valori di enumerazione che descrivono il tipo di confronto da utilizzare per l'operazione di riconoscimento emulato.

Commenti

Questo metodo crea un RecognitionResult oggetto utilizzando le informazioni fornite nel wordUnits parametro .

Il riconoscitore usa quando compareOptions applica le regole grammaticali alla frase di input. I riconoscitori forniti con Vista e Windows 7 ignorano la distinzione tra maiuscole e minuscole se il OrdinalIgnoreCase valore o IgnoreCase è presente. I riconoscitori ignorano sempre la larghezza del carattere e non ignorano mai il tipo Kana. I riconoscitori ignorano anche nuove righe e spazi vuoti aggiuntivi e considerano la punteggiatura come input letterale. Per altre informazioni sulla larghezza dei caratteri e sul tipo Kana, vedere l'enumerazione CompareOptions .

Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da EmulateRecognize(RecognizedWordUnit[], CompareOptions).

Vedi anche

Si applica a

EmulateRecognizeAsync(String, CompareOptions)

Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs
Origine:
SpeechRecognizer.cs

Emula l'input di una frase al riconoscimento vocale condiviso, usando testo anziché audio per il riconoscimento vocale asincrono e specifica come il riconoscimento gestisce il confronto Unicode tra la frase e le grammatiche di riconoscimento vocale caricate.

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)

Parametri

inputText
String

Frase di input per l'operazione di riconoscimento.

compareOptions
CompareOptions

Combinazione bit per bit dei valori di enumerazione che descrivono il tipo di confronto da utilizzare per l'operazione di riconoscimento emulato.

Commenti

Il riconoscitore usa quando compareOptions applica le regole grammaticali alla frase di input. I riconoscitori forniti con Vista e Windows 7 ignorano la distinzione tra maiuscole e minuscole se il OrdinalIgnoreCase valore o IgnoreCase è presente. I riconoscitori ignorano sempre la larghezza del carattere e non ignorano mai il tipo Kana. I riconoscitori ignorano anche nuove righe e spazi vuoti aggiuntivi e considerano la punteggiatura come input letterale. Per altre informazioni sulla larghezza dei caratteri e sul tipo Kana, vedere l'enumerazione CompareOptions .

Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da EmulateRecognize(String, CompareOptions).

Vedi anche

Si applica a