SpeechRecognitionEngine.UpdateRecognizerSetting 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
更新辨識器的設定值。
多載
UpdateRecognizerSetting(String, Int32) |
以指定的整數值更新 SpeechRecognitionEngine 的指定設定。 |
UpdateRecognizerSetting(String, String) |
以指定的字串值來更新指定的語音辨識引擎設定。 |
備註
辨識器設定可以包含字串、64 位整數或記憶體位址資料。 下表描述針對Microsoft語音 API 所定義的設定, (SAPI) 相容辨識器。 下列設定對於支援設定的每個辨識器都必須有相同的範圍。 不需要符合 SAPI 規範的辨識器才能支援這些設定,而且可以支援其他設定。
名稱 | 描述 |
---|---|
ResourceUsage |
指定辨識器的 CPU 耗用量。 範圍是從 0 到 100。 預設值是 50。 |
ResponseSpeed |
表示在語音辨識器完成辨識作業之前,明確輸入結尾的無聲長度。 範圍從 0 到 10,000 毫秒 (毫秒) 。 此設定會對應至辨識器 EndSilenceTimeout 的屬性。 預設值 = 150 毫秒。 |
ComplexResponseSpeed |
表示在語音辨識器完成辨識作業之前,在模棱兩可輸入結尾的) 毫秒 (毫秒的無聲長度。 範圍是從 0 到 10,000 毫秒。 此設定會對應至辨識器 EndSilenceTimeoutAmbiguous 的屬性。 預設值 = 500 毫秒。 |
AdaptationOn |
指出原音模型的調適是否為 ON (value = 1 ) 或 OFF (value = 0 ) 。 預設值為 1 ON) (。 |
PersistedBackgroundAdaptation |
指出背景調適為 ON (value = 1 ) 或 OFF (value = 0 ) ,並將設定保存在登錄中。 預設值為 1 ON) (。 |
若要傳回其中一個辨識器設定,請使用 QueryRecognizerSetting 方法。
除了 PersistedBackgroundAdaptation
之外,使用 UpdateRecognizerSetting 方法所設定的屬性值只會對 目前的 實例 SpeechRecognitionEngine 生效,之後它們會還原為其預設設定。
您可以使用 、 InitialSilenceTimeout 、 EndSilenceTimeout 和 EndSilenceTimeoutAmbiguous 屬性來修改語音辨識回應非語音輸入 BabbleTimeout 的方式。
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 。