基於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]!

License

GPL-3.0 © Yushuai Zhang

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章