SpeechRecognitionEngine.Recognize Yöntem

Tanım

Zaman uyumlu bir konuşma tanıma işlemi başlatır.

Aşırı Yüklemeler

Recognize()

Zaman uyumlu konuşma tanıma işlemi gerçekleştirir.

Recognize(TimeSpan)

Belirtilen ilk sessizlik zaman aşımı süresiyle zaman uyumlu bir konuşma tanıma işlemi gerçekleştirir.

Açıklamalar

Bu yöntemler tek bir zaman uyumlu tanıma işlemi gerçekleştirir. Tanıyıcı, bu işlemi yüklü ve etkin konuşma tanıma dil bilgilerine karşı gerçekleştirir.

Bu yönteme yapılan bir çağrı sırasında, tanıyıcı aşağıdaki olayları tetikleyebilir:

Tanıyıcı yöntemlerden birini Recognize kullanırken olayı tetiklemiyorRecognizeCompleted.

Yöntemler Recognize bir RecognitionResult nesne döndürür veya null işlem başarılı olmazsa veya tanıyıcı etkinleştirilmemişse.

Zaman uyumlu tanıma işlemi aşağıdaki nedenlerle başarısız olabilir:

  • veya InitialSilenceTimeout özellikleri için veya initialSilenceTimeout yönteminin parametresi Recognize için BabbleTimeout zaman aşımı aralıklarının süresi dolmadan önce konuşma algılanmaz.

  • Tanıma altyapısı konuşmayı algılar ancak yüklü ve etkin Grammar nesnelerinden hiçbirinde eşleşme bulmaz.

Tanıyıcının tanıma açısından konuşma veya sessizlik zamanlamasını işleme biçimini değiştirmek için , InitialSilenceTimeout, EndSilenceTimeoutve EndSilenceTimeoutAmbiguous özelliklerini kullanınBabbleTimeout.

SpeechRecognitionEngine tanıma gerçekleştirmeden önce en az bir Grammar nesne yüklenmiş olmalıdır. Konuşma tanıma dil bilgisini yüklemek için veya LoadGrammarAsync yöntemini kullanınLoadGrammar.

Zaman uyumsuz tanıma gerçekleştirmek için yöntemlerden birini RecognizeAsync kullanın.

Recognize()

Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs

Zaman uyumlu konuşma tanıma işlemi gerçekleştirir.

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

Döndürülenler

Girişin tanıma sonucu veya null işlem başarılı olmazsa veya tanıyıcı etkinleştirilmediyse.

Örnekler

Aşağıdaki örnek, temel konuşma tanımayı gösteren bir konsol uygulamasının bölümünü gösterir. Örnek, bir DictationGrammaroluşturur, bunu işlem içi konuşma tanıyıcısına yükler ve bir tanıma işlemi gerçekleştirir.

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

Açıklamalar

Bu yöntem tek bir tanıma işlemi gerçekleştirir. Tanıyıcı, bu işlemi yüklü ve etkin konuşma tanıma dil bilgilerine karşı gerçekleştirir.

Bu yönteme yapılan bir çağrı sırasında, tanıyıcı aşağıdaki olayları tetikleyebilir:

Bu yöntem kullanılırken tanıyıcı olayı tetiklemiyor RecognizeCompleted .

Recognize() yöntemi bir RecognitionResult nesne döndürür veya null işlem başarılı olmazsa.

Zaman uyumlu tanıma işlemi aşağıdaki nedenlerle başarısız olabilir:

  • veya InitialSilenceTimeout özellikleri için BabbleTimeout zaman aşımı aralıklarının süresi dolmadan önce konuşma algılanmaz.

  • Tanıma altyapısı konuşmayı algılar ancak yüklü ve etkin Grammar nesnelerinden hiçbirinde eşleşme bulmaz.

Zaman uyumsuz tanıma gerçekleştirmek için yöntemlerden birini RecognizeAsync kullanın.

Ayrıca bkz.

Şunlara uygulanır

Recognize(TimeSpan)

Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs

Belirtilen ilk sessizlik zaman aşımı süresiyle zaman uyumlu bir konuşma tanıma işlemi gerçekleştirir.

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

Parametreler

initialSilenceTimeout
TimeSpan

Konuşma tanıyıcısının tanımayı sonlandırmadan önce yalnızca sessizlik içeren girişi kabul etme süresi.

Döndürülenler

Girişin tanıma sonucu veya null işlem başarılı olmazsa veya tanıyıcı etkinleştirilmediyse.

Örnekler

Aşağıdaki örnek, temel konuşma tanımayı gösteren bir konsol uygulamasının bölümünü gösterir. Örnek, bir DictationGrammaroluşturur, bunu işlem içi konuşma tanıyıcısına yükler ve bir tanıma işlemi gerçekleştirir.

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

Açıklamalar

Konuşma tanıma altyapısı, konuşmayı bağımsız değişken tarafından initialSilenceTimeout belirtilen zaman aralığı içinde algılarsa, Recognize(TimeSpan) tek bir tanıma işlemi gerçekleştirir ve sonra sonlandırır. initialSilenceTimeout parametresi, tanıyıcının InitialSilenceTimeout özelliğinin yerini alır.

Bu yönteme yapılan bir çağrı sırasında, tanıyıcı aşağıdaki olayları tetikleyebilir:

Bu yöntem kullanılırken tanıyıcı olayı tetiklemiyor RecognizeCompleted .

Recognize() yöntemi bir RecognitionResult nesne döndürür veya null işlem başarılı olmazsa.

Zaman uyumlu tanıma işlemi aşağıdaki nedenlerle başarısız olabilir:

  • veya parametresi için BabbleTimeoutinitialSilenceTimeout zaman aşımı aralıklarının süresi dolmadan önce konuşma algılanmaz.

  • Tanıma altyapısı konuşmayı algılar ancak yüklü ve etkin Grammar nesnelerinden hiçbirinde eşleşme bulmaz.

Zaman uyumsuz tanıma gerçekleştirmek için yöntemlerden birini RecognizeAsync kullanın.

Ayrıca bkz.

Şunlara uygulanır