介绍一种嵌入式Linux中的录音降噪方案

电子说

1.3w人已加入

描述

 

降噪不仅只能从硬件入手,本文为您介绍一种嵌入式Linux中的录音降噪方案。该方案完全依靠软件实现,最大程度上降低投入。

1. 工具下载

SoX(Sound eXchange)是一个开源的音频处理工具,它可以用来读取、转换和处理各种音频文件。SoX的源代码主要由C语言编写,它包含了大量的音频处理算法和功能模块,如音频格式解析、音频效果处理、音频格式转换等。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.1.将libgomp.so.1和libgomp.so.1.0.0拷贝到板卡/usr/lib/目录下。

1.2.将sox拷贝到/usr/bin/目录下。

1.3.开始录音,执行如下指令。

 

amixer cset numid=36 190 
amixer cset numid=1 40
arecord -f cd -d 10 /tmp/t.wav
aplay /tmp/t.wav

 

1.4.进入录音文件目录,生成降噪配置文件并对录音文件进行降噪处理。

 

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以调整采样率的灵敏度级别(我发现0.2-0.3通常提供最佳结果))。

通过以上操作,对比播放录音原文件(t.wav)和降噪后的文件(1.wav),发现噪音几乎没有。

 



审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分