
从离线文件到实时麦克风DeepFilterNet 语音降噪的 3 种落地玩法【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址: https://gitcode.com/GitHub_Trending/de/DeepFilterNet你正在开视频会议背景是咖啡厅的人声和键盘声。DeepFilterNet 是一个基于深度滤波的低复杂度语音降噪框架支持 48kHz 全频带音频能把这类背景噪音从录音和麦克风流里压下去。它提供离线命令行、Python 库和实时插件三种形态下面按从易到难的顺序各跑一遍。一条命令处理 wav 录音安装只需一步预训练模型权重会随包自动下载pip install deepfilternet之后用内置 CLI 直接处理文件deepFilter path/to/noisy_audio.wav --output-dir out注意它只认 48kHz 的 wav采样率不符的音频要先转码。CLI 底层调用的是df/enhance.py的推理逻辑默认加载 DeepFilterNet3想换模型加-m DeepFilterNet2即可三代模型的权重都在models/目录里。在脚本里调用降噪如果降噪是你某条管线的一环比如语音识别前的预处理直接 import 两行核心 API 就行from df import enhance, init_df model, df_state, _ init_df() enhanced enhance(model, df_state, noisy_audio)noisy_audio传 numpy 数组返回值是处理后的同格式结果完整可运行的例子在scripts/external_usage.py。STFT/ISTFT 循环由 Rust 实现的 libDF 完成libDF/src/Python 端只是薄封装CPU 开销因此比纯 torch 实现低不少。调参也有对应开关--pf开启后滤波对特别吵的片段多压一点-D用来补偿 STFT 与模型 lookahead 引入的延迟。推理走 pytorch 后端有 GPU 时可直接用卡加速。给麦克风挂一个实时降噪设备需要跨应用、零配置生效的语音降噪时用 LADSPA 插件配合 PipeWire 建一个虚拟麦克风任何走系统音频输入的应用拿到的都是降噪后的声音。pipewire -c filter-chain.conf配置模板在ladspa/filter-chain-configs/deepfilter-mono-source.conf里照着填设备名即可插件源码见ladspa/src/。这条链路用的模型不带 lookahead最低延迟 20msSTFT 处理本身再加上音频主机的额外开销。三个模型怎么选模型设计目标特点适合场景DeepFilterNet低复杂度基线稳定论文基线对照实验、基础降噪DeepFilterNet2嵌入式实时参数量和算力最低树莓派、边缘设备DeepFilterNet3感知动机语音保留更自然对音质要求高的场景CLI 和 Python 默认加载 DF3。models/目录里另有 onnx 权重供 Rust 侧 tract 推理使用适合做部署链路对比。三个高频问题wav 处理不了报采样率错误48kHz 是硬性要求。批量处理前先用 ffmpeg 统一转码或走 Python 路径df/io.py里的load_audio会帮你重采样到模型要求的采样率。实时链路听感有延迟怎么补STFT 加模型 lookahead 会引入额外延迟-D--compensate-delay会在输出前补一段 padding 对齐时间轴。虚拟麦克风链路 20ms 起步是物理下限调不掉。想用自己的噪声数据训练训练版依赖为pip install deepfilternet[train]官方仅测试过 Linux。先用df/scripts/prepare_data.py把语音、噪声、RIR 打包成 HDF5再写一个dataset.cfg指定 train/valid/test 三组数据最后跑df/train.py。想在自己机器上把这套语音降噪跑通clone 下来照着上面三节各试一次即可git clone https://gitcode.com/GitHub_Trending/de/DeepFilterNet【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址: https://gitcode.com/GitHub_Trending/de/DeepFilterNet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考