# DeepFilterNet 录音降噪：清理风扇声并回听弱读字

已实际在CPU运行DeepFilterNet3并保存真实输出与逐文件检查；输入包含原创程序音乐或系统朗读，结果只代表当前12秒练习。当前已知合成参考的SNR由0.323dB变为13.74dB，不能外推其他录音。

## 输入来源

{
  "speech": "macOS Tingting system TTS reading the original text; not a human singer or cloned voice",
  "music": "Original deterministic synthesized drums, bass, guitar-like pluck and piano-like harmonics; not recorded instruments or model outputs",
  "seed": 50015,
  "durationSeconds": 12,
  "sampleRate": 48000
}


## 操作

### 1. 听原音并确定要保留的字

先听“十二台设备”和“第四号接口”。clean-speech.wav是加噪前的系统朗读，fan-noise.wav为程序噪声；两者合成的输入不代表真实房间所有噪声。

```sh
python3 verify.py
```

### 2. 固定48kHz单声道输入

本页使用12秒48kHz PCM WAV。Rust deep-filter与Python deepFilter入口不同，前者当前只支持48kHz WAV；不能把Python命令参数直接塞给Rust二进制。

### 3. 指定模型与包版本

隔离安装DeepFilterNet 0.5.6及兼容Torch/torchaudio。本页显式选择DeepFilterNet3，避免README默认模型说明与实际代码默认值不同；首次权重下载单独记录。

```sh
python -m pip install 'deepfilternet==0.5.6' 'torch==2.5.1' 'torchaudio==2.5.1' 'numpy<2'
```

### 4. 运行默认开启补偿的Python入口

DeepFilterNet 0.5.6 的Python deepFilter默认开启延迟补偿，关闭时才加--no-delay-compensation；该版本没有--compensate-delay参数。若权重已下载到本地，把-m值换成包含config.ini的模型目录。

```sh
deepFilter -m DeepFilterNet3 --output-dir enhanced noisy-speech.wav
```

### 5. 回听弱读字而非只看降噪量

重点听数字、句尾和擦音；静音段变安静但字被吞掉仍需记录。--pf会加强部分噪声衰减，首次不加；以后只改这一项做A/B，不能一次变多项再归因。

### 6. 对齐后计算输入与输出差异

用加噪前的源参考对齐真实输出，再看已知输入信噪比和处理后误差。这个数值只说明当前合成样本，不能替代真人盲听或宣传通用提升百分比。

```sh
python3 verify.py --file enhanced/noisy-speech_DeepFilterNet3.wav
```

### 7. 保留原录音和处理版本

导出原音、真实降噪音轨、模型名和试听备注。后续转录时可比较两版文字，但本页不把降噪成功直接等同于识别准确。

## 文件验证

```sh
python3 verify.py
python3 verify.py --self-test
```

验证PCM16音频的格式、帧和输入hash，不证明模型质量。原始合成源轨不是分离结果。

官方来源：https://github.com/Rikorose/DeepFilterNet
