Window の音声認識 API を使用していますが、非常に低いバックグラウンド ノイズを "if" という単語として繰り返し検出しています。入力の受け入れを開始するための最小ボリューム要件を設定する方法を見つけようとしていますが、そのメンバーはすべて読み取り専用に設定されています。
マイクの音量の最小カットオフを設定するにはどうすればよいですか?
編集:平均を取得し、必要な平均を下回っている場合はテキストを無視する方法を考え出しました
public void hRecognition_AudioStateChanged(object sender, AudioStateChangedEventArgs e)
{
if (e.AudioState == AudioState.Stopped)
{
volumeAverage /= volumeCount;
}
else if (e.AudioState == AudioState.Speech)
{
volumeAverage = 0;
volumeCount = 0;
}
}
public void hRecognition_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e)
{
volumeAverage += e.AudioLevel;
volumeCount += 1;
}