SpeechRecognitionEngine Classe
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.
Fournit les moyens d’accéder et de gérer un moteur de reconnaissance vocale in-process.
public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
- Héritage
-
SpeechRecognitionEngine
- Implémente
Exemples
L’exemple suivant montre une partie d’une application console qui illustre la reconnaissance vocale de base. Étant donné que cet exemple utilise le Multiple mode de la RecognizeAsync méthode, il effectue la reconnaissance jusqu’à ce que vous fermez la fenêtre de console ou arrêtez le débogage.
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);
}
}
}
Remarques
Vous pouvez créer une instance de cette classe pour l’un des modules de reconnaissance vocale installés. Pour obtenir des informations sur les modules de reconnaissance installés, utilisez la méthode statique InstalledRecognizers .
Cette classe est destinée à exécuter des moteurs de reconnaissance vocale en cours et fournit un contrôle sur différents aspects de la reconnaissance vocale, comme suit :
Pour créer un module de reconnaissance vocale in-process, utilisez l’un SpeechRecognitionEngine des constructeurs.
Pour gérer les grammaires de reconnaissance vocale, utilisez les méthodes, les méthodes et UnloadAllGrammars les GrammarsLoadGrammarLoadGrammarAsyncUnloadGrammarméthodes.
Pour configurer l’entrée sur le module de reconnaissance, utilisez la méthode , le SetInputToAudioStream, SetInputToWaveFileSetInputToDefaultAudioDeviceSetInputToNullle ,SetInputToWaveStream
Pour effectuer la reconnaissance vocale, utilisez la ou RecognizeAsync la Recognize méthode.
Pour modifier la façon dont la reconnaissance gère le silence ou l’entrée inattendue, utilisez les propriétés, les propriétés et les BabbleTimeoutpropriétésInitialSilenceTimeoutEndSilenceTimeout.EndSilenceTimeoutAmbiguous
Pour modifier le nombre d’autres retours du module de reconnaissance, utilisez la MaxAlternates propriété. Le module de reconnaissance retourne des résultats de reconnaissance dans un RecognitionResult objet.
Pour synchroniser les modifications apportées au module de reconnaissance, utilisez la RequestRecognizerUpdate méthode. Le module de reconnaissance utilise plusieurs threads pour effectuer des tâches.
Pour émuler l’entrée dans le module de reconnaissance, utilisez les méthodes et EmulateRecognizeAsync les EmulateRecognize méthodes.
L’objet SpeechRecognitionEngine est destiné à l’utilisation unique du processus qui instanciait l’objet. En revanche, les SpeechRecognizer partages un seul module de reconnaissance avec n’importe quelle application qui souhaite l’utiliser.
Note
Appelez Dispose toujours avant de publier votre dernière référence au module de reconnaissance vocale. Sinon, les ressources qu’il utilise ne seront pas libérées tant que le garbage collector n’appelle pas la méthode de l’objet Finalize recognizer.
Constructeurs
| Nom | Description |
|---|---|
| SpeechRecognitionEngine() |
Initialise une nouvelle instance de la SpeechRecognitionEngine classe à l’aide du module de reconnaissance vocale par défaut pour le système. |
| SpeechRecognitionEngine(CultureInfo) |
Initialise une nouvelle instance de la classe à l’aide SpeechRecognitionEngine du module de reconnaissance vocale par défaut pour les paramètres régionaux spécifiés. |
| SpeechRecognitionEngine(RecognizerInfo) |
Initialise une nouvelle instance de l’utilisation SpeechRecognitionEngine des informations d’un RecognizerInfo objet pour spécifier le module de reconnaissance à utiliser. |
| SpeechRecognitionEngine(String) |
Initialise une nouvelle instance de la SpeechRecognitionEngine classe avec un paramètre de chaîne qui spécifie le nom du module de reconnaissance à utiliser. |
Propriétés
| Nom | Description |
|---|---|
| AudioFormat |
Obtient le format de l’audio reçu par le SpeechRecognitionEngine. |
| AudioLevel |
Obtient le niveau de l’audio reçu par le SpeechRecognitionEngine. |
| AudioPosition |
Obtient l’emplacement actuel du flux audio généré par l’appareil qui fournit une entrée au SpeechRecognitionEngineflux audio. |
| AudioState |
Obtient l’état de l’audio reçu par le SpeechRecognitionEngine. |
| BabbleTimeout |
Obtient ou définit l’intervalle de temps pendant lequel une SpeechRecognitionEngine entrée accepte uniquement le bruit d’arrière-plan, avant de finaliser la reconnaissance. |
| EndSilenceTimeout |
Obtient ou définit l’intervalle de silence que le SpeechRecognitionEngine sera accepter à la fin d’une entrée non ambiguë avant de finaliser une opération de reconnaissance. |
| EndSilenceTimeoutAmbiguous |
Obtient ou définit l’intervalle de silence accepté SpeechRecognitionEngine à la fin de l’entrée ambiguë avant de finaliser une opération de reconnaissance. |
| Grammars |
Obtient une collection des Grammar objets chargés dans cette SpeechRecognitionEngine instance. |
| InitialSilenceTimeout |
Obtient ou définit l’intervalle de temps pendant lequel une SpeechRecognitionEngine entrée accepte uniquement le silence avant de finaliser la reconnaissance. |
| MaxAlternates |
Obtient ou définit le nombre maximal de résultats de reconnaissance alternatifs retournés SpeechRecognitionEngine pour chaque opération de reconnaissance. |
| RecognizerAudioPosition |
Obtient l’emplacement actuel de l’entrée SpeechRecognitionEngine audio qu’il traite. |
| RecognizerInfo |
Obtient des informations sur l’instance actuelle de SpeechRecognitionEngine. |
Méthodes
| Nom | Description |
|---|---|
| Dispose() |
Supprime l’objet SpeechRecognitionEngine . |
| Dispose(Boolean) |
Supprime l’objet SpeechRecognitionEngine et libère les ressources utilisées pendant la session. |
| EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Émule l’entrée de mots spécifiques au module de reconnaissance vocale, en utilisant du texte à la place de l’audio pour la reconnaissance vocale synchrone et spécifie comment le module de reconnaissance vocale gère la comparaison Unicode entre les mots et les grammaires de reconnaissance vocale chargées. |
| EmulateRecognize(String, CompareOptions) |
Émule l’entrée d’une expression au module de reconnaissance vocale, en utilisant du texte à la place de l’audio pour la reconnaissance vocale synchrone et spécifie comment le module de reconnaissance vocale gère la comparaison Unicode entre l’expression et les grammaires de reconnaissance vocale chargées. |
| EmulateRecognize(String) |
Émule l’entrée d’une expression au module de reconnaissance vocale, en utilisant du texte à la place de l’audio pour la reconnaissance vocale synchrone. |
| EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Émule l’entrée de mots spécifiques au module de reconnaissance vocale, à l’aide d’un tableau d’objets RecognizedWordUnit à la place de l’audio pour la reconnaissance vocale asynchrone et spécifie comment le module de reconnaissance vocale gère la comparaison Unicode entre les mots et les grammaires de reconnaissance vocale chargées. |
| EmulateRecognizeAsync(String, CompareOptions) |
Émule l’entrée d’une expression au module de reconnaissance vocale, en utilisant du texte à la place de l’audio pour la reconnaissance vocale asynchrone et spécifie comment le module de reconnaissance vocale gère la comparaison Unicode entre l’expression et les grammaires de reconnaissance vocale chargées. |
| EmulateRecognizeAsync(String) |
Émule l’entrée d’une expression dans le module de reconnaissance vocale, en utilisant du texte à la place de l’audio pour la reconnaissance vocale asynchrone. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| InstalledRecognizers() |
Retourne des informations pour tous les modules de reconnaissance vocale installés sur le système actuel. |
| LoadGrammar(Grammar) |
Charge de façon synchrone un Grammar objet. |
| LoadGrammarAsync(Grammar) |
Charge de manière asynchrone une grammaire de reconnaissance vocale. |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| QueryRecognizerSetting(String) |
Retourne les valeurs des paramètres pour le module de reconnaissance. |
| 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é. |
| RecognizeAsync() |
Effectue une opération de reconnaissance vocale unique et asynchrone. |
| RecognizeAsync(RecognizeMode) |
Effectue une ou plusieurs opérations de reconnaissance vocale asynchrone. |
| RecognizeAsyncCancel() |
Met fin à la reconnaissance asynchrone sans attendre la fin de l’opération de reconnaissance actuelle. |
| RecognizeAsyncStop() |
Arrête la reconnaissance asynchrone une fois l’opération de reconnaissance actuelle terminée. |
| RequestRecognizerUpdate() |
Demande que le module de reconnaissance s’interrompt pour mettre à jour son état. |
| RequestRecognizerUpdate(Object, TimeSpan) |
Demande que le module de reconnaissance s’interrompt pour mettre à jour son état et fournit un décalage et un jeton utilisateur pour l’événement associé. |
| RequestRecognizerUpdate(Object) |
Demande que le module de reconnaissance s’interrompt pour mettre à jour son état et fournit un jeton utilisateur pour l’événement associé. |
| SetInputToAudioStream(Stream, SpeechAudioFormatInfo) |
Configure l’objet SpeechRecognitionEngine pour recevoir une entrée à partir d’un flux audio. |
| SetInputToDefaultAudioDevice() |
Configure l’objet SpeechRecognitionEngine pour recevoir l’entrée à partir de l’appareil audio par défaut. |
| SetInputToNull() |
Désactive l’entrée du module de reconnaissance vocale. |
| SetInputToWaveFile(String) |
Configure l’objet SpeechRecognitionEngine pour recevoir une entrée à partir d’un fichier de format audio Waveform (.wav). |
| SetInputToWaveStream(Stream) |
Configure l’objet SpeechRecognitionEngine pour recevoir une entrée à partir d’un flux qui contient des données de format audio Waveform (.wav). |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| UnloadAllGrammars() |
Décharge tous les Grammar objets du module de reconnaissance. |
| UnloadGrammar(Grammar) |
Décharge un objet spécifié Grammar de l’instance SpeechRecognitionEngine . |
| UpdateRecognizerSetting(String, Int32) |
Met à jour le paramètre spécifié pour la SpeechRecognitionEngine valeur entière spécifiée. |
| UpdateRecognizerSetting(String, String) |
Met à jour le paramètre du moteur de reconnaissance vocale spécifié avec la valeur de chaîne spécifiée. |
Événements
| Nom | Description |
|---|---|
| AudioLevelUpdated |
Déclenché lorsque le SpeechRecognitionEngine niveau de son entrée audio est signalé. |
| AudioSignalProblemOccurred |
Déclenché lorsque le SpeechRecognitionEngine signal audio détecte un problème. |
| AudioStateChanged |
Déclenché lorsque l’état change dans l’audio reçu par le SpeechRecognitionEngine. |
| EmulateRecognizeCompleted |
Déclenché lorsque le SpeechRecognitionEngine finalise une opération de reconnaissance asynchrone d’entrée émulée. |
| LoadGrammarCompleted |
Déclenché lorsque le SpeechRecognitionEngine chargement asynchrone d’un Grammar objet est terminé. |
| RecognizeCompleted |
Déclenché lors de la SpeechRecognitionEngine finalisation d’une opération de reconnaissance asynchrone. |
| RecognizerUpdateReached |
Déclenché lorsqu’une exécution SpeechRecognitionEngine s’interrompt pour accepter les modifications. |
| SpeechDetected |
Déclenché lorsque l’entrée SpeechRecognitionEngine détecte qu’elle peut identifier comme parole. |
| SpeechHypothesized |
Déclenché lorsqu’il SpeechRecognitionEngine a reconnu un mot ou des mots qui peuvent être un composant de plusieurs expressions complètes dans une grammaire. |
| SpeechRecognitionRejected |
Déclenché lorsque l’entrée SpeechRecognitionEngine reçoit qui ne correspond à aucun de ses objets chargés et activés Grammar . |
| SpeechRecognized |
Déclenché lorsque l’entrée SpeechRecognitionEngine reçoit qui correspond à l’un de ses objets chargés et activés Grammar . |