Partager via


SpeechRecognitionEngine.Recognize Méthode

Définition

Démarre une opération de reconnaissance vocale synchrone.

Surcharges

Nom Description
Recognize()

Effectue une opération de reconnaissance vocale synchrone.

Recognize(TimeSpan)

Effectue une opération de reconnaissance vocale synchrone avec un délai d’expiration 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.

Pendant 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 l’entrée qu’il peut identifier comme parole.

  • 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 RecognizeCompleted lors de l’utilisation de l’une Recognize des méthodes.

Les Recognize méthodes retournent un RecognitionResult objet, ou null si l’opération ne réussit pas 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 voix, mais ne trouve aucune correspondance dans l’un de ses objets chargés et activés Grammar .

Pour modifier la façon dont le module de reconnaissance gère le minutage de la parole ou du silence en ce qui concerne la reconnaissance, utilisez les propriétés , InitialSilenceTimeoutEndSilenceTimeoutet EndSilenceTimeoutAmbiguous les BabbleTimeoutpropriétés.

L’objet SpeechRecognitionEngine doit avoir au moins un Grammar objet chargé avant d’effectuer la reconnaissance. Pour charger une grammaire de reconnaissance vocale, utilisez la ou LoadGrammarAsync la LoadGrammar méthode.

Pour effectuer une reconnaissance asynchrone, utilisez l’une RecognizeAsync des méthodes.

Recognize()

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
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 de l’entrée, ou null si l’opération ne réussit pas ou si 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.

Pendant 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 l’entrée qu’il peut identifier comme parole.

  • 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 les propriétés ou InitialSilenceTimeout les BabbleTimeout propriétés.

  • Le moteur de reconnaissance détecte la voix, mais ne trouve aucune correspondance dans l’un de ses objets chargés et activés Grammar .

Pour effectuer une reconnaissance asynchrone, utilisez l’une RecognizeAsync des méthodes.

Voir aussi

S’applique à

Recognize(TimeSpan)

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs

Effectue une opération de reconnaissance vocale synchrone avec un délai d’expiration 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

L’intervalle de temps qu’un module de reconnaissance vocale accepte l’entrée contenant uniquement le silence avant de finaliser la reconnaissance.

Retours

Résultat de la reconnaissance de l’entrée, ou null si l’opération ne réussit pas ou si 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 voix dans l’intervalle de temps spécifié par initialSilenceTimeout l’argument, Recognize(TimeSpan) effectue une opération de reconnaissance unique, puis se termine. Le initialSilenceTimeout paramètre remplace la propriété du module de InitialSilenceTimeout reconnaissance.

Pendant 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 l’entrée qu’il peut identifier comme parole.

  • 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 voix, mais ne trouve aucune correspondance dans l’un de ses objets chargés et activés Grammar .

Pour effectuer une reconnaissance asynchrone, utilisez l’une RecognizeAsync des méthodes.

Voir aussi

S’applique à