RecognizeCompletedEventArgs.BabbleTimeout 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
@@@배블 시간 제한이 RecognizeCompleted 이벤트를 생성했는지 여부를 나타내는 값을 가져옵니다.
public:
property bool BabbleTimeout { bool get(); };
public bool BabbleTimeout { get; }
member this.BabbleTimeout : bool
Public ReadOnly Property BabbleTimeout As Boolean
속성 값
true
가 속성에 SpeechRecognitionEngine 지정된 BabbleTimeout 것보다 오랫동안 백그라운드 노이즈만 검색한 경우 이고, 그렇지 않으면 false
입니다.
예제
스피치 인식 그래 머의 비동기 음성 인식을 수행 하는 다음 예제에서는 사용 하는 SpeechRecognitionEngine.RecognizeAsync in process 인식기를 사용 하 여 메서드. 예제에서는 Choices 하 고 GrammarBuilder 스피치 인식 그래 머를 빌드하기 전에 만들려는 개체를 Grammar 개체입니다. 에 대 한 처리기를 SpeechRecognitionEngine.RecognizeCompleted 이벤트 콘솔로 인식 작업에 대 한 정보를 출력 합니다.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognitionEngine recognizer;
public static void Main(string[] args)
{
// Initialize a SpeechRecognitionEngine object and set its input.
recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"));
recognizer.SetInputToDefaultAudioDevice();
// Configure recognition parameters.
recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5.0);
recognizer.BabbleTimeout = TimeSpan.FromSeconds(3.0);
recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1.0);
recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.0);
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the RecognizeCompleted event.
recognizer.RecognizeCompleted +=
new EventHandler<RecognizeCompletedEventArgs>(recognizer_RecognizeCompleted);
// Create a speech recognition grammar and build it into a Grammar object.
Choices bankingMenu = new Choices(new string[]
{ "Access accounts", "Transfer funds", "Pay bills", "Get loan balance" });
GrammarBuilder banking = new GrammarBuilder(bankingMenu);
Grammar bankGrammar = new Grammar(banking);
bankGrammar.Name = "Banking Menu";
// Load the Grammar objects to the recognizer.
recognizer.LoadGrammarAsync(bankGrammar);
// Start asynchronous, continuous recognition.
recognizer.RecognizeAsync();
// Keep the console window open.
Console.ReadLine();
}
// Handle the RecognizeCompleted event.
static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e)
{
if (e.Error != null)
{
Console.WriteLine(
"RecognizeCompleted, error occurred during recognition: {0}", e.Error);
return;
}
if (e.InitialSilenceTimeout || e.BabbleTimeout)
{
Console.WriteLine(
"RecognizeCompleted: BabbleTimeout({0}), InitialSilenceTimeout({1}).",
e.BabbleTimeout, e.InitialSilenceTimeout);
return;
}
if (e.InputStreamEnded)
{
Console.WriteLine(
"RecognizeCompleted: AudioPosition({0}), InputStreamEnded({1}).",
e.AudioPosition, e.InputStreamEnded);
}
if (e.Result != null)
{
Console.WriteLine(
"RecognizeCompleted: Grammar ({0}), Text ({1}), Confidence ({2}), AudioPosition ({3}).",
e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence, e.AudioPosition);
}
else
{
Console.WriteLine("RecognizeCompleted: No result.");
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
string grammarName = e.Grammar.Name;
bool grammarLoaded = e.Grammar.Loaded;
bool grammarEnabled = e.Grammar.Enabled;
if (e.Error != null)
{
Console.WriteLine("LoadGrammar for {0} failed with a {1}.",
grammarName, e.Error.GetType().Name);
// Add exception handling code here.
}
Console.WriteLine("Grammar {0} {1} loaded and {2} enabled.", grammarName,
(grammarLoaded) ? "is" : "is not", (grammarEnabled) ? "is" : "is not");
}
}
}
적용 대상
추가 정보
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET