嵌入式Linux中的錄音降噪方案
降噪不僅只能從硬件入手,本文為您介紹一種嵌入式Linux中的錄音降噪方案。該方案完全依靠軟件實現(xiàn),最大程度上降低投入。
1. 工具下載SoX(Sound eXchange)是一個開源的音頻處理工具,它可以用來讀取、轉(zhuǎn)換和處理各種音頻文件。SoX的源代碼主要由C語言編寫,它包含了大量的音頻處理算法和功能模塊,如音頻格式解析、音頻效果處理、音頻格式轉(zhuǎn)換等。
Sox源碼:https://sourceforge.net/projects/sox/files/sox/14.4.2/
libgomp.so.1庫安裝:
wget http://ftp.debian.org/debian/pool/main/g/gcc-10/libgomp1_10.2.1-6_armhf.deb
dpkg -x libgomp1_10.2.1-6_armhf.deb libgomp
2. SOX降噪使用
1. 將libgomp.so.1和libgomp.so.1.0.0拷貝到板卡/usr/lib/目錄下。
2. 將sox拷貝到/usr/bin/目錄下。
3. 開始錄音,執(zhí)行如下指令。
amixer cset numid=36190
amixer cset numid=140
arecord -f cd -d 10/tmp/t.wav
aplay /tmp/t.wav
4. 進(jìn)入錄音文件目錄,生成降噪配置文件并對錄音文件進(jìn)行降噪處理。
cd /tmp/
sox t.wav -n noiseprof noise.prof
sox t.wav 1.wav noisered noise.prof 0.21
其中t.wav:原錄音文件,1.wav為降噪后文件 0.21(更改0.21以調(diào)整采樣率的靈敏度級別(我發(fā)現(xiàn)0.2-0.3通常提供最佳結(jié)果))。
通過以上操作,對比播放錄音原文件(t.wav)和降噪后的文件(1.wav),發(fā)現(xiàn)噪音幾乎沒有。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。