SpeechRecognitionEngine.Recognize Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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:
SpeechDetected. Tanıyıcı konuşma olarak tanımlayabildiği girişi algıladığında tetikler.
SpeechHypothesized. Giriş, etkin dil bilgilerinden biriyle belirsiz bir eşleşme oluşturduğunda oluşturulur.
SpeechRecognitionRejected veya SpeechRecognized. Tanıyıcı bir tanıma işlemini sonlandırdığında oluşturulur.
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
- 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:
SpeechDetected. Tanıyıcı konuşma olarak tanımlayabildiği girişi algıladığında tetikler.
SpeechHypothesized. Giriş, etkin dil bilgilerinden biriyle belirsiz bir eşleşme oluşturduğunda oluşturulur.
SpeechRecognitionRejected veya SpeechRecognized. Tanıyıcı bir tanıma işlemini sonlandırdığında oluşturulur.
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.
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)
Şunlara uygulanır
Recognize(TimeSpan)
- Kaynak:
- SpeechRecognitionEngine.cs
- 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:
SpeechDetected. Tanıyıcı konuşma olarak tanımlayabildiği girişi algıladığında tetikler.
SpeechHypothesized. Giriş, etkin dil bilgilerinden biriyle belirsiz bir eşleşme oluşturduğunda oluşturulur.
SpeechRecognitionRejected veya SpeechRecognized. Tanıyıcı bir tanıma işlemini sonlandırdığında oluşturulur.
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 BabbleTimeout
initialSilenceTimeout
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.
- BabbleTimeout
- InitialSilenceTimeout
- EndSilenceTimeout
- EndSilenceTimeoutAmbiguous
- SpeechDetected
- SpeechHypothesized
- SpeechRecognitionRejected
- SpeechRecognized
- RecognizeAsync()
- EmulateRecognize(String)