SpeechRecognizer 클래스

정의

윈도우즈 바탕화면에서 사용할 수 있는 공유 스피치 인식 서비스에 접근한다.Provides access to the shared speech recognition service available on the Windows desktop.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
상속
SpeechRecognizer
구현

예제

다음 예제는 콘솔 애플리케이션을 음성 인식 문법을 로드 및 비동기 에뮬레이트된 입력, 연결 된 인식 결과 및 음성 인식기에 의해 발생 하는 연결 된 이벤트를 보여 줍니다.The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. Windows 음성 인식을 실행 하지 않는 경우 다음이 애플리케이션을 시작 Windows 음성 인식 됩니다도 시작 됩니다.If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. Windows 음성 인식이 경우 합니다 중지 상태 이면 다음 EmulateRecognizeAsync 항상 null을 반환 합니다.If Windows Speech Recognition is in the Sleeping state, then EmulateRecognizeAsync always returns null.

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

설명

Windows 음성 인식 액세스 하려면 공유 인식기를 사용 하는 애플리케이션.Applications use the shared recognizer to access Windows Speech Recognition. 사용 된 SpeechRecognizer Windows 음성 사용자 환경에 추가할 개체입니다.Use the SpeechRecognizer object to add to the Windows speech user experience.

이 클래스는 다양 한 음성 인식 프로세스에 대 한 제어를 제공합니다.This class provides control over various aspects of the speech recognition process:

Windows 음성 인식의 구성을 사용 하 여 관리 되는 음성 속성 대화 상자에는 제어판합니다.The configuration of Windows Speech Recognition is managed by the use of the Speech Properties dialog in the Control Panel. 이 인터페이스는 기본 데스크톱 음성 인식 엔진 및 언어, 오디오 입력된 디바이스 및 음성 인식의 절전 모드 동작 선택에 사용 됩니다.This interface is used to select the default desktop speech recognition engine and language, the audio input device, and the sleep behavior of speech recognition. (예를 들어 경우 음성 인식을 사용 불가능 하거나 입력된 언어가 변경 된) 애플리케이션이 실행 되는 동안 Windows 음성 인식의 구성을 변경 하는 경우, 변경 내용이 모두 적용 SpeechRecognizer 개체입니다.If the configuration of Windows Speech Recognition is changed while the application is running, (for instance, if speech recognition is disabled or the input language is changed), the change affects all SpeechRecognizer objects.

Windows 음성 인식의 관계는 in process 음성 인식기를 만들려면 사용 합니다 SpeechRecognitionEngine 클래스입니다.To create an in-process speech recognizer that is independent of Windows Speech Recognition, use the SpeechRecognitionEngine class.

참고

항상 호출 Dispose 음성 인식기에 대 한 마지막 참조를 해제 하기 전에 합니다.Always call Dispose before you release your last reference to the speech recognizer. 가비지 수집기는 인식기 개체를 호출할 때까지 사용 중인 리소스를 해제 되지 것입니다이 고, 그렇지 Finalize 메서드.Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's Finalize method.

생성자

SpeechRecognizer()

SpeechRecognizer 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the SpeechRecognizer class.

속성

AudioFormat

음성 인식기가 수신하는 오디오의 형식을 가져옵니다.Gets the format of the audio being received by the speech recognizer.

AudioLevel

음성 인식기가 수신하는 오디오의 수준을 가져옵니다.Gets the level of the audio being received by the speech recognizer.

AudioPosition

음성 인식기에 입력을 공급하는 디바이스가 생성하고 있는 오디오 스트림에서 현재 위치를 가져옵니다.Gets the current location in the audio stream being generated by the device that is providing input to the speech recognizer.

AudioState

음성 인식기가 수신하는 오디오의 상태를 가져옵니다.Gets the state of the audio being received by the speech recognizer.

Enabled

SpeechRecognizer 개체가 음성을 처리할 준비가 되었는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether this SpeechRecognizer object is ready to process speech.

Grammars

Grammar 인스턴스에 로드된 SpeechRecognizer 개체의 컬렉션을 가져옵니다.Gets a collection of the Grammar objects that are loaded in this SpeechRecognizer instance.

MaxAlternates

각 인식 작업을 위해 공유 음성 인식기에서 반환하는 대체 인식 결과의 최대 개수를 가져오거나 설정합니다.Gets or sets the maximum number of alternate recognition results that the shared recognizer returns for each recognition operation.

PauseRecognizerOnRecognition

애플리케이션에서 SpeechRecognized 이벤트를 처리하는 동안 공유 인식기가 인식 작업을 일시 중지하는지를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether the shared recognizer pauses recognition operations while an application is handling a SpeechRecognized event.

RecognizerAudioPosition

처리하고 있는 오디오 입력 인식기의 현재 위치를 가져옵니다.Gets the current location of the recognizer in the audio input that it is processing.

RecognizerInfo

공유 음성 인식기에 대한 정보를 가져옵니다.Gets information about the shared speech recognizer.

State

SpeechRecognizer 개체의 상태를 가져옵니다.Gets the state of a SpeechRecognizer object.

메서드

Dispose()

SpeechRecognizer 개체를 삭제합니다.Disposes the SpeechRecognizer object.

Dispose(Boolean)

SpeechRecognizer 개체를 삭제하고 세션 중에 사용되는 리소스를 해제합니다.Disposes the SpeechRecognizer object and releases resources used during the session.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 특정 단어 입력을 에뮬레이션하고, 인식기가 단어와 로드된 음성 인식 문법 사이의 유니코드 비교를 처리할 방법을 지정합니다.Emulates input of specific words to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognize(String)

동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 구 입력을 에뮬레이션합니다.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition.

EmulateRecognize(String, CompareOptions)

동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 구 입력을 에뮬레이션하고, 인식기가 구와 로드된 음성 인식 문법 사이의 유니코드 비교를 처리할 방법을 지정합니다.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

비동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 특정 단어 입력을 에뮬레이션하고, 인식기가 단어와 로드된 음성 인식 문법 사이의 유니코드 비교를 처리할 방법을 지정합니다.Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognizeAsync(String)

비동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 구 입력을 에뮬레이션합니다.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

EmulateRecognizeAsync(String, CompareOptions)

비동기 음성 인식용 오디오 대신 텍스트를 사용하여 공유 음성 인식기에 구 입력을 에뮬레이션하고, 인식기가 구와 로드된 음성 인식 문법 사이의 유니코드 비교를 처리할 방법을 지정합니다.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
LoadGrammar(Grammar)

음성 인식 문법을 로드합니다.Loads a speech recognition grammar.

LoadGrammarAsync(Grammar)

음성 인식 문법을 비동기적으로 로드합니다.Asynchronously loads a speech recognition grammar.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
RequestRecognizerUpdate()

공유된 인식기가 그 상태를 멈추고 업데이트할 것을 요청합니다.Requests that the shared recognizer pause and update its state.

RequestRecognizerUpdate(Object)

공유 인식기가 일시 중지되어 상태를 업데이트하고 관련된 이벤트에 대한 사용자 토큰을 제공하도록 요청합니다.Requests that the shared recognizer pause and update its state and provides a user token for the associated event.

RequestRecognizerUpdate(Object, TimeSpan)

공유 인식기가 일시 중지되어 상태를 업데이트하고 관련된 이벤트에 대한 오프셋과 사용자 토큰을 제공하도록 요청합니다.Requests that the shared recognizer pause and update its state and provides an offset and a user token for the associated event.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)
UnloadAllGrammars()

모든 음성 인식 문법을 공유 인식기에서 언로드합니다.Unloads all speech recognition grammars from the shared recognizer.

UnloadGrammar(Grammar)

지정된 음성 인식 문법을 공유 인식기에서 언로드합니다.Unloads a specified speech recognition grammar from the shared recognizer.

이벤트

AudioLevelUpdated

오디오 입력 수준 공유 인식기를 보고 하면 발생 합니다.Occurs when the shared recognizer reports the level of its audio input.

AudioSignalProblemOccurred

인식기에서 오디오 신호에 문제가 발견 되 면 발생 합니다.Occurs when the recognizer encounters a problem in the audio signal.

AudioStateChanged

인식기가 수신하는 오디오의 상태가 변경되면 발생합니다.Occurs when the state changes in the audio being received by the recognizer.

EmulateRecognizeCompleted

공유 인식기 에뮬레이트된 입력에 대 한 비동기 인식 작업을 종료 할 때 발생 합니다.Occurs when the shared recognizer finalizes an asynchronous recognition operation for emulated input.

LoadGrammarCompleted

인식기는 음성 인식의 문법의 비동기 로딩을 완료할 때 발생 합니다.Occurs when the recognizer finishes the asynchronous loading of a speech recognition grammar.

RecognizerUpdateReached

인식 및 기타 작업을 동기화 하는 인식기를 놓을 때 발생 합니다.Occurs when the recognizer pauses to synchronize recognition and other operations.

SpeechDetected

인식기가 음성으로 식별할 수 있는 입력을 감지할 때 발생 합니다.Occurs when the recognizer detects input that it can identify as speech.

SpeechHypothesized

인식기가 단어가 문법적으로 여러 구의 구성 요소가 될 수 있음을 인식했을 때 발생합니다.Occurs when the recognizer has recognized a word or words that may be a component of multiple complete phrases in a grammar.

SpeechRecognitionRejected

인식기가 로드된 음성 인식 문법 중 어느것과도 일치하지 않는 입력을 받을 때 발생합니다.Occurs when the recognizer receives input that does not match any of the speech recognition grammars it has loaded.

SpeechRecognized

인식기의 음성 인식의 문법 중 하 나와 일치 하는 입력을 받을 때 발생 합니다.Occurs when the recognizer receives input that matches one of its speech recognition grammars.

StateChanged

Windows 바탕 화면 음성 기술을 인식 엔진의 실행 상태가 변경 될 때 발생 합니다.Occurs when the running state of the Windows Desktop Speech Technology recognition engine changes.

적용 대상

추가 정보