Я витягую аудіокліпи з відеофайлу для розпізнавання мовлення. Ці відео походять з мобільних / інших пристроїв ручної роботи, а отже, містять багато шуму. Я хочу зменшити фоновий шум аудіо, щоб мова, яку я передаю моєму механізму розпізнавання мовлення, була зрозумілою. Я використовую 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, які можна використовувати для покращення мови, і знайшов це, але не знаю, як ним користуватися.