SpeechRecognitionEngine.SpeechRecognitionRejected Événement
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Déclenché lorsque l’entrée SpeechRecognitionEngine reçoit qui ne correspond à aucun de ses objets chargés et activés Grammar .
public:
event EventHandler<System::Speech::Recognition::SpeechRecognitionRejectedEventArgs ^> ^ SpeechRecognitionRejected;
public event EventHandler<System.Speech.Recognition.SpeechRecognitionRejectedEventArgs> SpeechRecognitionRejected;
member this.SpeechRecognitionRejected : EventHandler<System.Speech.Recognition.SpeechRecognitionRejectedEventArgs>
Public Custom Event SpeechRecognitionRejected As EventHandler(Of SpeechRecognitionRejectedEventArgs)
Public Event SpeechRecognitionRejected As EventHandler(Of SpeechRecognitionRejectedEventArgs)
Type d'événement
Exemples
L’exemple suivant reconnaît les expressions telles que « Afficher la liste des artistes dans la catégorie jazz » ou « Afficher l’évangile des albums ». L’exemple utilise un gestionnaire pour l’événement SpeechRecognitionRejected pour afficher une notification dans la console lorsque l’entrée vocale ne peut pas être mise en correspondance avec le contenu de la grammaire avec suffisamment pour produire une reconnaissance réussie Confidence . Le gestionnaire affiche également le résultat Alternates de reconnaissance rejeté en raison de scores de confiance faibles.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
static void Main(string[] args)
// Initialize an in-process speech recognition engine.
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US")))
{
// Create a grammar.
// Create lists of alternative choices.
Choices listTypes = new Choices(new string[] { "albums", "artists" });
Choices genres = new Choices(new string[] {
"blues", "classical", "gospel", "jazz", "rock" });
// Create a GrammarBuilder object and assemble the grammar components.
GrammarBuilder mediaMenu = new GrammarBuilder("Display");
mediaMenu.Append("the list of", 0, 1);
mediaMenu.Append(listTypes);
mediaMenu.Append("in the", 0, 1);
mediaMenu.Append(genres);
mediaMenu.Append("category", 0, 1);
// Build a Grammar object from the GrammarBuilder.
Grammar mediaMenuGrammar = new Grammar(mediaMenu);
mediaMenuGrammar.Name = "Media Chooser";
// Attach event handlers.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
recognizer.SpeechRecognitionRejected +=
new EventHandler<SpeechRecognitionRejectedEventArgs>(recognizer_SpeechRecognitionRejected);
// Load the grammar object to the recognizer.
recognizer.LoadGrammarAsync(mediaMenuGrammar);
// Set the input to the recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
Console.ReadLine();
}
}
// Handle the SpeechRecognitionRejected event.
static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e)
{
Console.WriteLine("Speech input was rejected.");
foreach (RecognizedPhrase phrase in e.Result.Alternates)
{
Console.WriteLine(" Rejected phrase: " + phrase.Text);
Console.WriteLine(" Confidence score: " + phrase.Confidence);
}
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
Console.WriteLine("Grammar loaded: " + e.Grammar.Name);
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Speech recognized: " + e.Result.Text);
Console.WriteLine(" Confidence score: " + e.Result.Confidence);
}
}
}
Remarques
Le module de reconnaissance déclenche cet événement s’il détermine que l’entrée ne correspond pas avec une confiance suffisante à l’un de ses objets chargés et activés Grammar . Propriété Result de l’objet SpeechRecognitionRejectedEventArgs rejeté RecognitionResult . Vous pouvez utiliser le gestionnaire pour l’événement SpeechRecognitionRejected pour récupérer la reconnaissance Alternates qui a été rejetée et leurs Confidence scores.
Si votre application utilise une SpeechRecognitionEngine instance, vous pouvez modifier le niveau de confiance auquel l’entrée vocale est acceptée ou rejetée avec l’une UpdateRecognizerSetting des méthodes. Vous pouvez modifier la façon dont la reconnaissance vocale répond à une entrée non vocale à l’aide des propriétés, et InitialSilenceTimeoutEndSilenceTimeoutEndSilenceTimeoutAmbiguous des BabbleTimeoutpropriétés.
Lorsque vous créez un SpeechRecognitionRejected délégué, vous identifiez la méthode qui gère l’événement. Pour associer l’événement à votre gestionnaire d’événements, ajoutez une instance du délégué à l’événement. Le gestionnaire d’événements est appelé chaque fois que l’événement se produit, sauf si vous supprimez le délégué. Pour plus d’informations sur les délégués de gestionnaire d’événements, consultez Événements et délégués.