Я извлекаю аудиоклипы из видеофайла для распознавания речи. Эти видео приходят с мобильных / других устройств ручной работы и, следовательно, содержат много шума. Я хочу уменьшить фоновый шум звука, чтобы речь, которую я передаю в механизм распознавания речи, была четкой. Я использую ffmpeg, чтобы сделать все это, но я застрял на этапе снижения шума.
До сих пор я пробовал следующие фильтры:
ffmpeg-20140324-git-63dbba6-win64-static\bin>ffmpeg -i i nput.wav -filter_complex "highpass=f=400,lowpass=f=1800" out2.wav
ffmpeg -i i nput.wav -af "equalizer=f=1000:width_type=h:width=900:g=-10" output.wav
ffmpeg -i i nput.wav -af "bandreject=f=1200:width_type=h:width=900:g=-10" output.wav
Но результаты очень разочаровывают. Мое рассуждение состояло в том, что, поскольку речь идет в диапазоне 300-3000 Гц, я могу отфильтровать все другие частоты, чтобы подавить любой фоновый шум. Что мне не хватает?
Кроме того, я читал о фильтрах weiner, которые можно использовать для улучшения речи, и нашел это, но не уверен, как его использовать.