ffmpeg+sox实现录音降噪

2022-01-05 21:43:45ffmpeg

ffmpeg录制的带有音频的视频中,会有稳定的噪音,可以用sox进行降噪去除。

从视频中分离需要降噪的音频

ffmpeg -i output.mkv -vn output.wav

录制一段噪音视频并分离噪音音轨

ffmpeg -i noice.mkv -vn -ss 00:00:05 -t 00:00:10 -y noice.wav

跳过开头和结尾的不规则噪音,截取一个5s中的音频

噪音采样,利用noice.wav 生成降噪配置文件

sox noice.wav -n noiseprof nosiepf.prof

对原视频音频降噪

sox output.wav last_output.wav noisered nosiepf.prof 0.21 

sox 输入文件 输出文件 滤镜类型 采样文件 降噪阈值(0.2-0.3之间)

把降噪后的音频合并到视频中

ffmpeg -i output.mkv -i last_output.wav \
-map 0:v -map 1:a \
-c:v copy -c:a copy \
-y last_output.mkv

-map 0:v -map 1:a 使用第一个输入的视频,第二个输入的音频
-c:v copy -c:a copy 拷贝视频编码 和 拷贝音频编码 如果同时拷贝,等价于 -c copy

sox安装与下载

sox官网 http://sox.sourceforge.net/ (不是一个https)

sox 下载

配置sox环境变量

计算机-属性-高级系统设置-高级-环境变量-系统变量-Path

添加一条:sox的安装路径