SpeechRecognitionEngine.LoadGrammar(Grammar) 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.
Carrega de forma síncrona um objeto Grammar.
public:
void LoadGrammar(System::Speech::Recognition::Grammar ^ grammar);
public void LoadGrammar (System.Speech.Recognition.Grammar grammar);
member this.LoadGrammar : System.Speech.Recognition.Grammar -> unit
Public Sub LoadGrammar (grammar As Grammar)
Parâmetros
- grammar
- Grammar
O objeto de gramática a ser carregado.
Exceções
Grammar
é null
.
Grammar
não está em um objeto válido.
Exemplos
O exemplo a seguir mostra parte de um aplicativo de console que demonstra o reconhecimento de fala básico. O exemplo cria um DictationGrammar e carrega-os em um reconhecedor de fala.
using System;
using System.Speech.Recognition;
namespace SpeechRecognitionApp
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (
SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
// Create and load a dictation grammar.
recognizer.LoadGrammar(new DictationGrammar());
// Add a handler for the speech recognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start asynchronous, continuous speech recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
while (true)
{
Console.ReadLine();
}
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Recognized text: " + e.Result.Text);
}
}
}
Comentários
O reconhecedor gera uma exceção se o Grammar objeto já está carregado, está sendo carregado de forma assíncrona ou falhou ao ser carregado em nenhum reconhecedor. Não é possível carregar o mesmo Grammar objeto em várias instâncias do SpeechRecognitionEngine. Em vez disso, crie um novo Grammar para cada objeto SpeechRecognitionEngine instância.
Se o reconhecedor estiver em execução, os aplicativos deverão usar RequestRecognizerUpdate o para pausar o mecanismo de reconhecimento de fala antes de carregar, descarregar, habilitar ou desabilitar uma gramática.
Quando você carrega uma gramática, ela é habilitada por padrão. Para desabilitar uma gramática carregada, use a Enabled propriedade.
Para carregar uma Grammar objeto de forma assíncrona, use o LoadGrammarAsync método.