SpeechRecognitionEngine.Recognize Metod

Definition

Startar en synkron taligenkänningsåtgärd.

Överlagringar

Name Description
Recognize()

Utför en synkron taligenkänningsåtgärd.

Recognize(TimeSpan)

Utför en synkron taligenkänningsåtgärd med en angiven tidsgräns för inledande tystnad.

Kommentarer

Dessa metoder utför en enda synkron igenkänningsåtgärd. Identifieraren utför den här åtgärden mot den inlästa och aktiverade grammatiken för taligenkänning.

Under ett anrop till den här metoden kan identifieraren generera följande händelser:

Identifieraren RecognizeCompleted genererar inte händelsen när någon av Recognize metoderna används.

Metoderna Recognize returnerar ett RecognitionResult objekt, eller null om åtgärden inte lyckas eller om identifieraren inte är aktiverad.

En synkron igenkänningsåtgärd kan misslyckas av följande skäl:

  • Tal identifieras inte innan tidsgränsintervallen upphör att gälla för BabbleTimeout egenskaperna eller InitialSilenceTimeout eller för initialSilenceTimeout metodens Recognize parameter.

  • Igenkänningsmotorn identifierar tal men hittar inga matchningar i något av dess inlästa och aktiverade Grammar objekt.

Om du vill ändra hur identifieraren hanterar tidpunkten för tal eller tystnad med avseende på igenkänning använder du BabbleTimeoutegenskaperna , InitialSilenceTimeout, EndSilenceTimeoutoch EndSilenceTimeoutAmbiguous .

SpeechRecognitionEngine Måste ha minst ett Grammar objekt inläst innan igenkänningen utförs. Om du vill läsa in en grammatik för taligenkänning använder du LoadGrammar metoden eller LoadGrammarAsync .

Använd någon av metoderna för RecognizeAsync att utföra asynkron igenkänning.

Recognize()

Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs

Utför en synkron taligenkänningsåtgärd.

public:
 System::Speech::Recognition::RecognitionResult ^ Recognize();
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

Returer

Igenkänningsresultatet för indata, eller null om åtgärden inte lyckas eller om identifieraren inte är aktiverad.

Exempel

I följande exempel visas en del av ett konsolprogram som visar grundläggande taligenkänning. Exemplet skapar en DictationGrammar, läser in den i en in-process taligenkänning och utför en igenkänningsåtgärd.

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();
    }
  }
}

Kommentarer

Den här metoden utför en enda igenkänningsåtgärd. Identifieraren utför den här åtgärden mot den inlästa och aktiverade grammatiken för taligenkänning.

Under ett anrop till den här metoden kan identifieraren generera följande händelser:

Identifieraren RecognizeCompleted genererar inte händelsen när den här metoden används.

Metoden Recognize() returnerar ett RecognitionResult objekt eller null om åtgärden inte lyckas.

En synkron igenkänningsåtgärd kan misslyckas av följande skäl:

  • Tal identifieras inte innan tidsgränsintervallen upphör att gälla för BabbleTimeout egenskaperna eller InitialSilenceTimeout .

  • Igenkänningsmotorn identifierar tal men hittar inga matchningar i något av dess inlästa och aktiverade Grammar objekt.

Använd någon av metoderna för RecognizeAsync att utföra asynkron igenkänning.

Se även

Gäller för

Recognize(TimeSpan)

Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs
Källa:
SpeechRecognitionEngine.cs

Utför en synkron taligenkänningsåtgärd med en angiven tidsgräns för inledande tystnad.

public:
 System::Speech::Recognition::RecognitionResult ^ Recognize(TimeSpan initialSilenceTimeout);
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

Parametrar

initialSilenceTimeout
TimeSpan

Tidsintervallet som en taligenkänning accepterar indata som endast innehåller tystnad innan igenkänningen slutförs.

Returer

Igenkänningsresultatet för indata, eller null om åtgärden inte lyckas eller om identifieraren inte är aktiverad.

Exempel

I följande exempel visas en del av ett konsolprogram som visar grundläggande taligenkänning. Exemplet skapar en DictationGrammar, läser in den i en in-process taligenkänning och utför en igenkänningsåtgärd.

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();
    }
  }
}

Kommentarer

Om taligenkänningsmotorn identifierar tal inom det tidsintervall som anges av initialSilenceTimeout argumentet utför Recognize(TimeSpan) du en enda igenkänningsåtgärd och avslutar sedan. Parametern initialSilenceTimeout ersätter identifierarens InitialSilenceTimeout egenskap.

Under ett anrop till den här metoden kan identifieraren generera följande händelser:

Identifieraren RecognizeCompleted genererar inte händelsen när den här metoden används.

Metoden Recognize() returnerar ett RecognitionResult objekt eller null om åtgärden inte lyckas.

En synkron igenkänningsåtgärd kan misslyckas av följande skäl:

  • Tal identifieras inte innan tidsgränsintervallen upphör att gälla för parametern BabbleTimeout eller initialSilenceTimeout .

  • Igenkänningsmotorn identifierar tal men hittar inga matchningar i något av dess inlästa och aktiverade Grammar objekt.

Använd någon av metoderna för RecognizeAsync att utföra asynkron igenkänning.

Se även

Gäller för