다음을 통해 공유


SpeechRecognitionEngine.UpdateRecognizerSetting 메서드

정의

인식기에 대한 설정 값을 업데이트합니다.

오버로드

UpdateRecognizerSetting(String, Int32)

SpeechRecognitionEngine에 지정된 설정을 지정된 정수 값으로 업데이트합니다.

UpdateRecognizerSetting(String, String)

지정된 음성 인식 엔진 설정을 지정된 문자열 값으로 업데이트합니다.

설명

인식기 설정에는 문자열, 64 비트 정수 또는 메모리 주소 데이터가 포함 될 수 있습니다. 다음 표에서는 SAPI (Microsoft Speech API) 규격 인식기에 대해 정의 된 설정을 설명 합니다. 다음 설정은 설정을 지 원하는 각 인식기에 대해 동일한 범위를 가져야 합니다. SAPI 규격 인식기는 이러한 설정을 지원 하기 위해 필요 하지 않으며 다른 설정을 지원할 수 있습니다.

Name 설명
ResourceUsage 인식기의 CPU 소비를 지정 합니다. 범위는 0에서 100 까지입니다. 기본값은 50입니다.
ResponseSpeed 음성 인식기가 인식 작업을 완료 하기 전에 명확 하지 않은 입력의 끝에 있는 침묵의 길이를 나타냅니다. 범위는 0에서 1만 밀리초 (밀리초)입니다. 이 설정은 인식기의 속성에 해당 EndSilenceTimeout 합니다. 기본값은 150ms입니다.
ComplexResponseSpeed 음성 인식기가 인식 작업을 완료 하기 전에 모호한 입력 끝의 침묵 시간 (밀리초)을 나타냅니다. 범위는 0에서 10, 000ms 사이입니다. 이 설정은 인식기의 속성에 해당 EndSilenceTimeoutAmbiguous 합니다. 기본값은 500ms입니다.
AdaptationOn 음향 모델의 적응 (값 = 1 ) 또는 꺼짐 (값 =)이 설정 되어 있는지 여부를 나타냅니다 0 . 기본값은 1 (설정)입니다.
PersistedBackgroundAdaptation 배경 적응의 설정 (값 = 1 ) 또는 해제 (값 =)가 설정 되어 있는지 여부를 나타내며 0 레지스트리에서 설정을 유지 합니다. 기본값은 1 (설정)입니다.

인식기 설정 중 하나를 반환 하려면 메서드를 사용 QueryRecognizerSetting 합니다.

를 제외 하 고 PersistedBackgroundAdaptation 메서드를 사용 하 여 설정한 속성 값은 UpdateRecognizerSetting 의 현재 인스턴스에만 적용 되며, 그 SpeechRecognitionEngine 후에는 기본 설정으로 되돌아갑니다.

BabbleTimeout,, InitialSilenceTimeout EndSilenceTimeout 및 속성을 사용 하 여 음성 인식이 음성 인식이 아닌 입력에 응답 하는 방식을 수정할 수 있습니다 EndSilenceTimeoutAmbiguous .

UpdateRecognizerSetting(String, Int32)

SpeechRecognitionEngine에 지정된 설정을 지정된 정수 값으로 업데이트합니다.

public:
 void UpdateRecognizerSetting(System::String ^ settingName, int updatedValue);
public void UpdateRecognizerSetting (string settingName, int updatedValue);
member this.UpdateRecognizerSetting : string * int -> unit
Public Sub UpdateRecognizerSetting (settingName As String, updatedValue As Integer)

매개 변수

settingName
String

업데이트할 설정의 이름입니다.

updatedValue
Int32

설정의 새 값입니다.

예외

settingName이(가) null인 경우

settingName가 빈 문자열("")입니다.

인식기에는 해당 이름의 설정이 없습니다.

예제

다음 예제는 다양 한 EN-US 로캘을 지 인식기에 대해 정의 된 설정에 대 한 값을 출력 하는 콘솔 애플리케이션의 일부입니다. 이 예에서는 신뢰 수준 설정을 업데이트 한 다음 인식기를 쿼리하여 업데이트 된 값을 확인 합니다. 이 예에서는 다음과 같은 출력을 생성 합니다.

Settings for recognizer MS-1033-80-DESK:  

  ResourceUsage                  is not supported by this recognizer.  
  ResponseSpeed                  = 150  
  ComplexResponseSpeed           = 500  
  AdaptationOn                   = 1  
  PersistedBackgroundAdaptation  = 1  

Updated settings:  

  ResourceUsage                  is not supported by this recognizer.  
  ResponseSpeed                  = 200  
  ComplexResponseSpeed           = 300  
  AdaptationOn                   = 0  
  PersistedBackgroundAdaptation  = 0  

Press any key to exit...  
using System;  
using System.Globalization;  
using System.Speech.Recognition;  

namespace RecognizerSettings  
{  
  class Program  
  {  
    static readonly string[] settings = new string[] {  
      "ResourceUsage",  
      "ResponseSpeed",  
      "ComplexResponseSpeed",  
      "AdaptationOn",  
      "PersistedBackgroundAdaptation",  
    };  

    static void Main(string[] args)  
    {  
      using (SpeechRecognitionEngine recognizer =  
        new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US")))  
      {  
        Console.WriteLine("Settings for recognizer {0}:",  
          recognizer.RecognizerInfo.Name);  
        Console.WriteLine();  

        // List the current settings.  
        ListSettings(recognizer);  

        // Change some of the settings.  
        recognizer.UpdateRecognizerSetting("ResponseSpeed", 200);  
        recognizer.UpdateRecognizerSetting("ComplexResponseSpeed", 300);  
        recognizer.UpdateRecognizerSetting("AdaptationOn", 1);  
        recognizer.UpdateRecognizerSetting("PersistedBackgroundAdaptation", 0);  

        Console.WriteLine("Updated settings:");  
        Console.WriteLine();  

        // List the updated settings.  
        ListSettings(recognizer);  
      }  

      Console.WriteLine("Press any key to exit...");  
      Console.ReadKey();  
    }  

    private static void ListSettings(SpeechRecognitionEngine recognizer)  
    {  
      foreach (string setting in settings)  
      {  
        try  
        {  
          object value = recognizer.QueryRecognizerSetting(setting);  
          Console.WriteLine("  {0,-30} = {1}", setting, value);  
        }  
        catch  
        {  
          Console.WriteLine("  {0,-30} is not supported by this recognizer.",  
            setting);  
        }  
      }  
      Console.WriteLine();  
    }  
  }  
}  

설명

를 제외 하 고 PersistedBackgroundAdaptation 메서드를 사용 하 여 설정한 속성 값은 UpdateRecognizerSetting 의 현재 인스턴스에만 적용 되며, 그 SpeechRecognitionEngine 후에는 기본 설정으로 되돌아갑니다. UpdateRecognizerSetting지원 되는 설정에 대 한 설명은를 참조 하세요.

추가 정보

적용 대상

UpdateRecognizerSetting(String, String)

지정된 음성 인식 엔진 설정을 지정된 문자열 값으로 업데이트합니다.

public:
 void UpdateRecognizerSetting(System::String ^ settingName, System::String ^ updatedValue);
public void UpdateRecognizerSetting (string settingName, string updatedValue);
member this.UpdateRecognizerSetting : string * string -> unit
Public Sub UpdateRecognizerSetting (settingName As String, updatedValue As String)

매개 변수

settingName
String

업데이트할 설정의 이름입니다.

updatedValue
String

설정의 새 값입니다.

예외

settingName이(가) null인 경우

settingName가 빈 문자열("")입니다.

인식기에는 해당 이름의 설정이 없습니다.

설명

를 제외 하 고 PersistedBackgroundAdaptation 메서드를 사용 하 여 설정한 속성 값은 UpdateRecognizerSetting 의 현재 인스턴스에만 적용 되며, 그 SpeechRecognitionEngine 후에는 기본 설정으로 되돌아갑니다. UpdateRecognizerSetting지원 되는 설정에 대 한 설명은를 참조 하세요.

추가 정보

적용 대상