SpeechRecognitionEngine.SetInputToDefaultAudioDevice メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SpeechRecognitionEngine オブジェクトを、既定のオーディオ デバイスからの入力を受け取るように構成します。
public:
void SetInputToDefaultAudioDevice();
public void SetInputToDefaultAudioDevice ();
member this.SetInputToDefaultAudioDevice : unit -> unit
Public Sub SetInputToDefaultAudioDevice ()
例
次の例は、基本的な音声認識を示すコンソール アプリケーションの一部を示しています。 この例では、既定のオーディオ デバイスからの出力を使用し、複数の非同期認識操作を実行し、ユーザーが "exit" という語句を発したときに終了します。
using System;
using System.Globalization;
using System.Speech.Recognition;
using System.Threading;
namespace DefaultInput
{
class Program
{
// Indicate whether asynchronous recognition has finished.
static bool completed;
static void Main(string[] args)
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(new CultureInfo("en-US")))
{
// Create and load the exit grammar.
Grammar exitGrammar = new Grammar(new GrammarBuilder("exit"));
exitGrammar.Name = "Exit Grammar";
recognizer.LoadGrammar(exitGrammar);
// Create and load the dictation grammar.
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation Grammar";
recognizer.LoadGrammar(dictation);
// Attach event handlers to the recognizer.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
SpeechRecognizedHandler);
recognizer.RecognizeCompleted +=
new EventHandler<RecognizeCompletedEventArgs>(
RecognizeCompletedHandler);
// Assign input to the recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Begin asynchronous recognition.
Console.WriteLine("Starting recognition...");
completed = false;
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Wait for recognition to finish.
while (!completed)
{
Thread.Sleep(333);
}
Console.WriteLine("Done.");
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
static void SpeechRecognizedHandler(
object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine(" Speech recognized:");
string grammarName = "<not available>";
if (e.Result.Grammar.Name != null &&
!e.Result.Grammar.Name.Equals(string.Empty))
{
grammarName = e.Result.Grammar.Name;
}
Console.WriteLine(" {0,-17} - {1}",
grammarName, e.Result.Text);
if (grammarName.Equals("Exit Grammar"))
{
((SpeechRecognitionEngine)sender).RecognizeAsyncCancel();
}
}
static void RecognizeCompletedHandler(
object sender, RecognizeCompletedEventArgs e)
{
Console.WriteLine(" Recognition completed.");
completed = true;
}
}
}
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET