SpeechRecognitionEngine.LoadGrammar(Grammar) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Synchronně načte Grammar objekt.
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)
Parametry
- grammar
- Grammar
Gramatický objekt, který se má načíst.
Výjimky
Grammar
je null
.
Grammar
není v platném stavu.
Příklady
Následující příklad ukazuje část konzolové aplikace, která demonstruje základní rozpoznávání řeči. Příklad vytvoří DictationGrammar a načte ho do rozpoznávání řeči.
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);
}
}
}
Poznámky
Rozpoznávání vyvolá výjimku, pokud Grammar je objekt již načten, je asynchronně načten nebo se nepodařilo načíst do žádného rozpoznávání. Stejný Grammar objekt nelze načíst do více instancí nástroje SpeechRecognitionEngine. Místo toho vytvořte nový Grammar objekt pro každou SpeechRecognitionEngine instanci.
Pokud je rozpoznávání spuštěné, musí aplikace před načtením, uvolněním, povolením nebo zakázáním gramatiky pozastavit RequestRecognizerUpdate modul rozpoznávání řeči.
Když načtete gramatiku, je ve výchozím nastavení povolená. Pokud chcete zakázat načtenou gramatiku Enabled , použijte vlastnost .
Pokud chcete načíst Grammar objekt asynchronně, použijte metodu LoadGrammarAsync .