SpeechRecognitionEngine.EmulateRecognize Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Emula la entrada para el reconocimiento de voz, usando el texto en lugar de audio para el reconocimiento de voz sincrónico.
Sobrecargas
EmulateRecognize(String) |
Emula la entrada de una frase al módulo de reconocimiento de voz, usando el texto en lugar de audio para el reconocimiento de voz sincrónico. |
EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Emula la entrada de palabras específicas al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre las palabras y las gramáticas reconocimiento de voz cargadas. |
EmulateRecognize(String, CompareOptions) |
Emula la entrada de una frase al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre la frase y las gramáticas reconocimiento de voz cargadas. |
Comentarios
Estos métodos omiten la entrada de audio del sistema y proporcionan texto al reconocedor como String objetos o como una matriz de RecognizedWordUnit objetos. Esto puede resultar útil al probar o depurar una aplicación o gramática. Por ejemplo, puede usar la emulación para determinar si una palabra está en una gramática y qué semántica se devuelve cuando se reconoce la palabra. Use el método para deshabilitar la SetInputToNull entrada de audio en el motor de reconocimiento de voz durante las operaciones de emulación.
El reconocedor de voz genera los SpeechDetectedeventos , SpeechHypothesized, SpeechRecognitionRejectedy SpeechRecognized como si la operación de reconocimiento no se emulara. El reconocedor omite las nuevas líneas y el espacio en blanco adicional y trata la puntuación como entrada literal.
Nota
El RecognitionResult objeto generado por el reconocedor de voz en respuesta a la entrada emulada tiene un valor de null
para su Audio propiedad .
Para emular el reconocimiento asincrónico, use el EmulateRecognizeAsync método .
EmulateRecognize(String)
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
Emula la entrada de una frase al módulo de reconocimiento de voz, usando el texto en lugar de audio para el reconocimiento de voz sincrónico.
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
La entrada de la operación de reconocimiento.
Devoluciones
El resultado de la operación de reconocimiento, o null
si la operación no es correcta o el reconocedor no está habilitado.
Excepciones
El reconocedor no tiene ninguna gramática de reconocimiento de voz cargada.
inputText
es null
.
inputText
es la cadena vacía ("").
Ejemplos
El ejemplo de código siguiente forma parte de una aplicación de consola que muestra la entrada emulada, los resultados de reconocimiento asociados y los eventos asociados generados por el reconocedor de voz. El ejemplo genera la siguiente salida.
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.");
}
}
}
}
Comentarios
El reconocedor de voz genera los SpeechDetectedeventos , SpeechHypothesized, SpeechRecognitionRejectedy SpeechRecognized como si la operación de reconocimiento no se emulara.
Los reconocedores que se incluyen con Vista y Windows 7 omiten el ancho de mayúsculas y minúsculas al aplicar reglas de gramática a la frase de entrada. Para obtener más información sobre este tipo de comparación, vea los CompareOptions valores OrdinalIgnoreCase de enumeración y IgnoreWidth. Los reconocedores también omiten nuevas líneas y espacios en blanco adicionales y tratan la puntuación como entrada literal.
Consulte también
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Se aplica a
EmulateRecognize(RecognizedWordUnit[], CompareOptions)
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
Emula la entrada de palabras específicas al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre las palabras y las gramáticas reconocimiento de voz cargadas.
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[]
Matriz de unidades de palabra que contiene la entrada de la operación de reconocimiento.
- compareOptions
- CompareOptions
Combinación bit a bit de los valores de enumeración que describen el tipo de comparación que se va a usar para la operación emulada de reconocimiento.
Devoluciones
El resultado de la operación de reconocimiento, o null
si la operación no es correcta o el reconocedor no está habilitado.
Excepciones
El reconocedor no tiene ninguna gramática de reconocimiento de voz cargada.
wordUnits
es null
.
wordUnits
contiene uno o varios elementos null
.
compareOptions
contiene la marca IgnoreNonSpace, IgnoreSymbols o StringSort.
Comentarios
El reconocedor de voz genera los SpeechDetectedeventos , SpeechHypothesized, SpeechRecognitionRejectedy SpeechRecognized como si la operación de reconocimiento no se emulara.
El reconocedor usa compareOptions
cuando aplica reglas gramaticales a la frase de entrada. Los reconocedores que se incluyen con Vista y Windows 7 omiten mayúsculas y minúsculas si el OrdinalIgnoreCase valor o IgnoreCase está presente. El reconocedor siempre omite el ancho del carácter y nunca omite el tipo Kana. El reconocedor también omite nuevas líneas y espacios en blanco adicionales y trata la puntuación como entrada literal. Para obtener más información sobre el ancho de caracteres y el tipo Kana, vea la CompareOptions enumeración .
Consulte también
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
Se aplica a
EmulateRecognize(String, CompareOptions)
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
Emula la entrada de una frase al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre la frase y las gramáticas reconocimiento de voz cargadas.
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
La frase de entrada de la operación de reconocimiento.
- compareOptions
- CompareOptions
Combinación bit a bit de los valores de enumeración que describen el tipo de comparación que se va a usar para la operación emulada de reconocimiento.
Devoluciones
El resultado de la operación de reconocimiento, o null
si la operación no es correcta o el reconocedor no está habilitado.
Excepciones
El reconocedor no tiene ninguna gramática de reconocimiento de voz cargada.
inputText
es null
.
inputText
es la cadena vacía ("").
compareOptions
contiene la marca IgnoreNonSpace, IgnoreSymbols o StringSort.
Comentarios
El reconocedor de voz genera los SpeechDetectedeventos , SpeechHypothesized, SpeechRecognitionRejectedy SpeechRecognized como si la operación de reconocimiento no se emulara.
El reconocedor usa compareOptions
cuando aplica reglas gramaticales a la frase de entrada. Los reconocedores que se incluyen con Vista y Windows 7 omiten mayúsculas y minúsculas si el OrdinalIgnoreCase valor o IgnoreCase está presente. El reconocedor siempre omite el ancho del carácter y nunca omite el tipo Kana. El reconocedor también omite nuevas líneas y espacios en blanco adicionales y trata la puntuación como entrada literal. Para obtener más información sobre el ancho de caracteres y el tipo Kana, vea la CompareOptions enumeración .
Consulte también
- EmulateRecognizeAsync(String)
- Recognize()
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized