このMSDNページは、あなたが求めていることを非常にうまく処理します. 参考までに、付属のコードを掲載します。最後の for ループには、
// Handle the SpeechRecognized event.
void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e)
{
//... Code handling the result
// Display the recognition alternates for the result.
foreach (RecognizedPhrase phrase in e.Result.Alternates)
{
Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text);
}
}
の使用e.Result.Alternates
は、他の可能な単語を取得する公式の方法です。
それでも十分な結果が得られない場合は、この MSDN ページで必要な情報が得られます。UpdateRecognizerSetting
を使用してSpeechRecognitionEngine
信頼拒否レベルを変更する必要があります。0 に設定すると、すべての結果Alternates
が信頼レベルと共に表示され、上位 10 を取得するために並べ替えることができます。