SpeechRecognitionEngine.EmulateRecognize Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Emula a entrada para o reconhecedor de fala, usando o texto no lugar do áudio para reconhecimento de fala síncrono.
Sobrecargas
| Nome | Description |
|---|---|
| EmulateRecognize(String) |
Emula a entrada de uma frase para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono. |
| EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Emula a entrada de palavras específicas para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono e especifica como o reconhecedor lida com a comparação Unicode entre as palavras e as gramáticas de reconhecimento de fala carregadas. |
| EmulateRecognize(String, CompareOptions) |
Emula a entrada de uma frase para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono e especifica como o reconhecedor lida com a comparação Unicode entre a frase e as gramáticas de reconhecimento de fala carregadas. |
Comentários
Esses métodos ignoram a entrada de áudio do sistema e fornecem texto ao reconhecedor como String objetos ou como uma matriz de RecognizedWordUnit objetos. Isso pode ser útil quando você estiver testando ou depurando um aplicativo ou gramática. Por exemplo, você pode usar a emulação para determinar se uma palavra está em uma gramática e qual semântica é retornada quando a palavra é reconhecida. Use o SetInputToNull método para desabilitar a entrada de áudio no mecanismo de reconhecimento de fala durante operações de emulação.
O reconhecedor de fala gera , SpeechDetectedSpeechHypothesizedSpeechRecognitionRejectede SpeechRecognized eventos como se a operação de reconhecimento não fosse emulada. O reconhecedor ignora novas linhas e espaço em branco extra e trata a pontuação como entrada literal.
Observação
O RecognitionResult objeto gerado pelo reconhecedor de fala em resposta à entrada emulada tem um valor para null sua Audio propriedade.
Para emular o reconhecimento assíncrono, use o EmulateRecognizeAsync método.
EmulateRecognize(String)
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
Emula a entrada de uma frase para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono.
public:
System::Speech::Recognition::RecognitionResult ^ EmulateRecognize(System::String ^ inputText);
public System.Speech.Recognition.RecognitionResult EmulateRecognize(string inputText);
member this.EmulateRecognize : string -> System.Speech.Recognition.RecognitionResult
Public Function EmulateRecognize (inputText As String) As RecognitionResult
Parâmetros
- inputText
- String
A entrada para a operação de reconhecimento.
Retornos
O resultado da operação de reconhecimento ou null se a operação não for bem-sucedida ou se o reconhecedor não estiver habilitado.
Exceções
O reconhecedor não tem gramáticas de reconhecimento de fala carregadas.
inputText é null.
inputText é a cadeia de caracteres vazia ("").
Exemplos
O exemplo de código abaixo faz parte de um aplicativo de console que demonstra a entrada emulada, os resultados de reconhecimento associados e os eventos associados gerados pelo reconhecedor de fala. O exemplo gera a saída a seguir.
TestRecognize("Smith")...
SpeechDetected event raised.
SpeechRecognized event raised.
Grammar = Smith; Text = Smith
...Recognition result text = Smith
TestRecognize("Jones")...
SpeechDetected event raised.
SpeechRecognized event raised.
Grammar = Jones; Text = Jones
...Recognition result text = Jones
TestRecognize("Mister")...
SpeechDetected event raised.
SpeechHypothesized event raised.
Grammar = Smith; Text = mister
SpeechRecognitionRejected event raised.
Grammar = <not available>; Text =
...No recognition result.
TestRecognize("Mister Smith")...
SpeechDetected event raised.
SpeechRecognized event raised.
Grammar = Smith; Text = mister Smith
...Recognition result text = mister Smith
press any key to exit...
using System;
using System.Globalization;
using System.Speech.Recognition;
namespace Sre_EmulateRecognize
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(new CultureInfo("en-US")))
{
// Load grammars.
recognizer.LoadGrammar(CreateNameGrammar("Smith"));
recognizer.LoadGrammar(CreateNameGrammar("Jones"));
// Disable audio input to the recognizer.
recognizer.SetInputToNull();
// Add handlers for events raised by the EmulateRecognize method.
recognizer.SpeechDetected +=
new EventHandler<SpeechDetectedEventArgs>(
SpeechDetectedHandler);
recognizer.SpeechHypothesized +=
new EventHandler<SpeechHypothesizedEventArgs>(
SpeechHypothesizedHandler);
recognizer.SpeechRecognitionRejected +=
new EventHandler<SpeechRecognitionRejectedEventArgs>(
SpeechRecognitionRejectedHandler);
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
SpeechRecognizedHandler);
// Start four synchronous emulated recognition operations.
TestRecognize(recognizer, "Smith");
TestRecognize(recognizer, "Jones");
TestRecognize(recognizer, "Mister");
TestRecognize(recognizer, "Mister Smith");
}
Console.WriteLine("press any key to exit...");
Console.ReadKey(true);
}
// Create a simple name grammar.
// Set the grammar name to the surname.
private static Grammar CreateNameGrammar(string surname)
{
GrammarBuilder builder = new GrammarBuilder("mister", 0, 1);
builder.Append(surname);
Grammar nameGrammar = new Grammar(builder);
nameGrammar.Name = surname;
return nameGrammar;
}
// Send emulated input to the recognizer for synchronous recognition.
private static void TestRecognize(
SpeechRecognitionEngine recognizer, string input)
{
Console.WriteLine("TestRecognize(\"{0}\")...", input);
RecognitionResult result =
recognizer.EmulateRecognize(input,CompareOptions.IgnoreCase);
if (result != null)
{
Console.WriteLine("...Recognition result text = {0}",
result.Text ?? "<null>");
}
else
{
Console.WriteLine("...No recognition result.");
}
Console.WriteLine();
}
static void SpeechDetectedHandler(
object sender, SpeechDetectedEventArgs e)
{
Console.WriteLine(" SpeechDetected event raised.");
}
// Handle events.
static void SpeechHypothesizedHandler(
object sender, SpeechHypothesizedEventArgs e)
{
Console.WriteLine(" SpeechHypothesized event raised.");
if (e.Result != null)
{
Console.WriteLine(" Grammar = {0}; Text = {1}",
e.Result.Grammar.Name ?? "<none>", e.Result.Text);
}
else
{
Console.WriteLine(" No recognition result available.");
}
}
static void SpeechRecognitionRejectedHandler(
object sender, SpeechRecognitionRejectedEventArgs e)
{
Console.WriteLine(" SpeechRecognitionRejected event raised.");
if (e.Result != null)
{
string grammarName;
if (e.Result.Grammar != null)
{
grammarName = e.Result.Grammar.Name ?? "<none>";
}
else
{
grammarName = "<not available>";
}
Console.WriteLine(" Grammar = {0}; Text = {1}",
grammarName, e.Result.Text);
}
else
{
Console.WriteLine(" No recognition result available.");
}
}
static void SpeechRecognizedHandler(
object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine(" SpeechRecognized event raised.");
if (e.Result != null)
{
Console.WriteLine(" Grammar = {0}; Text = {1}",
e.Result.Grammar.Name ?? "<none>", e.Result.Text);
}
else
{
Console.WriteLine(" No recognition result available.");
}
}
}
}
Comentários
O reconhecedor de fala gera , SpeechDetectedSpeechHypothesizedSpeechRecognitionRejectede SpeechRecognized eventos como se a operação de reconhecimento não fosse emulada.
Os reconhecedores que são enviados com Vista e Windows 7 ignoram maiúsculas de minúsculas e de caracteres ao aplicar regras gramaticais à frase de entrada. Para obter mais informações sobre esse tipo de comparação, consulte os CompareOptions valores OrdinalIgnoreCase de enumeração e IgnoreWidth. Os reconhecedores também ignoram novas linhas e espaço em branco extra e tratam a pontuação como entrada literal.
Confira também
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Aplica-se a
EmulateRecognize(RecognizedWordUnit[], CompareOptions)
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
Emula a entrada de palavras específicas para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono e especifica como o reconhecedor lida com a comparação Unicode entre as palavras e as gramáticas de reconhecimento de fala carregadas.
public:
System::Speech::Recognition::RecognitionResult ^ EmulateRecognize(cli::array <System::Speech::Recognition::RecognizedWordUnit ^> ^ wordUnits, System::Globalization::CompareOptions compareOptions);
public System.Speech.Recognition.RecognitionResult EmulateRecognize(System.Speech.Recognition.RecognizedWordUnit[] wordUnits, System.Globalization.CompareOptions compareOptions);
member this.EmulateRecognize : System.Speech.Recognition.RecognizedWordUnit[] * System.Globalization.CompareOptions -> System.Speech.Recognition.RecognitionResult
Public Function EmulateRecognize (wordUnits As RecognizedWordUnit(), compareOptions As CompareOptions) As RecognitionResult
Parâmetros
- wordUnits
- RecognizedWordUnit[]
Uma matriz de unidades de palavras que contém a entrada para a operação de reconhecimento.
- compareOptions
- CompareOptions
Uma combinação bit a bit dos valores de enumeração que descrevem o tipo de comparação a ser usado para a operação de reconhecimento emulada.
Retornos
O resultado da operação de reconhecimento ou null se a operação não for bem-sucedida ou se o reconhecedor não estiver habilitado.
Exceções
O reconhecedor não tem gramáticas de reconhecimento de fala carregadas.
wordUnits é null.
wordUnits contém um ou mais null elementos.
compareOptionscontém o IgnoreNonSpacesinalizador ou StringSort o sinalizadorIgnoreSymbols.
Comentários
O reconhecedor de fala gera , SpeechDetectedSpeechHypothesizedSpeechRecognitionRejectede SpeechRecognized eventos como se a operação de reconhecimento não fosse emulada.
O reconhecedor usa compareOptions quando aplica regras gramaticais à frase de entrada. Os reconhecedores enviados com Vista e Windows 7 ignoram maiúsculas de minúsculas se o valor ou IgnoreCase o OrdinalIgnoreCase valor estiver presente. O reconhecedor sempre ignora a largura do caractere e nunca ignora o tipo Kana. O reconhecedor também ignora novas linhas e espaço em branco extra e trata a pontuação como entrada literal. Para obter mais informações sobre a largura do caractere e o tipo Kana, consulte a CompareOptions enumeração.
Confira também
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Aplica-se a
EmulateRecognize(String, CompareOptions)
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
- Origem:
- SpeechRecognitionEngine.cs
Emula a entrada de uma frase para o reconhecedor de fala, usando texto no lugar do áudio para reconhecimento de fala síncrono e especifica como o reconhecedor lida com a comparação Unicode entre a frase e as gramáticas de reconhecimento de fala carregadas.
public:
System::Speech::Recognition::RecognitionResult ^ EmulateRecognize(System::String ^ inputText, System::Globalization::CompareOptions compareOptions);
public System.Speech.Recognition.RecognitionResult EmulateRecognize(string inputText, System.Globalization.CompareOptions compareOptions);
member this.EmulateRecognize : string * System.Globalization.CompareOptions -> System.Speech.Recognition.RecognitionResult
Public Function EmulateRecognize (inputText As String, compareOptions As CompareOptions) As RecognitionResult
Parâmetros
- inputText
- String
A frase de entrada para a operação de reconhecimento.
- compareOptions
- CompareOptions
Uma combinação bit a bit dos valores de enumeração que descrevem o tipo de comparação a ser usado para a operação de reconhecimento emulada.
Retornos
O resultado da operação de reconhecimento ou null se a operação não for bem-sucedida ou se o reconhecedor não estiver habilitado.
Exceções
O reconhecedor não tem gramáticas de reconhecimento de fala carregadas.
inputText é null.
inputText é a cadeia de caracteres vazia ("").
compareOptionscontém o IgnoreNonSpacesinalizador ou StringSort o sinalizadorIgnoreSymbols.
Comentários
O reconhecedor de fala gera , SpeechDetectedSpeechHypothesizedSpeechRecognitionRejectede SpeechRecognized eventos como se a operação de reconhecimento não fosse emulada.
O reconhecedor usa compareOptions quando aplica regras gramaticais à frase de entrada. Os reconhecedores enviados com Vista e Windows 7 ignoram maiúsculas de minúsculas se o valor ou IgnoreCase o OrdinalIgnoreCase valor estiver presente. O reconhecedor sempre ignora a largura do caractere e nunca ignora o tipo Kana. O reconhecedor também ignora novas linhas e espaço em branco extra e trata a pontuação como entrada literal. Para obter mais informações sobre a largura do caractere e o tipo Kana, consulte a CompareOptions enumeração.
Confira também
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized