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]!
License
GPL-3.0 © Yushuai Zhang