基于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

相关文章
|
2月前
|
机器学习/深度学习 计算机视觉
YOLOv5改进 | 检测头篇 | DynamicHead支持检测和分割(不同于网上版本,全网首发)
YOLOv5改进 | 检测头篇 | DynamicHead支持检测和分割(不同于网上版本,全网首发)
129 0
|
8月前
2023年电赛---运动目标控制与自动追踪系统(E题)OpenART mini的代码移植到OpenMV
2023年电赛---运动目标控制与自动追踪系统(E题)OpenART mini的代码移植到OpenMV
101 0
|
11月前
|
机器学习/深度学习 定位技术 计算机视觉
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(一)
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(一)
235 0
|
11月前
|
数据可视化
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(二)
即插即用 | CEASA模块给你所有,小目标精度提升的同时速度也变快了(二)
82 0
|
11月前
|
机器学习/深度学习 存储 编解码
超轻超快分割模型 | PP-MobileSeg 安卓手机就可以实时运行
超轻超快分割模型 | PP-MobileSeg 安卓手机就可以实时运行
627 0
|
11月前
|
机器学习/深度学习 缓存 算法
YOLOv5-Lite 树莓派实时 | 更少的参数、更高的精度、更快的检测速度(C++部署分享)(一)
YOLOv5-Lite 树莓派实时 | 更少的参数、更高的精度、更快的检测速度(C++部署分享)(一)
271 0
|
11月前
|
tengine 数据可视化 API
YOLOv5-Lite 树莓派实时 | 更少的参数、更高的精度、更快的检测速度(C++部署分享)(二)
YOLOv5-Lite 树莓派实时 | 更少的参数、更高的精度、更快的检测速度(C++部署分享)(二)
258 0
|
11月前
|
机器学习/深度学习 编解码 计算机视觉
【超越EfficientNets】LambdaNet让网络无需注意力也能更快更高更强(附paper下载)
【超越EfficientNets】LambdaNet让网络无需注意力也能更快更高更强(附paper下载)
56 0
|
11月前
|
机器学习/深度学习 数据采集 人工智能
中科大提出统一输入过滤框架InFi:首次理论分析可过滤性,支持全数据模态
中科大提出统一输入过滤框架InFi:首次理论分析可过滤性,支持全数据模态
196 0
|
11月前
|
机器学习/深度学习 数据可视化
CVPR2023 | 无需动态区域分割!多帧深度估计新进展:跨线索注意力机制提升动态区域精度
CVPR2023 | 无需动态区域分割!多帧深度估计新进展:跨线索注意力机制提升动态区域精度
283 0