基于WebRTC的噪声消除系统发布第二个版本

简介: WebRTC Noise Suppression工程主页&下载地址:http://tech.yushuai.xyz/WebRTC_deNoise/这是一个基于WebRTC的单通道语音增强系统,其为浮点版本。

WebRTC Noise Suppression

工程主页&下载地址:http://tech.yushuai.xyz/WebRTC_deNoise/

这是一个基于WebRTC的单通道语音增强系统,其为浮点版本。

该工程包括:

  1. common_audio:处理音频所需要的文件在的文件夹。
  2. ns:Noise Suppression处理的核心文件在的文件夹
  3. dr_wav.h:读取和解析wav文件。
  4. main.c:整个程序的主程序,系统的入口。
  5. timing.h:计时使用的头文件。

本工程具体算法流程图及函数解释详见链接1链接2

Directory description

目录 说明
WebRTC_NS-GCC GCC版本的程序
WebRTC_NS-VS VS版本的程序

以上文件夹各自目录下的工程名称解释如下:

v**_mm

其中:

  • **表示版本号。如20表示2.0版本。
  • mm表示浮点或顶点,其中float表示浮点版本,fixed表示定点版本。

Development Environment

v2.0版本

项目 内容
操作系统(VS环境) Windows 10 x64
VS版本 Microsoft Visual Studio 2019
操作系统(GCC环境) Cent OS6.4
操作系统(GCC) GCC 4.8

v1.0版本

项目 内容
操作系统(VS) Windows 10 x64
VS版本 Microsoft Visual Studio 2015
操作系统(GCC环境) Cent OS6.4
操作系统(GCC) GCC 4.8

ChangeLog

v2.0(2019.9.1)

  • 将原来参考的程序文件全部替换为从WebRTC中提取的文件,更加忠实于原工程版本。
  • 将程序中所有使用C++类的部分、使用函数模板的部分等全部替换为了C语言中的实现。
  • 将音频文件读取的函数整合到了主程序之中。
  • 2.0版本暂未提供GCC下工程,请暂时参考VS2019工程和1.0版本的GCC下工程,自行修改CMakeList.txt并进行编译。

v1.0(2019.7.18)

  • 参考cpuimage的程序实现了WebRTC_NS的功能。

Install

Linux下请确认是否安装GCC,确认方式,输入

$ gcc -v

若返回相应的GCC版本信息,则代表安装完成。
具体按照GCC方法请Google即可。

Usage

对于VS版本来说,你可以直接打开VS工程进行调试或者生成测试。

对于Linux下版本来说,请在工程目录下执行

$ mkdir build
$ cd ./build
$ cmake ..
$ make

即可编译链接完成,运行的时候,运行下面的命令

$ ./ns <input> <output>

在使用的时候,若文件目录中已存在与输出文件名同名的文件,则系统提示该文件已经存在,需要判断是否覆盖,若键入Nn,则拒绝覆盖,程序报错退出;若键入Yy,则覆盖。

Result

  • Time domain image

  • Frequency domain image

  • SNR & PESQ

Related Efforts

To be continued

Maintainers

@dqhplhzz2008.

Contact Me

If you have any questions, please submit a message.

Contributors

You can focus on my WeChat Official Account


At same time, welcome to [My blog[Simplified Chinese]](http://www.yushuai.xyz)!

License

GPL-3.0 © Yushuai Zhang

相关文章
|
10月前
|
机器学习/深度学习 自然语言处理 安全
【网安AIGC专题10.11】论文1:生成式模型GPT\CodeX填充式模型CodeT5\INCODER+大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)
【网安AIGC专题10.11】论文1:生成式模型GPT\CodeX填充式模型CodeT5\INCODER+大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)
161 0
|
算法
基于自动亮度对比度增强功能的可逆数据隐藏(Matlab代码实现)
基于自动亮度对比度增强功能的可逆数据隐藏(Matlab代码实现)
|
机器学习/深度学习 定位技术 计算机视觉
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(一)
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(一)
375 0
|
数据可视化
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(二)
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(二)
132 0
|
机器学习/深度学习 算法 机器人
盘点 | 从单目标优化到多目标优化,3D 打印材料开发进入 100X 倍速阶段
盘点 | 从单目标优化到多目标优化,3D 打印材料开发进入 100X 倍速阶段
126 0
|
前端开发 数据可视化 定位技术
3D激光slam:ALOAM---后端lasermapping最终篇地图更新及消息发布
本篇为ALOAM后端的最终篇,地图更新及消息发布。 **地图更新原因:** - 当地图调整之后,栅格有些空着的,需要进行填充 - 保障地图的实时更新 - 当前帧的点云加到地图中去,下帧会有更多的匹配点
3D激光slam:ALOAM---后端lasermapping最终篇地图更新及消息发布
|
算法 前端开发 JavaScript
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
|
机器学习/深度学习 人工智能 编解码
仅数百参数,Google发布「最小偏差」音频分类前端LEAF
Mel-filterbank经常被用于训练声音分类算法,然而它存在的偏差也令其有明显的局限性。近日,Google提出了一种优于Mel-filterbank的前端LEAF,这种前端可以创建出具有最小偏差的音频分类模型。
191 0
仅数百参数,Google发布「最小偏差」音频分类前端LEAF
|
5G 调度
带你读《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(七)
《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(七)
带你读《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(七)
|
BI 5G 调度
带你读《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(六)
《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(六)
带你读《5G 无线增强设计与国际标准》第二章接入增强2.1 2步随机接入(六)