WebRTC Noise Suppression
工程主页&下载地址:http://tech.yushuai.xyz/WebRTC_deNoise/
这是一个基于WebRTC的单通道语音增强系统,其为浮点版本。
该工程包括:
- common_audio:处理音频所需要的文件在的文件夹。
- ns:Noise Suppression处理的核心文件在的文件夹
- dr_wav.h:读取和解析wav文件。
- main.c:整个程序的主程序,系统的入口。
- timing.h:计时使用的头文件。
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>
在使用的时候,若文件目录中已存在与输出文件名同名的文件,则系统提示该文件已经存在,需要判断是否覆盖,若键入N或n,则拒绝覆盖,程序报错退出;若键入Y或y,则覆盖。
Result
- Time domain image
- Frequency domain image
- SNR & PESQ
Related Efforts
To be continued
Maintainers
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