SpeechRecognitionEngine.Recognize Méthode
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émarre une opération de reconnaissance vocale synchrone.
Surcharges
Recognize() |
Effectue une opération de reconnaissance vocale synchrone. |
Recognize(TimeSpan) |
Effectue une opération de reconnaissance vocale synchrone avec un délai d'attente de silence initial spécifié. |
Remarques
Ces méthodes effectuent une opération de reconnaissance synchrone unique. Le module de reconnaissance effectue cette opération par rapport à ses grammaires de reconnaissance vocale chargées et activées.
Lors d’un appel à cette méthode, le module de reconnaissance peut déclencher les événements suivants :
SpeechDetected. Déclenché lorsque le module de reconnaissance détecte une entrée qu’il peut identifier en tant que reconnaissance vocale.
SpeechHypothesized. Déclenché lorsque l’entrée crée une correspondance ambiguë avec l’une des grammaires actives.
SpeechRecognitionRejected ou SpeechRecognized. Déclenché lorsque le module de reconnaissance finalise une opération de reconnaissance.
Le module de reconnaissance ne déclenche pas l’événement lors de l’utilisation RecognizeCompleted de l’une Recognize des méthodes.
Les Recognize méthodes retournent un RecognitionResult objet, ou null
si l’opération échoue ou si le module de reconnaissance n’est pas activé.
Une opération de reconnaissance synchrone peut échouer pour les raisons suivantes :
La reconnaissance vocale n’est pas détectée avant l’expiration des intervalles de délai d’expiration pour les BabbleTimeout propriétés ou InitialSilenceTimeout pour le
initialSilenceTimeout
paramètre de la Recognize méthode.Le moteur de reconnaissance détecte la parole vocale, mais ne trouve aucune correspondance dans ses objets chargés et activés Grammar .
Pour modifier la façon dont l’outil de reconnaissance gère le minutage de la parole ou du silence en ce qui concerne la reconnaissance, utilisez les BabbleTimeoutpropriétés , InitialSilenceTimeout, EndSilenceTimeoutet EndSilenceTimeoutAmbiguous .
Le doit avoir au moins un objet chargé avant d’effectuer Grammar la SpeechRecognitionEngine reconnaissance. Pour charger une grammaire de reconnaissance vocale, utilisez la LoadGrammar méthode ou LoadGrammarAsync .
Pour effectuer la reconnaissance asynchrone, utilisez l’une des RecognizeAsync méthodes .
Recognize()
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
Effectue une opération de reconnaissance vocale synchrone.
public:
System::Speech::Recognition::RecognitionResult ^ Recognize();
public System.Speech.Recognition.RecognitionResult Recognize ();
member this.Recognize : unit -> System.Speech.Recognition.RecognitionResult
Public Function Recognize () As RecognitionResult
Retours
Résultat de la reconnaissance pour l'entrée ou null
si l'opération n'est pas réussie ou que le module de reconnaissance n'est pas activé.
Exemples
L’exemple suivant montre une partie d’une application console qui illustre la reconnaissance vocale de base. L’exemple crée un DictationGrammar, le charge dans un module de reconnaissance vocale in-process et effectue une opération de reconnaissance.
using System;
using System.Speech.Recognition;
namespace SynchronousRecognition
{
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());
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Modify the initial silence time-out value.
recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5);
// Start synchronous speech recognition.
RecognitionResult result = recognizer.Recognize();
if (result != null)
{
Console.WriteLine("Recognized text = {0}", result.Text);
}
else
{
Console.WriteLine("No recognition result available.");
}
}
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
}
}
Remarques
Cette méthode effectue une opération de reconnaissance unique. Le module de reconnaissance effectue cette opération par rapport à ses grammaires de reconnaissance vocale chargées et activées.
Lors d’un appel à cette méthode, le module de reconnaissance peut déclencher les événements suivants :
SpeechDetected. Déclenché lorsque le module de reconnaissance détecte une entrée qu’il peut identifier en tant que reconnaissance vocale.
SpeechHypothesized. Déclenché lorsque l’entrée crée une correspondance ambiguë avec l’une des grammaires actives.
SpeechRecognitionRejected ou SpeechRecognized. Déclenché lorsque le module de reconnaissance finalise une opération de reconnaissance.
Le module de reconnaissance ne déclenche pas l’événement lors de l’utilisation RecognizeCompleted de cette méthode.
La Recognize() méthode retourne un RecognitionResult objet, ou null
si l’opération n’a pas réussi.
Une opération de reconnaissance synchrone peut échouer pour les raisons suivantes :
La voix n’est pas détectée avant l’expiration des intervalles de délai d’expiration pour les BabbleTimeout propriétés ou InitialSilenceTimeout .
Le moteur de reconnaissance détecte la parole vocale, mais ne trouve aucune correspondance dans ses objets chargés et activés Grammar .
Pour effectuer la reconnaissance asynchrone, utilisez l’une des RecognizeAsync méthodes .
Voir aussi
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)
S’applique à
Recognize(TimeSpan)
- Source:
- SpeechRecognitionEngine.cs
- Source:
- SpeechRecognitionEngine.cs
Effectue une opération de reconnaissance vocale synchrone avec un délai d'attente de silence initial spécifié.
public:
System::Speech::Recognition::RecognitionResult ^ Recognize(TimeSpan initialSilenceTimeout);
public System.Speech.Recognition.RecognitionResult Recognize (TimeSpan initialSilenceTimeout);
member this.Recognize : TimeSpan -> System.Speech.Recognition.RecognitionResult
Public Function Recognize (initialSilenceTimeout As TimeSpan) As RecognitionResult
Paramètres
- initialSilenceTimeout
- TimeSpan
Intervalle de temps pendant lequel un module de reconnaissance vocale accepte une entrée contenant uniquement un silence, avant la finalisation de la reconnaissance.
Retours
Résultat de la reconnaissance pour l'entrée ou null
si l'opération n'est pas réussie ou que le module de reconnaissance n'est pas activé.
Exemples
L’exemple suivant montre une partie d’une application console qui illustre la reconnaissance vocale de base. L’exemple crée un DictationGrammar, le charge dans un module de reconnaissance vocale in-process et effectue une opération de reconnaissance.
using System;
using System.Speech.Recognition;
namespace SynchronousRecognition
{
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());
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start synchronous speech recognition.
RecognitionResult result = recognizer.Recognize(TimeSpan.FromSeconds(5));
if (result != null)
{
Console.WriteLine("Recognized text = {0}", result.Text);
}
else
{
Console.WriteLine("No recognition result available.");
}
}
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
}
}
Remarques
Si le moteur de reconnaissance vocale détecte la parole dans l’intervalle de temps spécifié par initialSilenceTimeout
l’argument, Recognize(TimeSpan) effectue une seule opération de reconnaissance, puis se termine. Le initialSilenceTimeout
paramètre remplace la propriété du module de InitialSilenceTimeout reconnaissance.
Lors d’un appel à cette méthode, le module de reconnaissance peut déclencher les événements suivants :
SpeechDetected. Déclenché lorsque le module de reconnaissance détecte une entrée qu’il peut identifier en tant que reconnaissance vocale.
SpeechHypothesized. Déclenché lorsque l’entrée crée une correspondance ambiguë avec l’une des grammaires actives.
SpeechRecognitionRejected ou SpeechRecognized. Déclenché lorsque le module de reconnaissance finalise une opération de reconnaissance.
Le module de reconnaissance ne déclenche pas l’événement lors de l’utilisation RecognizeCompleted de cette méthode.
La Recognize() méthode retourne un RecognitionResult objet, ou null
si l’opération n’a pas réussi.
Une opération de reconnaissance synchrone peut échouer pour les raisons suivantes :
La reconnaissance vocale n’est pas détectée avant l’expiration des intervalles de délai d’expiration pour le BabbleTimeout ou pour le
initialSilenceTimeout
paramètre .Le moteur de reconnaissance détecte la parole vocale, mais ne trouve aucune correspondance dans ses objets chargés et activés Grammar .
Pour effectuer la reconnaissance asynchrone, utilisez l’une des RecognizeAsync méthodes .
Voir aussi
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)