name: 音频语音恢复 description: CSI级别音频分析的音频取证和语音恢复指南。该技能应用于从低质量或低音量音频中恢复语音、增强退化录音、进行法医音频分析或转录困难音频。触发任务包括音频增强、噪声降低、语音隔离、法医认证或音频转录。
法医音频研究音频语音恢复最佳实践
全面的音频取证和语音恢复指南,提供CSI级别功能,用于从低质量、低音量或损坏的音频录音中恢复语音。包含8个类别中的45条规则,按影响优先排序,以指导音频增强、法医分析和转录工作流程。
何时应用
在以下情况下参考这些指南:
- 从嘈杂或低质量录音中恢复语音
- 增强音频用于转录或法律证据
- 进行法医音频认证
- 分析录音以检测篡改或拼接
- 构建自动化音频处理管道
- 转录困难或退化的语音
规则类别按优先级排序
| 优先级 | 类别 | 影响 | 前缀 | 规则数 |
|---|---|---|---|---|
| 1 | 信号保存与分析 | 关键 | signal- |
5 |
| 2 | 噪声分析与估计 | 关键 | noise- |
5 |
| 3 | 频谱处理 | 高 | spectral- |
6 |
| 4 | 语音隔离与增强 | 高 | voice- |
7 |
| 5 | 时间处理 | 中高 | temporal- |
5 |
| 6 | 转录与识别 | 中 | transcribe- |
5 |
| 7 | 法医认证 | 中 | forensic- |
5 |
| 8 | 工具集成与自动化 | 低中 | tool- |
7 |
快速参考
1. 信号保存与分析(关键)
signal-preserve-original- 永不修改原始录音signal-lossless-format- 使用无损格式进行处理signal-sample-rate- 保留原生采样率signal-bit-depth- 使用最大位深度进行处理signal-analyze-first- 先分析再处理
2. 噪声分析与估计(关键)
noise-profile-silence- 从静默段提取噪声分析noise-identify-type- 在降低前识别噪声类型noise-adaptive-estimation- 对非稳态噪声使用自适应估计noise-snr-assessment- 测量处理前后的信噪比noise-avoid-overprocessing- 避免过度处理和音乐伪影
3. 频谱处理(高)
spectral-subtraction- 对稳态噪声应用频谱减法spectral-wiener-filter- 使用Wiener滤波器进行最优噪声估计spectral-notch-filter- 应用陷波滤波器处理音调干扰spectral-band-limiting- 对语音应用频带限制spectral-equalization- 使用法医均衡恢复清晰度spectral-declip- 在其他处理前修复削波音频
4. 语音隔离与增强(高)
voice-rnnoise- 使用RNNoise进行实时ML降噪voice-dialogue-isolate- 使用源分离处理复杂背景voice-formant-preserve- 在音调操作中保留共振峰voice-dereverb- 应用去混响处理房间回声voice-enhance-speech- 使用AI语音增强服务快速获得结果voice-vad-segment- 使用VAD进行针对性处理voice-frequency-boost- 增强特定音素的频段
5. 时间处理(中高)
temporal-dynamic-range- 使用动态范围压缩保持电平一致性temporal-noise-gate- 应用噪声门静音非语音段temporal-time-stretch- 使用时间拉伸提高清晰度temporal-transient-repair- 修复瞬态损坏(点击、爆音、中断)temporal-silence-trim- 在导出前修剪静音和归一化
6. 转录与识别(中)
transcribe-whisper- 使用Whisper进行抗噪声转录transcribe-multipass- 使用多遍转录处理困难音频transcribe-segment- 分段音频进行针对性转录transcribe-confidence- 跟踪不确定词的置信度分数transcribe-hallucination- 检测和过滤ASR幻觉
7. 法医认证(中)
forensic-enf-analysis- 使用ENF分析进行时间戳验证forensic-metadata- 提取和验证音频元数据forensic-tampering- 检测音频篡改和拼接forensic-chain-custody- 记录证据的保管链forensic-speaker-id- 提取说话者特征用于识别
8. 工具集成与自动化(低中)
tool-ffmpeg-essentials- 掌握FFmpeg音频命令精髓tool-sox-commands- 使用SoX进行高级音频操作tool-python-pipeline- 构建Python音频处理管道tool-audacity-workflow- 使用Audacity进行可视化分析和手动编辑tool-install-guide- 安装音频取证工具链tool-batch-automation- 自动化批量处理工作流程tool-quality-assessment- 测量音频质量指标
必备工具
| 工具 | 目的 | 安装 |
|---|---|---|
| FFmpeg | 格式转换、过滤 | brew install ffmpeg |
| SoX | 噪声分析、效果 | brew install sox |
| Whisper | 语音转录 | pip install openai-whisper |
| librosa | Python音频分析 | pip install librosa |
| noisereduce | ML噪声降低 | pip install noisereduce |
| Audacity | 可视化编辑 | brew install audacity |
工作流程脚本(推荐)
使用捆绑脚本生成客观基准、创建工作流程计划并验证结果。
scripts/preflight_audio.py- 生成法医预飞报告(JSON或Markdown)。scripts/plan_from_preflight.py- 从预飞报告创建工作流程计划模板。scripts/compare_audio.py- 比较基准和处理后音频的客观指标。
使用示例:
# 1) 分析并捕获基准指标
python3 skills/.experimental/audio-voice-recovery/scripts/preflight_audio.py evidence.wav --out preflight.json
# 2) 生成工作流程计划模板
python3 skills/.experimental/audio-voice-recovery/scripts/plan_from_preflight.py --preflight preflight.json --out plan.md
# 3) 比较基准与处理后指标
python3 skills/.experimental/audio-voice-recovery/scripts/compare_audio.py \
--before evidence.wav \
--after enhanced.wav \
--format md \
--out comparison.md
法医预飞工作流程(在任何更改前执行)
与SWGDE数字音频增强最佳实践(20-a-001)和SWGDE法医音频最佳实践(08-a-001)对齐。
建立客观基准状态并计划工作流程,避免处理引入削波、伪影或虚假“完成”置信度。
使用 scripts/preflight_audio.py 捕获基准指标,并将报告与案件文件一起保存。
在处理前捕获和记录:
- 记录证据身份和完整性:路径、文件名、文件大小、SHA-256校验和、来源、格式/容器、编解码器
- 记录信号完整性:采样率、位深度、通道数、时长
- 测量基准响度和电平:LUFS/LKFS、真实峰值、峰值、RMS、动态范围、直流偏移
- 检测削波并记录削波样本百分比、峰值余量、精确时间范围
- 识别噪声分析:稳态与非稳态、主导噪声频带、信噪比估计
- 定位感兴趣区域(ROI)并记录时间范围和随时间变化
- 检查频谱内容并估计语音频带能量和清晰度风险
- 扫描时间缺陷:中断、不连续性、拼接、漂移
- 评估通道相关性和相位异常(如果立体声)
- 提取并保存元数据:时间戳、设备/模型标签、嵌入式注释
程序:
- 准备法医工作副本,验证哈希,保持原始未触动。
- 定位ROI和目标信号;记录精确时间范围和整个录音的变化。
- 评估清晰度和信号质量的挑战;将挑战映射到缓解策略。
- 识别所需处理并计划工作流程顺序以避免不需要的伪影。
使用
scripts/plan_from_preflight.py生成计划草案,并用案件特定决策完成。 - 按ITU-R BS.1770 / EBU R 128测量基准响度和真实峰值,并记录峰值/RMS/直流偏移。
- 检测削波和中断;如果存在削波,先进行削波修复或暂停并记录限制。
- 检查频谱内容和噪声类型;收集代表性噪声分析段并估计信噪比。
- 如果立体声,评估通道相关性和相位;记录异常。
- 创建基准听音日志(多设备)并定义清晰度和可听性的成功标准。
失败模式防护:
- 在捕获所有预飞字段前不处理。
- 记录每个过程、设置、软件版本和时间段以实现可重复性。
- 比较每个处理输出与未处理输入,评估清晰度和可听性进展。
- 避免过度处理;审查移除的信号(过滤残留)以避免移除目标信号成分。
- 中间文件保持未压缩,工具间移动时保留采样率/位深度。
- 针对原始执行最终审查;如果不满意,修订或停止并报告限制。
- 如果请求不可实现,沟通限制并不声明完成。
- 在声明完成前要求客观指标和A/B听音。
- 不单独依赖客观指标;与关键听音核实。
- 听音休息以避免长时间审查中的耳朵疲劳。
快速增强管道
# 1. 分析原始(运行预飞并捕获基准指标)
python3 skills/.experimental/audio-voice-recovery/scripts/preflight_audio.py evidence.wav --out preflight.json
# 2. 创建工作副本并校验和
cp evidence.wav working.wav
sha256sum evidence.wav > evidence.sha256
# 3. 应用增强
ffmpeg -i working.wav -af "\
highpass=f=80,\
adeclick=w=55:o=75,\
afftdn=nr=12:nf=-30:nt=w,\
equalizer=f=2500:t=q:w=1:g=3,\
loudnorm=I=-16:TP=-1.5:LRA=11\
" enhanced.wav
# 4. 转录
whisper enhanced.wav --model large-v3 --language en
# 5. 验证原始未更改
sha256sum -c evidence.sha256
# 6. 验证改进(客观比较 + A/B听音)
python3 skills/.experimental/audio-voice-recovery/scripts/compare_audio.py \
--before evidence.wav \
--after enhanced.wav \
--format md \
--out comparison.md
如何使用
阅读单个参考文件获取详细解释和代码示例:
参考文件
| 文件 | 描述 |
|---|---|
| AGENTS.md | 完整编译指南,包含所有规则 |
| references/_sections.md | 类别定义和排序 |
| assets/templates/_template.md | 新规则模板 |
| metadata.json | 版本和参考信息 |