Bagikan melalui


SpeechRecognitionEngine Konstruktor

Definisi

Menginisialisasi instans baru dari kelas SpeechRecognitionEngine.

Overload

Nama Deskripsi
SpeechRecognitionEngine()

Menginisialisasi instans SpeechRecognitionEngine baru kelas menggunakan pengenal ucapan default untuk sistem.

SpeechRecognitionEngine(CultureInfo)

Menginisialisasi instans SpeechRecognitionEngine baru kelas menggunakan pengenal ucapan default untuk lokal tertentu.

SpeechRecognitionEngine(RecognizerInfo)

Menginisialisasi instans baru menggunakan SpeechRecognitionEngine informasi dalam RecognizerInfo objek untuk menentukan pengenal yang akan digunakan.

SpeechRecognitionEngine(String)

Menginisialisasi instans SpeechRecognitionEngine baru kelas dengan parameter string yang menentukan nama pengenal yang akan digunakan.

Keterangan

Anda dapat membuat SpeechRecognitionEngine instans dari salah satu hal berikut:

  • Mesin pengenalan ucapan default untuk sistem

  • Mesin pengenalan ucapan tertentu yang Anda tentukan berdasarkan nama

  • Mesin pengenalan ucapan default untuk lokal yang Anda tentukan

  • Mesin pengenalan tertentu yang memenuhi kriteria yang Anda tentukan dalam RecognizerInfo objek.

Sebelum pengenal ucapan dapat memulai pengenalan, Anda harus memuat setidaknya satu tata bahasa pengenalan ucapan dan mengonfigurasi input untuk pengenal.

Untuk memuat tata bahasa, panggil LoadGrammar metode atau LoadGrammarAsync .

Untuk mengonfigurasi input audio, gunakan salah satu metode berikut:

SpeechRecognitionEngine()

Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs

Menginisialisasi instans SpeechRecognitionEngine baru kelas menggunakan pengenal ucapan default untuk sistem.

public:
 SpeechRecognitionEngine();
public SpeechRecognitionEngine();
Public Sub New ()

Keterangan

Sebelum pengenal ucapan dapat memulai pengenalan ucapan, Anda harus memuat setidaknya satu tata bahasa pengenalan dan mengonfigurasi input untuk pengenal.

Untuk memuat tata bahasa, panggil LoadGrammar metode atau LoadGrammarAsync .

Untuk mengonfigurasi input audio, gunakan salah satu metode berikut:

Berlaku untuk

SpeechRecognitionEngine(CultureInfo)

Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs

Menginisialisasi instans SpeechRecognitionEngine baru kelas menggunakan pengenal ucapan default untuk lokal tertentu.

public:
 SpeechRecognitionEngine(System::Globalization::CultureInfo ^ culture);
public SpeechRecognitionEngine(System.Globalization.CultureInfo culture);
new System.Speech.Recognition.SpeechRecognitionEngine : System.Globalization.CultureInfo -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (culture As CultureInfo)

Parameter

culture
CultureInfo

Lokal yang harus didukung oleh pengenal ucapan.

Pengecualian

Tidak ada pengenal ucapan yang diinstal yang mendukung lokal yang ditentukan, atau culture merupakan budaya invarian.

Culture adalah null.

Contoh

Contoh berikut menunjukkan bagian dari aplikasi konsol yang menunjukkan pengenalan ucapan dasar, dan menginisialisasi pengenal ucapan untuk lokal en-US.

using System;
using System.Speech.Recognition;

namespace SpeechRecognitionApp
{
  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());

        // Add a handler for the speech recognized event.
        recognizer.SpeechRecognized +=
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);

        // Configure input to the speech recognizer.
        recognizer.SetInputToDefaultAudioDevice();

        // Start asynchronous, continuous speech recognition.
        recognizer.RecognizeAsync(RecognizeMode.Multiple);

        // Keep the console window open.
        while (true)
        {
          Console.ReadLine();
        }
      }
    }

    // Handle the SpeechRecognized event.
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
    {
      Console.WriteLine("Recognized text: " + e.Result.Text);
    }
  }
}

Keterangan

Microsoft Windows dan System.Speech API menerima semua kode negara bahasa yang valid. Untuk melakukan pengenalan ucapan menggunakan bahasa yang ditentukan dalam CultureInfo argumen, mesin pengenalan ucapan yang mendukung kode negara bahasa tersebut harus diinstal. Mesin pengenalan ucapan yang dikirim dengan Microsoft Windows 7 berfungsi dengan kode negara bahasa berikut.

  • en-GB. Inggris (Kerajaan Inggris Bersatu)

  • en-US. Bahasa Inggris (Amerika Serikat)

  • de-DE. Bahasa Jerman (Jerman)

  • es-ES. Spanyol (Spanyol)

  • fr-FR. Bahasa Prancis (Prancis)

  • ja-JP. Bahasa Jepang (Jepang)

  • zh-CN. Tionghoa (Tiongkok)

  • zh-TW. Tionghoa (Taiwan)

Kode bahasa dua huruf seperti "en", "fr", atau "es" juga diizinkan.

Sebelum pengenal ucapan dapat memulai pengenalan, Anda harus memuat setidaknya satu tata bahasa pengenalan ucapan dan mengonfigurasi input untuk pengenal.

Untuk memuat tata bahasa, panggil LoadGrammar metode atau LoadGrammarAsync .

Untuk mengonfigurasi input audio, gunakan salah satu metode berikut:

Berlaku untuk

SpeechRecognitionEngine(RecognizerInfo)

Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs

Menginisialisasi instans baru menggunakan SpeechRecognitionEngine informasi dalam RecognizerInfo objek untuk menentukan pengenal yang akan digunakan.

public:
 SpeechRecognitionEngine(System::Speech::Recognition::RecognizerInfo ^ recognizerInfo);
public SpeechRecognitionEngine(System.Speech.Recognition.RecognizerInfo recognizerInfo);
new System.Speech.Recognition.SpeechRecognitionEngine : System.Speech.Recognition.RecognizerInfo -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (recognizerInfo As RecognizerInfo)

Parameter

recognizerInfo
RecognizerInfo

Informasi untuk pengenal ucapan tertentu.

Contoh

Contoh berikut menunjukkan bagian dari aplikasi konsol yang menunjukkan pengenalan ucapan dasar, dan menginisialisasi pengenal ucapan yang mendukung bahasa Inggris.

 using System;
using System.Speech.Recognition;

namespace SpeechRecognitionApp
{
  class Program
  {
    static void Main(string[] args)
    {

      // Select a speech recognizer that supports English.
      RecognizerInfo info = null;
      foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers())
      {
        if (ri.Culture.TwoLetterISOLanguageName.Equals("en"))
        {
          info = ri;
          break;
        }
      }
      if (info == null) return;

      // Create the selected recognizer.
      using (SpeechRecognitionEngine recognizer =
        new SpeechRecognitionEngine(info))
      {

        // Create and load a dictation grammar.
        recognizer.LoadGrammar(new DictationGrammar());

        // Add a handler for the speech recognized event.
        recognizer.SpeechRecognized +=
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);

        // Configure input to the speech recognizer.
        recognizer.SetInputToDefaultAudioDevice();

        // Start asynchronous, continuous speech recognition.
        recognizer.RecognizeAsync(RecognizeMode.Multiple);

        // Keep the console window open.
        while (true)
        {
          Console.ReadLine();
        }
      }
    }

    // Handle the SpeechRecognized event.
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
    {
      Console.WriteLine("Recognized text: " + e.Result.Text);
    }
  }
}

Keterangan

Anda dapat membuat instans kelas ini untuk salah satu pengenal ucapan yang diinstal. Untuk mendapatkan informasi tentang pengenal mana yang diinstal, gunakan InstalledRecognizers metode .

Sebelum pengenal ucapan dapat memulai pengenalan, Anda harus memuat setidaknya satu tata bahasa pengenalan ucapan dan mengonfigurasi input untuk pengenal.

Untuk memuat tata bahasa, panggil LoadGrammar metode atau LoadGrammarAsync .

Untuk mengonfigurasi input audio, gunakan salah satu metode berikut:

Berlaku untuk

SpeechRecognitionEngine(String)

Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs
Sumber:
SpeechRecognitionEngine.cs

Menginisialisasi instans SpeechRecognitionEngine baru kelas dengan parameter string yang menentukan nama pengenal yang akan digunakan.

public:
 SpeechRecognitionEngine(System::String ^ recognizerId);
public SpeechRecognitionEngine(string recognizerId);
new System.Speech.Recognition.SpeechRecognitionEngine : string -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (recognizerId As String)

Parameter

recognizerId
String

Nama token pengenal ucapan yang akan digunakan.

Pengecualian

Tidak ada pengenal ucapan dengan nama token tersebut yang diinstal, atau recognizerId merupakan string kosong ("").

recognizerId adalah null.

Contoh

Contoh berikut menunjukkan bagian dari aplikasi konsol yang menunjukkan pengenalan ucapan dasar, dan membuat instans Speech Recognizer 8.0 untuk Windows (Inggris - AS).

using System;
using System.Speech.Recognition;

namespace SpeechRecognitionApp
{
  class Program
  {
    static void Main(string[] args)
    {

      // Create an instance of the Microsoft Speech Recognizer 8.0 for
      // Windows (English - US).
      using (SpeechRecognitionEngine recognizer =
        new SpeechRecognitionEngine("MS-1033-80-DESK"))
      {

        // Create and load a dictation grammar.
        recognizer.LoadGrammar(new DictationGrammar());

        // Add a handler for the speech recognized event.
        recognizer.SpeechRecognized += new EventHandler(recognizer_SpeechRecognized);

        // Configure input to the speech recognizer.
        recognizer.SetInputToDefaultAudioDevice();

        // Start asynchronous, continuous speech recognition.
        recognizer.RecognizeAsync(RecognizeMode.Multiple);

        // Keep the console window open.
        while (true)
        {
          Console.ReadLine();
        }
      }
    }

    // Handle the SpeechRecognized event.
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
    {
      Console.WriteLine("Recognized text: " + e.Result.Text);
    }
  }
}

Keterangan

Nama token recognizer adalah nilai Id properti objek yang RecognizerInfo dikembalikan oleh RecognizerInfo properti recognizer. Untuk mendapatkan koleksi semua pengenal yang diinstal, gunakan metode statis InstalledRecognizers .

Sebelum pengenal ucapan dapat memulai pengenalan, Anda harus memuat setidaknya satu tata bahasa pengenalan ucapan dan mengonfigurasi input untuk pengenal.

Untuk memuat tata bahasa, panggil LoadGrammar metode atau LoadGrammarAsync .

Untuk mengonfigurasi input audio, gunakan salah satu metode berikut:

Berlaku untuk