SpeechRecognizer Klas

Definitie

Biedt toegang tot de gedeelde spraakherkenningsservice die beschikbaar is op het Windows desktop.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
Overname
SpeechRecognizer
Implementeringen

Voorbeelden

Het volgende voorbeeld maakt deel uit van een consoletoepassing die een grammatica van spraakherkenning laadt en asynchrone geëmuleerde invoer demonstreert, de bijbehorende herkenningsresultaten en de bijbehorende gebeurtenissen die door de spraakherkenning worden gegenereerd. Als Windows Spraakherkenning niet wordt uitgevoerd, wordt het starten van deze toepassing ook gestart Windows Spraakherkenning. Als Windows Spraakherkenning de status Sleeping heeft, retourneert EmulateRecognizeAsync altijd null.

using System;
using System.Speech.Recognition;
using System.Threading;

namespace SharedRecognizer
{
  class Program
  {

    // Indicate whether the asynchronous emulate recognition
    // operation has completed.
    static bool completed;

    static void Main(string[] args)
    {

      // Initialize an instance of the shared recognizer.
      using (SpeechRecognizer recognizer = new SpeechRecognizer())
      {

        // Create and load a sample grammar.
        Grammar testGrammar =
          new Grammar(new GrammarBuilder("testing testing"));
        testGrammar.Name = "Test Grammar";
        recognizer.LoadGrammar(testGrammar);

        // Attach event handlers for recognition events.
        recognizer.SpeechRecognized +=
          new EventHandler<SpeechRecognizedEventArgs>(
            SpeechRecognizedHandler);
        recognizer.EmulateRecognizeCompleted +=
          new EventHandler<EmulateRecognizeCompletedEventArgs>(
            EmulateRecognizeCompletedHandler);

        completed = false;

        // Start asynchronous emulated recognition.
        // This matches the grammar and generates a SpeechRecognized event.
        recognizer.EmulateRecognizeAsync("testing testing");

        // Wait for the asynchronous operation to complete.
        while (!completed)
        {
          Thread.Sleep(333);
        }

        completed = false;

        // Start asynchronous emulated recognition.
        // This does not match the grammar or generate a SpeechRecognized event.
        recognizer.EmulateRecognizeAsync("testing one two three");

        // Wait for the asynchronous operation to complete.
        while (!completed)
        {
          Thread.Sleep(333);
        }
      }

      Console.WriteLine();
      Console.WriteLine("Press any key to exit...");
      Console.ReadKey();
    }

    // Handle the SpeechRecognized event.
    static void SpeechRecognizedHandler(
      object sender, SpeechRecognizedEventArgs e)
    {
      if (e.Result != null)
      {
        Console.WriteLine("Recognition result = {0}",
          e.Result.Text ?? "<no text>");
      }
      else
      {
        Console.WriteLine("No recognition result");
      }
    }

    // Handle the SpeechRecognizeCompleted event.
    static void EmulateRecognizeCompletedHandler(
      object sender, EmulateRecognizeCompletedEventArgs e)
    {
      if (e.Result == null)
      {
        Console.WriteLine("No result generated.");
      }

      // Indicate the asynchronous operation is complete.
      completed = true;
    }
  }
}

Opmerkingen

Toepassingen gebruiken de shared recognizer voor toegang tot Windows spraakherkenning. Gebruik het object SpeechRecognizer om toe te voegen aan de Windows spraakgebruikerservaring.

Deze klasse biedt controle over verschillende aspecten van het spraakherkenningsproces:

De configuratie van Windows Spraakherkenning wordt beheerd door het dialoogvenster Speech Properties in het dialoogvenster Configuratiescherm. Deze interface wordt gebruikt voor het selecteren van de standaard-engine voor spraakherkenning op het bureaublad, het audio-invoerapparaat en het slaapstandgedrag van spraakherkenning. Als de configuratie van Windows Spraakherkenning wordt gewijzigd terwijl de toepassing wordt uitgevoerd (bijvoorbeeld als spraakherkenning is uitgeschakeld of de invoertaal wordt gewijzigd), is de wijziging van invloed op alle SpeechRecognizer-objecten.

Als u een in-process spraakherkenning wilt maken die onafhankelijk is van Windows Spraakherkenning, gebruikt u de klasse SpeechRecognitionEngine.

Note

Roep altijd aan Dispose voordat u uw laatste verwijzing naar de spraakherkenning loslaat. Anders worden de resources die het gebruikt niet vrijgemaakt totdat de garbagecollector de methode van Finalize het recognizer-object aanroept.

Constructors

Name Description
SpeechRecognizer()

Initialiseert een nieuw exemplaar van de SpeechRecognizer klasse.

Eigenschappen

Name Description
AudioFormat

Hiermee haalt u de indeling op van de audio die wordt ontvangen door de spraakherkenning.

AudioLevel

Hiermee haalt u het niveau op van de audio die wordt ontvangen door de spraakherkenning.

AudioPosition

Hiermee haalt u de huidige locatie op in de audiostream die wordt gegenereerd door het apparaat dat invoer levert aan de spraakherkenning.

AudioState

Hiermee haalt u de status op van de audio die wordt ontvangen door de spraakherkenning.

Enabled

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of dit SpeechRecognizer object gereed is voor het verwerken van spraak.

Grammars

Hiermee haalt u een verzameling van de Grammar objecten op die in dit SpeechRecognizer exemplaar worden geladen.

MaxAlternates

Hiermee wordt het maximum aantal alternatieve herkenningsresultaten opgehaald of ingesteld dat de shared recognizer retourneert voor elke herkenningsbewerking.

PauseRecognizerOnRecognition

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de shared recognizer herkenningsbewerkingen onderbreekt terwijl een toepassing een SpeechRecognized gebeurtenis verwerkt.

RecognizerAudioPosition

Hiermee haalt u de huidige locatie van de recognizer op in de audio-invoer die wordt verwerkt.

RecognizerInfo

Hiermee haalt u informatie op over de gedeelde spraakherkenning.

State

Hiermee haalt u de status van een SpeechRecognizer object op.

Methoden

Name Description
Dispose()

Hiermee wordt het SpeechRecognizer object verwijderd.

Dispose(Boolean)

Hiermee verwijdert u het SpeechRecognizer object en verwijdert u resources die tijdens de sessie worden gebruikt.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Emulatie van invoer van specifieke woorden aan de gedeelde spraakherkenning, waarbij tekst wordt gebruikt in plaats van audio voor synchrone spraakherkenning en wordt aangegeven hoe de recognizer Unicode-vergelijking tussen de woorden en de geladen grammatica voor spraakherkenning verwerkt.

EmulateRecognize(String, CompareOptions)

Emulatie van invoer van een woordgroep aan de gedeelde spraakherkenning, waarbij tekst wordt gebruikt in plaats van audio voor synchrone spraakherkenning en wordt aangegeven hoe de recognizer Unicode-vergelijking tussen de woordgroep en de geladen grammatica voor spraakherkenning verwerkt.

EmulateRecognize(String)

Emulatie van invoer van een woordgroep aan de gedeelde spraakherkenning, waarbij tekst wordt gebruikt in plaats van audio voor synchrone spraakherkenning.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emulatie van invoer van specifieke woorden aan de gedeelde spraakherkenning, waarbij tekst wordt gebruikt in plaats van audio voor asynchrone spraakherkenning en wordt aangegeven hoe de recognizer Unicode-vergelijking verwerkt tussen de woorden en de geladen grammatica voor spraakherkenning.

EmulateRecognizeAsync(String, CompareOptions)

Emulatie van invoer van een woordgroep voor de gedeelde spraakherkenning, met behulp van tekst in plaats van audio voor asynchrone spraakherkenning en geeft aan hoe de recognizer Unicode-vergelijking tussen de woordgroep en de geladen grammatica's voor spraakherkenning verwerkt.

EmulateRecognizeAsync(String)

Emulatie van invoer van een woordgroep aan de gedeelde spraakherkenning, waarbij tekst wordt gebruikt in plaats van audio voor asynchrone spraakherkenning.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
LoadGrammar(Grammar)

Laadt een grammatica voor spraakherkenning.

LoadGrammarAsync(Grammar)

Asynchroon laadt een grammatica voor spraakherkenning.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
RequestRecognizerUpdate()

Hiermee wordt aangevraagd dat de gedeelde recognizer de status ervan onderbreekt en bijwerkt.

RequestRecognizerUpdate(Object, TimeSpan)

Aanvragen die de status van de gedeelde recognizer onderbreken en bijwerken en een offset en een gebruikerstoken voor de bijbehorende gebeurtenis bieden.

RequestRecognizerUpdate(Object)

Aanvragen die de gedeelde recognizer onderbreken en de status ervan bijwerken en een gebruikerstoken voor de bijbehorende gebeurtenis bieden.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)
UnloadAllGrammars()

Hiermee worden alle grammatica's voor spraakherkenning uit de gedeelde herkenning verwijderd.

UnloadGrammar(Grammar)

Hiermee wordt een opgegeven grammatica voor spraakherkenning van de gedeelde herkenning verwijderd.

gebeurtenis

Name Description
AudioLevelUpdated

Treedt op wanneer de shared recognizer het niveau van de audio-invoer rapporteert.

AudioSignalProblemOccurred

Treedt op wanneer de recognizer een probleem ondervindt in het audiosignaal.

AudioStateChanged

Treedt op wanneer de status verandert in de audio die wordt ontvangen door de recognizer.

EmulateRecognizeCompleted

Treedt op wanneer de shared recognizer een asynchrone herkenningsbewerking voor geëmuleerde invoer voltooit.

LoadGrammarCompleted

Treedt op wanneer de recognizer klaar is met het asynchrone laden van een grammatica voor spraakherkenning.

RecognizerUpdateReached

Treedt op wanneer de recognizer pauzeert om herkenning en andere bewerkingen te synchroniseren.

SpeechDetected

Treedt op wanneer de recognizer invoer detecteert die als spraak kan worden geïdentificeerd.

SpeechHypothesized

Treedt op wanneer de recognizer een woord of woorden heeft herkend die een onderdeel kunnen zijn van meerdere volledige woordgroepen in een grammatica.

SpeechRecognitionRejected

Treedt op wanneer de recognizer invoer ontvangt die niet overeenkomt met een van de grammatica's voor spraakherkenning die is geladen.

SpeechRecognized

Treedt op wanneer de recognizer invoer ontvangt die overeenkomt met een van de grammatica's voor spraakherkenning.

StateChanged

Treedt op wanneer de actieve status van de Windows engine voor spraaktechnologie wordt gewijzigd.

Van toepassing op

Zie ook