SpeechRecognizer Sınıf

Tanım

Windows masaüstünde bulunan paylaşılan konuşma tanıma hizmetine erişim sağlar.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
Devralma
SpeechRecognizer
Uygulamalar

Örnekler

Aşağıdaki örnek, konuşma tanıma dil bilgisini yükleyen ve zaman uyumsuz öykünülmüş girişi, ilişkili tanıma sonuçlarını ve konuşma tanıyıcı tarafından tetiklenen ilişkili olayları gösteren bir konsol uygulamasının parçasıdır. Windows Konuşma Tanıma çalışmıyorsa, bu uygulamanın başlatılması Windows Konuşma Tanıma'yı da başlatır. Windows Konuşma Tanıma Uyku durumundaysa her EmulateRecognizeAsync zaman null döndürür.

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

Açıklamalar

Uygulamalar, Windows Konuşma Tanıma'ya erişmek için paylaşılan tanıyıcıyı kullanır. SpeechRecognizer Windows konuşma kullanıcı deneyimine eklemek için nesnesini kullanın.

Bu sınıf, konuşma tanıma işleminin çeşitli yönleri üzerinde denetim sağlar:

Windows Konuşma Tanıma yapılandırması, Denetim MasasıKonuşma Özellikleri iletişim kutusunun kullanımıyla yönetilir. Bu arabirim, varsayılan masaüstü konuşma tanıma altyapısını ve dilini, ses giriş cihazını ve konuşma tanımanın uyku davranışını seçmek için kullanılır. Uygulama çalışırken Windows Konuşma Tanıma yapılandırması değiştirilirse (örneğin, konuşma tanıma devre dışı bırakılırsa veya giriş dili değiştirilirse), değişiklik tüm SpeechRecognizer nesneleri etkiler.

Windows Konuşma Tanıma'nın bağımsız bir işlem içi konuşma tanıyıcısı oluşturmak için sınıfını SpeechRecognitionEngine kullanın.

Not

Konuşma tanımaya son başvurunuzu yayınlamadan önce her zaman arayın Dispose . Aksi takdirde, çöp toplayıcı, tanıyıcı nesnesinin Finalize yöntemini çağırana kadar kullandığı kaynaklar serbest kalır.

Oluşturucular

SpeechRecognizer()

SpeechRecognizer sınıfının yeni bir örneğini başlatır.

Özellikler

AudioFormat

Konuşma tanıyıcı tarafından alınan sesin biçimini alır.

AudioLevel

Konuşma tanıyıcı tarafından alınan ses düzeyini alır.

AudioPosition

Konuşma tanımaya giriş sağlayan cihaz tarafından oluşturulan ses akışındaki geçerli konumu alır.

AudioState

Konuşma tanıyıcı tarafından alınan sesin durumunu alır.

Enabled

Bu SpeechRecognizer nesnenin konuşmayı işlemeye hazır olup olmadığını belirten bir değer alır veya ayarlar.

Grammars

Bu SpeechRecognizer örnekte yüklenen nesnelerin koleksiyonunu Grammar alır.

MaxAlternates

Paylaşılan tanıyıcının her tanıma işlemi için döndürdüğü en fazla alternatif tanıma sonucunu alır veya ayarlar.

PauseRecognizerOnRecognition

Bir uygulama bir olayı işlerken paylaşılan tanıyıcının tanıma işlemlerini duraklatıp duraklatmadığını belirten bir SpeechRecognized değer alır veya ayarlar.

RecognizerAudioPosition

Tanıyıcının işlemekte olduğu ses girişindeki geçerli konumunu alır.

RecognizerInfo

Paylaşılan konuşma tanıma hakkında bilgi alır.

State

Bir SpeechRecognizer nesnenin durumunu alır.

Yöntemler

Dispose()

Nesnesini atar SpeechRecognizer .

Dispose(Boolean)

Nesnesini atar SpeechRecognizer ve oturum sırasında kullanılan kaynakları serbest bırakır.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Zaman uyumlu konuşma tanıma için ses yerine metin kullanarak, paylaşılan konuşma tanıyıcısına belirli sözcüklerin girişini öyküner ve tanıyıcının sözcüklerle yüklenen konuşma tanıma dil bilgileri arasındaki Unicode karşılaştırmasını nasıl işlediğini belirtir.

EmulateRecognize(String)

Bir tümceciği paylaşılan konuşma tanımaya öykünerek, zaman uyumlu konuşma tanıma için ses yerine metin kullanır.

EmulateRecognize(String, CompareOptions)

Bir tümceciği paylaşılan konuşma tanımaya öykünerek, zaman uyumlu konuşma tanıma için ses yerine metin kullanır ve tanıyıcının tümcecikle yüklenen konuşma tanıma dil bilgisi arasındaki Unicode karşılaştırmasını nasıl işlediğini belirtir.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Zaman uyumsuz konuşma tanıma için ses yerine metin kullanarak, paylaşılan konuşma tanıyıcısına belirli sözcüklerin girişini öyküner ve tanıyıcının sözcüklerle yüklenen konuşma tanıma dil bilgileri arasındaki Unicode karşılaştırmasını nasıl işlediğini belirtir.

EmulateRecognizeAsync(String)

Zaman uyumsuz konuşma tanıma için ses yerine metin kullanarak bir tümceciği paylaşılan konuşma tanıyıcısına öyküner.

EmulateRecognizeAsync(String, CompareOptions)

Zaman uyumsuz konuşma tanıma için ses yerine metin kullanarak bir tümceciği paylaşılan konuşma tanıyıcısına öyküner ve tanıyıcının tümcecikle yüklenen konuşma tanıma dil bilgisi arasındaki Unicode karşılaştırmasını nasıl işlediğini belirtir.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
LoadGrammar(Grammar)

Konuşma tanıma dil bilgisini yükler.

LoadGrammarAsync(Grammar)

Konuşma tanıma dil bilgisini zaman uyumsuz olarak yükler.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
RequestRecognizerUpdate()

Paylaşılan tanıyıcının durumunu duraklatıp güncelleştirmesini istemektedir.

RequestRecognizerUpdate(Object)

Paylaşılan tanıyıcının durumunu duraklatıp güncelleştirmesini ve ilişkili olay için bir kullanıcı belirteci sağlamasını istemektedir.

RequestRecognizerUpdate(Object, TimeSpan)

Paylaşılan tanıyıcının durumunu duraklatıp güncelleştirmesini ve ilişkili olay için bir uzaklık ve kullanıcı belirteci sağlamasını istemektedir.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
UnloadAllGrammars()

Paylaşılan tanıyıcıdan tüm konuşma tanıma dil bilgisini kaldırır.

UnloadGrammar(Grammar)

Belirtilen konuşma tanıma dil bilgisini paylaşılan tanıyıcıdan kaldırır.

Ekinlikler

AudioLevelUpdated

Paylaşılan tanıyıcı ses girişinin düzeyini bildirdiğinde gerçekleşir.

AudioSignalProblemOccurred

Tanıyıcı ses sinyalinde bir sorunla karşılaştığında oluşur.

AudioStateChanged

Tanıyıcı tarafından alınan seste durum değiştiğinde gerçekleşir.

EmulateRecognizeCompleted

Paylaşılan tanıyıcı öykünülmüş giriş için zaman uyumsuz bir tanıma işlemini sonlandırdığında gerçekleşir.

LoadGrammarCompleted

Tanıyıcı, konuşma tanıma dil bilgisinin zaman uyumsuz yüklemesini tamamladığında gerçekleşir.

RecognizerUpdateReached

Tanıma ve diğer işlemleri eşitlemek için tanıyıcı durakladığında gerçekleşir.

SpeechDetected

Tanıyıcı konuşma olarak tanımlayabildiği girişi algıladığında gerçekleşir.

SpeechHypothesized

Tanıyıcı, bir dil bilgisindeki birden çok tam tümceciği bileşeni olabilecek bir sözcüğü veya sözcükleri tanıdığında gerçekleşir.

SpeechRecognitionRejected

Tanıyıcı, yüklediği konuşma tanıma dil bilgisi ile eşleşmeyen bir giriş aldığında gerçekleşir.

SpeechRecognized

Tanıyıcı, konuşma tanıma dil bilgisi ile eşleşen girdileri aldığında gerçekleşir.

StateChanged

Windows Masaüstü Konuşma Teknolojisi tanıma altyapısının çalışma durumu değiştiğinde gerçekleşir.

Şunlara uygulanır

Ayrıca bkz.