SpeechRecognizer.EmulateRecognizeAsync Método

Definição

Emula a entrada para o reconhecedor de fala compartilhado usando texto em vez de áudio para reconhecimento de fala assíncrono.Emulates input to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

Sobrecargas

EmulateRecognizeAsync(String)

Emula a entrada de uma frase para o reconhecedor de fala compartilhado usando texto em vez de áudio para reconhecimento de fala assíncrono.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emula a entrada de palavras específicas no reconhecedor de fala compartilhado usando texto em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre as palavras e as gramáticas do reconhecimento de fala carregado.Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognizeAsync(String, CompareOptions)

Emula a entrada de uma frase no reconhecedor de fala compartilhado usando texto em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre a frase e as gramáticas do reconhecimento de fala carregado.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

Comentários

Esses métodos ignoram a entrada de áudio do sistema.These methods bypass the system audio input. Isso pode ser útil quando você estiver testando ou Depurando um aplicativo ou uma gramática.This can be helpful when you are testing or debugging an application or grammar.

O reconhecedor compartilhado gera SpeechDetected os SpeechHypothesized eventos,, SpeechRecognitionRejected e SpeechRecognized como se a operação de reconhecimento não for emulada.The shared recognizer raises the SpeechDetected, SpeechHypothesized, SpeechRecognitionRejected, and SpeechRecognized events as if the recognition operation is not emulated. Quando o reconhecedor conclui a operação de reconhecimento assíncrono, ele gera o EmulateRecognizeCompleted evento.When the recognizer completes the asynchronous recognition operation, it raises the EmulateRecognizeCompleted event. O reconhecedor ignora novas linhas e espaços em branco extras e trata a Pontuação como entrada literal.The recognizer ignores new lines and extra white space and treats punctuation as literal input.

Observação

Se o reconhecimento de fala do Windows estiver no estado de repouso , o reconhecedor compartilhado não processará a entrada e não gerará os SpeechDetected eventos relacionados, mas ainda gerará o EmulateRecognizeCompleted evento.If Windows Speech Recognition is in the Sleeping state, then the shared recognizer does not process input and does not raise the SpeechDetected and related events, but still raises the EmulateRecognizeCompleted event.

Observação

O RecognitionResult objeto gerado pelo reconhecedor compartilhado em resposta à entrada emulada tem um valor de null para sua Audio propriedade.The RecognitionResult object generated by the shared recognizer in response to emulated input has a value of null for its Audio property.

Para emular o reconhecimento síncrono, use o EmulateRecognize método.To emulate synchronous recognition, use the EmulateRecognize method.

EmulateRecognizeAsync(String)

Emula a entrada de uma frase para o reconhecedor de fala compartilhado usando texto em vez de áudio para reconhecimento de fala assíncrono.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

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

Parâmetros

inputText
String

A entrada da operação de reconhecimento.The input for the recognition operation.

Exemplos

O exemplo a seguir faz parte de um aplicativo de console que carrega uma gramática de reconhecimento de fala e demonstra a entrada emulada assíncrona, os resultados de reconhecimento associados e os eventos associados gerados pelo reconhecedor de fala.The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. Se o reconhecimento de fala do Windows não estiver em execução, iniciar este aplicativo também iniciará o reconhecimento de fala do Windows.If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. Se o reconhecimento de fala do Windows estiver no estado de repouso , EmulateRecognizeAsync sempre retornará NULL.If Windows Speech Recognition is in the Sleeping state, then EmulateRecognizeAsync always returns 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;  
    }  
  }  
}  

Comentários

Os reconhecedores que acompanham o Vista e o Windows 7 ignoram o caso e a largura do caractere ao aplicar regras de gramática à frase de entrada.The recognizers that ship with Vista and Windows 7 ignore case and character width when applying grammar rules to the input phrase. Para obter mais informações sobre esse tipo de comparação, consulte os CompareOptions valores de enumeração OrdinalIgnoreCase e IgnoreWidth .For more information about this type of comparison, see the CompareOptions enumeration values OrdinalIgnoreCase and IgnoreWidth. Os reconhecedores também ignoram novas linhas e espaços em branco extras e tratam a Pontuação como entrada literal.The recognizers also ignore new lines and extra white space and treat punctuation as literal input.

Confira também

Aplica-se a

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emula a entrada de palavras específicas no reconhecedor de fala compartilhado usando texto em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre as palavras e as gramáticas do reconhecimento de fala carregado.Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

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)

Parâmetros

wordUnits
RecognizedWordUnit[]

Uma matriz de unidades de palavra que contém a entrada da operação de reconhecimento.An array of word units that contains the input for the recognition operation.

compareOptions
CompareOptions

Uma combinação bit a bit dos valores de enumeração que descrevem o tipo de comparação a ser usada para a operação de reconhecimento emulada.A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation.

Comentários

Esse método cria um RecognitionResult objeto usando as informações fornecidas no wordUnits parâmetro.This method creates a RecognitionResult object using the information provided in the wordUnits parameter.

O reconhecedor usa o compareOptions quando aplica regras gramaticais à frase de entrada.The recognizer uses the compareOptions when it applies grammar rules to the input phrase. Os reconhecedores que acompanham o Vista e o Windows 7 ignoram maiúsculas e minúsculas se o OrdinalIgnoreCase IgnoreCase valor ou estiver presente.The recognizers that ship with Vista and Windows 7 ignore case if the OrdinalIgnoreCase or IgnoreCase value is present. Os reconhecedores sempre ignoram a largura do caractere e nunca ignoram o tipo kana.The recognizers always ignore the character width and never ignore the Kana type. Os reconhecedores também ignoram novas linhas e espaços em branco extras e trata a Pontuação como entrada literal.The recognizers also ignore new lines and extra white space and treats punctuation as literal input. Para obter mais informações sobre a largura do caractere e o tipo kana, consulte a CompareOptions enumeração.For more information about character width and Kana type, see the CompareOptions enumeration.

Confira também

Aplica-se a

EmulateRecognizeAsync(String, CompareOptions)

Emula a entrada de uma frase no reconhecedor de fala compartilhado usando texto em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre a frase e as gramáticas do reconhecimento de fala carregado.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

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)

Parâmetros

inputText
String

A frase de entrada da operação de reconhecimento.The input phrase for the recognition operation.

compareOptions
CompareOptions

Uma combinação bit a bit dos valores de enumeração que descrevem o tipo de comparação a ser usada para a operação de reconhecimento emulada.A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation.

Comentários

O reconhecedor usa o compareOptions quando aplica regras gramaticais à frase de entrada.The recognizer uses the compareOptions when it applies grammar rules to the input phrase. Os reconhecedores que acompanham o Vista e o Windows 7 ignoram maiúsculas e minúsculas se o OrdinalIgnoreCase IgnoreCase valor ou estiver presente.The recognizers that ship with Vista and Windows 7 ignore case if the OrdinalIgnoreCase or IgnoreCase value is present. Os reconhecedores sempre ignoram a largura do caractere e nunca ignoram o tipo kana.The recognizers always ignore the character width and never ignore the Kana type. Os reconhecedores também ignoram novas linhas e espaços em branco extras e trata a Pontuação como entrada literal.The recognizers also ignore new lines and extra white space and treats punctuation as literal input. Para obter mais informações sobre a largura do caractere e o tipo kana, consulte a CompareOptions enumeração.For more information about character width and Kana type, see the CompareOptions enumeration.

Confira também

Aplica-se a