首页 > 系统相关 >嵌入式Linux中的录音降噪方案

嵌入式Linux中的录音降噪方案

时间:2024-06-06 11:26:36浏览次数:26  
标签:tmp Linux 录音 嵌入式 sox wav 降噪 libgomp

降噪不仅只能从硬件入手,本文为您介绍一种嵌入式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.   将libgomp.so.1和libgomp.so.1.0.0拷贝到板卡/usr/lib/目录下。

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

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

amixer cset numid=36190
amixer cset numid=140
arecord -f cd -d 10/tmp/t.wav
aplay /tmp/t.wav

  

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),发现噪音几乎没有。

 

标签:tmp,Linux,录音,嵌入式,sox,wav,降噪,libgomp
From: https://www.cnblogs.com/vanxoak/p/18234762

相关文章

  • Linux 安装clickhouse(离线安装/二进制包安装)
    1、下载安装包地址:https://hub-stage.docker.com/ 2、上传文件到服务器cd/home/test直接解压执行脚本安装,解压后的文件所属者为clickhouse,建议添加一个clickhouse用户,直接用root启动最好指定运行用户tar-zxvf clickhouse-common-static-24.5.1.1763-amd64.tgzsudoclic......
  • linux 遇到硬盘设备名称会改变时,可以使用udev规则绑定硬盘
    udev规则绑定硬盘#lsblk-oNAME,MODEL,SERIALNAMEMODELSERIALsdaSamsungSSD860S3YLNM0NC12424A├─sda1├─sda2└─sda3├─cl-root└─cl-swapsdbSamsungSSD860S3ZBND0NC04099A└─sdb1sdcSamsungSSD......
  • Binary Ninja 4.0.5336 (macOS, Linux, Windows) - 逆向平台
    BinaryNinja4.0.5336(macOS,Linux,Windows)-逆向平台请访问原文链接:https://sysin.org/blog/binary-ninja/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgBinaryNinjaANewTypeofReversingPlatformBinaryNinja是一个交互式反编译器、反汇编器、调试......
  • Linux 35.5 + JetPack v5.1.3@ ego-planner编译安装
    Linux35.5+JetPackv5.1.3@ego-planner编译安装1.源由2.编译&安装Step1:依赖库安装Step2:建立工程Step3:编译工程Step4:安装工程3.问题汇总3.1planner/plan_env-OpenCV3.2uav_simulator/local_sensing-CUDA优化4.总结1.源由Fast-PlannerFUELRACEReg......
  • linux 基线检查加固
    修改vsftp回显信息ansible-ihoststask-mshell-a"grep'ftpd_banner'/etc/vsftpd/vsftpd.conf"sed-i'/ftpd_banner/s/^/#/g'/etc/vsftpd/vsftpd.confansible-ihoststask-mshell-a"echo'ftpd_banner="Authorize......
  • 【Linux】进程(6):环境变量
    大家好,我是苏貝,本篇博客带大家了解Linux进程(6):环境变量,如果你觉得我写的还不错的话,可以给我一个赞......
  • 2024年6月 AWVS -24.4.27详细安装教程附下载教程含windows和linux多版本
    免责声明请勿利用文章内的相关技术从事非法测试。由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,请务必遵守网络安全法律法规。本文仅用于测试,请完成测试后24小时删除,请勿用于商业用途。如文中内容涉及侵权......
  • Linux 安装 docker-compose
    什么是DockerComposeDockerCompose是一个单独的开源项目,DockerCompose可以高效管理和定义多个容器作用:批量容器编排web服务、redis、mysql、nginx等等多个容器docker-compose.ymlversion:'3.1'services:web:build:.ports:-"5000:5000"volumes:-.:/code-......
  • 【Linux多线程】线程的终止、等待和分离
    文章目录线程终止正常退出return退出pthread_exit函数终止线程pthread_cancel强制终止线程进程终止线程等待为什么需要等待线程?pthread_join函数分离线程pthread_detach函数线程终止下面给出终止线程的三种方式:正常退出:线程执行完它的函数之后return自动结......
  • 新手上路:Linux虚拟机创建与Hadoop集群配置指南①(未完)
    一、基础阶段Linux操作系统:创建虚拟机1.创建虚拟机打开VM,点击文件,新建虚拟机,点击自定义,下一步下一步这里可以选择安装程序光盘映像文件,我选择稍后安装选择linux系统位置不选C盘,创建一个新的文件夹VM来放置虚拟机,将虚拟机名字改为master方便后续识别(也可以改为其他......