SpeechRecognitionEngine.RequestRecognizerUpdate Yöntem

Tanım

Tanıyıcının durumunu güncelleştirmek için duraklatma isteğinde bulunur.

Aşırı Yüklemeler

RequestRecognizerUpdate(Object, TimeSpan)

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

RequestRecognizerUpdate(Object)

Tanıyıcının durumunu güncelleştirmek için duraklamasını ve ilişkili olay için bir kullanıcı belirteci sağlamasını istemektedir.

RequestRecognizerUpdate()

Tanıyıcının durumunu güncelleştirmek için duraklatma isteğinde bulunur.

Açıklamalar

Değişiklikleri tanıyıcıya eşitlemek için bu yöntemi kullanın. Örneğin, tanıyıcı girişi işlerken konuşma tanıma dil bilgisini yükler veya kaldırırsanız, uygulama davranışınızı tanıyıcının durumuyla eşitlemek için bu yöntemi ve RecognizerUpdateReached olayı kullanın.

Bu yöntem çağrıldığında, tanıyıcı zaman uyumsuz işlemleri duraklatır veya tamamlar ve bir RecognizerUpdateReached olay oluşturur. Daha sonra bir RecognizerUpdateReached olay işleyicisi tanıma işlemleri arasındaki tanıyıcının durumunu değiştirebilir. Olayları işlerken RecognizerUpdateReached , olay işleyicisi dönene kadar tanıyıcı duraklatılır.

Not

Tanıyıcının girişi, tanıyıcı olayı tetiklemeden RecognizerUpdateReached önce değiştirilirse istek atılır.

Bu yöntem çağrıldığında:

  • Tanıyıcı girişi işlemezse, tanıyıcı hemen olayı oluşturur RecognizerUpdateReached .

  • Tanıyıcı sessizlik veya arka plan gürültüsünden oluşan girişi işliyorsa, tanıyıcı tanıma işlemini duraklatır ve olayı oluşturur RecognizerUpdateReached .

  • Tanıyıcı sessizlik veya arka plan gürültüsünden oluşmayan girişleri işliyorsa, tanıyıcı tanıma işlemini tamamlar ve ardından olayı oluşturur RecognizerUpdateReached .

Tanıyıcı olayı işlerken RecognizerUpdateReached :

  • Tanıyıcı girişi işlemez ve özelliğin RecognizerAudioPosition değeri aynı kalır.

  • Tanıyıcı giriş toplamaya devam eder ve özelliğin AudioPosition değeri değişebilir.

RequestRecognizerUpdate(Object, TimeSpan)

Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs

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

public:
 void RequestRecognizerUpdate(System::Object ^ userToken, TimeSpan audioPositionAheadToRaiseUpdate);
public void RequestRecognizerUpdate (object userToken, TimeSpan audioPositionAheadToRaiseUpdate);
member this.RequestRecognizerUpdate : obj * TimeSpan -> unit
Public Sub RequestRecognizerUpdate (userToken As Object, audioPositionAheadToRaiseUpdate As TimeSpan)

Parametreler

userToken
Object

İşlemin bilgilerini içeren kullanıcı tanımlı bilgiler.

audioPositionAheadToRaiseUpdate
TimeSpan

İsteği geciktirmek için geçerli AudioPosition uzaklık.

Açıklamalar

Tanıyıcı, tanıyıcının geçerli AudioPosition artı audioPositionAheadToRaiseUpdatedeğerine eşit olana kadar tanıyıcı RecognizerAudioPosition güncelleştirme isteğini başlatmaz.

Tanıyıcı olayı oluşturduğunda RecognizerUpdateReached , UserToken özelliğinin RecognizerUpdateReachedEventArgs özelliği parametresinin userToken değerini içerir.

Ayrıca bkz.

Şunlara uygulanır

RequestRecognizerUpdate(Object)

Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs

Tanıyıcının durumunu güncelleştirmek için duraklamasını ve ilişkili olay için bir kullanıcı belirteci sağlamasını istemektedir.

public:
 void RequestRecognizerUpdate(System::Object ^ userToken);
public void RequestRecognizerUpdate (object userToken);
member this.RequestRecognizerUpdate : obj -> unit
Public Sub RequestRecognizerUpdate (userToken As Object)

Parametreler

userToken
Object

İşlemin bilgilerini içeren kullanıcı tanımlı bilgiler.

Açıklamalar

Tanıyıcı olayı oluşturduğunda RecognizerUpdateReached , UserToken özelliğinin RecognizerUpdateReachedEventArgs özelliği parametresinin userToken değerini içerir.

Ses konumu uzaklığını belirtmek için yöntemini kullanın RequestRecognizerUpdate .

Ayrıca bkz.

Şunlara uygulanır

RequestRecognizerUpdate()

Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs
Kaynak:
SpeechRecognitionEngine.cs

Tanıyıcının durumunu güncelleştirmek için duraklatma isteğinde bulunur.

public:
 void RequestRecognizerUpdate();
public void RequestRecognizerUpdate ();
member this.RequestRecognizerUpdate : unit -> unit
Public Sub RequestRecognizerUpdate ()

Örnekler

Aşağıdaki örnekte nesneleri yükleyen ve kaldıran bir konsol uygulaması gösterilmektedir Grammar . Uygulama, konuşma tanıma altyapısının RequestRecognizerUpdate bir güncelleştirme alabilmesi için duraklatma isteğinde bulunmak için yöntemini kullanır. Uygulama daha sonra bir Grammar nesneyi yükler veya kaldırır.

Her güncelleştirmede, olay işleyicisi RecognizerUpdateReached o anda yüklü Grammar olan nesnelerin adını ve durumunu konsola yazar. Dil bilgisi yüklendikçe ve kaldırıldıkçe, uygulama önce çiftlik hayvanlarının adlarını, ardından çiftlik hayvanlarının adlarını ve meyvelerin adlarını, ardından yalnızca meyvelerin adlarını tanır.

using System;  
using System.Speech.Recognition;  
using System.Collections.Generic;  
using System.Threading;  

namespace SampleRecognition  
{  
  class Program  
  {  
    private static SpeechRecognitionEngine recognizer;  
    public static void Main(string[] args)  
    {  

      // Initialize an in-process speech recognition engine and configure its input.  
      using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US")))  
      {  
        recognizer.SetInputToDefaultAudioDevice();  

        // Create the first grammar - Farm.  
        Choices animals = new Choices(new string[] { "cow", "pig", "goat" });  
        GrammarBuilder farm = new GrammarBuilder(animals);  
        Grammar farmAnimals = new Grammar(farm);  
        farmAnimals.Name = "Farm";  

        // Create the second grammar - Fruit.  
        Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" });  
        GrammarBuilder favorite = new GrammarBuilder(fruit);  
        Grammar favoriteFruit = new Grammar(favorite);  
        favoriteFruit.Name = "Fruit";  

        // Attach event handlers.  
        recognizer.SpeechRecognized +=  
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);  
        recognizer.RecognizerUpdateReached +=  
          new EventHandler<RecognizerUpdateReachedEventArgs>(recognizer_RecognizerUpdateReached);  
        recognizer.SpeechRecognitionRejected +=  
          new EventHandler<SpeechRecognitionRejectedEventArgs>(recognizer_SpeechRecognitionRejected);  

        // Load the Farm grammar.  
        recognizer.LoadGrammar(farmAnimals);  

        // Start asynchronous, continuous recognition.  
        recognizer.RecognizeAsync(RecognizeMode.Multiple);  
        Console.WriteLine("Starting asynchronous, continuous recognition");  
        Console.WriteLine("  Farm grammar is loaded and enabled.");  

        // Pause to recognize farm animals.  
        Thread.Sleep(7000);  
        Console.WriteLine();  

        // Request an update and load the Fruit grammar.  
        recognizer.RequestRecognizerUpdate();  
        recognizer.LoadGrammarAsync(favoriteFruit);  
        Thread.Sleep(7000);  

        // Request an update and unload the Farm grammar.  
        recognizer.RequestRecognizerUpdate();  
        recognizer.UnloadGrammar(farmAnimals);  
        Thread.Sleep(7000);  
      }  

      // Keep the console window open.  
      Console.WriteLine();  
      Console.WriteLine("Press any key to exit...");  
      Console.ReadKey();  
    }  

    // At the update, get the names and enabled status of the currently loaded grammars.  
    public static void recognizer_RecognizerUpdateReached(  
      object sender, RecognizerUpdateReachedEventArgs e)  
    {  
      Console.WriteLine();  
      Console.WriteLine("Update reached:");  
      Thread.Sleep(1000);  

      string qualifier;  
      List<Grammar> grammars = new List<Grammar>(recognizer.Grammars);  
      foreach (Grammar g in grammars)  
      {  
        qualifier = (g.Enabled) ? "enabled" : "disabled";  
        Console.WriteLine("  {0} grammar is loaded and {1}.",  
        g.Name, qualifier);  
      }  
    }  

    // Write the text of the recognized phrase to the console.  
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)  
    {  
      Console.WriteLine("    Speech recognized: " + e.Result.Text);  
    }  

    // Write a message to the console when recognition fails.  
    static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e)  
    {  
      Console.WriteLine("    Recognition attempt failed");  
    }  
  }  
}  

Açıklamalar

Tanıyıcı olayı oluşturduğunda RecognizerUpdateReached özelliğinin UserTokenRecognizerUpdateReachedEventArgs özelliğidir null.

Kullanıcı belirteci sağlamak için veya RequestRecognizerUpdate yöntemini kullanınRequestRecognizerUpdate. Ses konumu uzaklığını belirtmek için yöntemini kullanın RequestRecognizerUpdate .

Ayrıca bkz.

Şunlara uygulanır