Extraio clipes de áudio de um arquivo de vídeo para reconhecimento de fala. Esses vídeos são provenientes de dispositivos móveis / outros feitos à mão e, portanto, contêm muito ruído. Quero reduzir o ruído de fundo do áudio para que a fala que eu retransmito para o meu mecanismo de reconhecimento de fala fique clara. Estou usando o ffmpeg para fazer tudo isso, mas estou preso na fase de redução de ruído.
Até agora tentei os seguintes filtros:
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
Mas os resultados são muito decepcionantes. Meu raciocínio era que, como a fala está abaixo da faixa de 300-3000 hz, posso filtrar todas as outras frequências para suprimir qualquer ruído de fundo. o que estou perdendo?
Além disso, li sobre filtros weiner que poderiam ser usados para aprimoramentos de fala e achei isso, mas não sei ao certo como usá-lo.