[AI codec]opus-1.6\dnn包含算法汇总和文件功能分类

备注:全部内容来自AI,记录下来后续慢慢消化

一、整体一览(6 大深度学习算法)

LPCNet / Neural PLC(神经网络丢包补偿)

DRED(DNN-based Redundant Encoding 神经网络冗余编码)

BbWENet(Bandwidth Extension 带宽扩展)

Fargan(高音质神经语音生成)

LACE / NOLACE(神经网络语音增强 / 降噪)

OSCE(Opus Speech Contrast Enhancement 语音对比度增强)

二、逐算法 + 逐文件 详细拆解

1、LPCNet & Neural PLC(神经网络丢包补偿)

作用:Opus 新一代 PLC(丢包隐藏)完全替代传统插值 PLC,使用 RNN / GRU 神经网络预测丢失的语音帧,音质接近无损。

原理:GRU 神经网络,基于历史语音预测未来丢包帧。10ms 帧级实时预测,极低复杂度(可跑在 ARM Cortex-M)

cpp 复制代码
lpcnet.h
lpcnet_enc.c
lpcnet_plc.c          <-- 核心:神经网络丢包补偿
lpcnet_private.h
lpcnet_tables.c
pitchdnn.c
pitchdnn.h
pitchdnn_data.c
pitchdnn_data.h
plc_data.c            <-- PLC 模型权重
plc_data.h

2、 DRED(神经网络冗余编码)

作用:用于弱网 / 丢包环境的轻量级神经网络冗余帧发送极小的冗余数据,丢包时直接恢复完整语音,比FEC强很多。

原理:RDOVAE(Rate-Distortion Optimized VAE),变分自编码器 VAE,提取语音核心潜码 (latent) 做冗余传输,丢包时用潜码完美恢复语音

cpp 复制代码
dred_coding.c
dred_coding.h
dred_compare.c
dred_config.h
dred_decoder.c
dred_decoder.h
dred_encoder.c
dred_encoder.h
dred_rdovae.h
dred_rdovae_constants.h
dred_rdovae_dec.c
dred_rdovae_dec.h
dred_rdovae_dec_data.c
dred_rdovae_dec_data.h
dred_rdovae_enc.c
dred_rdovae_enc.h
dred_rdovae_enc_data.c
dred_rdovae_enc_data.h
dred_rdovae_stats_data.c
dred_rdovae_stats_data.h

3、BbWENet(Bandwidth Extension 带宽扩展)

作用:窄带 8kHz → 宽带 16kHz / 超宽带 32kHz用神经网络补全高频信息,让电话音变高清。

原理:DNN 频带扩展,从低频语音谱预测高频谱,极低复杂度实时运行

cpp 复制代码
bbwenet_data.c        <-- 模型权重(9MB)
bbwenet_data.h

4、Fargan(Fast Generative Adversarial Network)

作用:超高音质神经语音生成用于 PLC、带宽扩展、降噪后的最终语音波形生成,音质接近原声。

原理:生成式对抗网络 GAN、声码器(vocoder)、从语音特征生成波形、Opus DNN 模块音质的核心。

cpp 复制代码
fargan.c
fargan.h
fargan_data.c         <-- 模型权重(21MB!最大的文件)
fargan_data.h
fargan_demo.c

5、LACE / NOLACE(语音增强 / 降噪)

作用:Lightweight Adaptive Complexity Enhancement实时降噪、去混响、语音舒压。

原理:DNN 语音降噪、低复杂度实时版、面向嵌入式 / 移动端优化

cpp 复制代码
lace_data.c
lace_data.h
nolace_data.c
nolace_data.h

6、OSCE(Opus Speech Contrast Enhancement)

作用:语音对比度增强让语音更清晰、更有穿透力,嘈杂环境更易听懂。

原理:DNN 频域增强、提升语音清晰度、WebRTC NS 同级但更强

cpp 复制代码
osce.c
osce.h
osce_config.h
osce_features.c
osce_features.h
osce_structs.h

三、公共基础模块(所有算法共用)

cpp 复制代码
nndsp.c          神经网络DSP库(卷积、GRU、激活函数)
nndsp.h
nnet.c           神经网络底层推理引擎
nnet.h
nnet_arch.h
nnet_default.c
vec.h            向量优化(x86/ARM NEON)
vec_avx.h
vec_neon.h
arm/             ARM Neon 优化
x86/             x86 AVX2 优化
burg.c           LPC 分析
freq.c           频域处理
lossgen.c        丢包模拟工具
相关推荐
能有时光6 小时前
PyTorch KernelAgent 源码解读 ---(4)--- ExtractorAgent
人工智能·pytorch·python
fthux7 小时前
GitZip Pro 源码解析:一个 GitHub 文件/文件夹下载扩展是如何工作的(一)整体架构与扩展入口
人工智能·ai·开源·github·open source
aqi007 小时前
15天学会AI应用开发(十七)使用LangGraph实现会话记忆功能
人工智能·python·大模型·ai编程·ai应用
xixixi777777 小时前
三大 AI 安全里程碑:Akamai 高危风险预警、智能体水印强制落地、PQC 量子安全全产业链统一
大数据·人工智能·安全·ai·大模型·智能体·政策
海石8 小时前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
AI小码8 小时前
LLM 应用的缓存工程:当每次 API 调用都在燃烧成本
java·人工智能·spring·计算机·llm·编程·api
code 小楊8 小时前
AI函数调用:Function Calling从理论到实战全解析
人工智能
海石8 小时前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
delishcomcn8 小时前
智切未来:AI算法如何重塑不干胶标签分切机的精度与效率边界
人工智能·神经网络·计算机视觉
奋发向前wcx8 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先