минимальное ограничение громкости микрофона с помощью распознавания голоса Windows - PullRequest
19 голосов
/ 12 мая 2011

Я использую API распознавания голоса Window, и он постоянно обнаруживает очень низкий фоновый шум как слово «если» многократно.Я пытался найти способ установить минимальный уровень громкости, чтобы он мог принимать входные данные, но все его элементы настроены только для чтения.

Как установить минимальное ограничение громкости микрофона??

Редактировать: Выяснили способ получения среднего значения и игнорировать текст, если он ниже среднего, я хочу

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;
    }

1 Ответ

1 голос
/ 20 мая 2011

Хороший вопрос, мне пришлось немного поработать над некоторым программным обеспечением для анализа звука. И вы могли бы реализовать звуковой фильтр, звуковые фильтры . У меня нет опыта распознавания голоса в Windows, но, надеюсь, это поможет, посмотрите на сигнал, обрабатывающий простые шумовые фильтры

...