centOS安装音频处理软件Sox

Sox不能直接处理音频,需要其他依赖包。

yum install gcc-c++ libmad libmad-devel libid3tag libid3tag-devel lame lame-devel  flac-devel libvorbis-devel make

如果报错需要root权限,加sudo:

sudo yum install gcc-c++ libmad libmad-devel libid3tag libid3tag-devel lame lame-devel  flac-devel libvorbis-devel make

1、首先查看CentOS7 系统有没有安装wget:

rpm -qa|grep wget

如果安装了,会显示相关版本信息,例如:

wget-1.14-15.el7_4.1.x86_64

如果没有安装,则通过yum安装wget:

yum install -y wget

2、通过wget远程下载Sox及其相关依赖包:

下载lame:

wget https://sourceforge.net/projects/lame/files/latest/download/lame-3.100.tar.gz

如果报验证信息过期,可用以下命令下载:

wget --no-check-certificate  https://sourceforge.net/projects/lame/files/latest/download/lame-3.100.tar.gz

下载sox:

wget https://sourceforge.net/projects/sox/files/sox/14.4.2/sox-14.4.2.tar.gz

如果验证信息过期,同样使用以下命令:

wget --no-check-certificate https://sourceforge.net/projects/sox/files/sox/14.4.2/sox-14.4.2.tar.gz

3、解压并编译上述依赖包:

lame 解压并进行编译
	tar -zxvf lame-3.100.tar.gz
	cd lame-3.100
	./configure
	make && make install
	
sox 解压并进行编译
	tar -zxvf sox-14.4.2.tar.gz
	cd sox-14.4.2
	./configure  --prefix=$HOME #这里一定加prefix参数
	make
软件包全部安装完之后执行sox, 如果出现sox的相关介绍则表示安装成功
常见错误
	1, 执行sox后,可能会出现以下错误
		1.1,sox: error while loading shared libraries: libmad.so.0: cannot open shared object file: No such file or directory
		1.2,sox: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory
		1.3,sox: error while loading shared libraries: libamrnb.so.3: cannot open shared object file: No such file or directory
	解决方法
		1.1 | 1.2 解决
			find / -name libmad.so.0, 
			find / -name libmp3lame.so.0
		找到对应文件所在目录后,在/etc/ld.so.conf文件中追加即可(图-conf-edit-one)
		1.3 解决
			find / -name libamrnb.so.3 找到资源文件所在的位置(通常为/usr/local/bin目录下)
			在/etc/ld.so.conf.d/目录下新建文件 libso.conf并将搜到的文件路径进行填写最后保存退出
			
			
	然后执行ldconfig -v 即可

测试:

将file.amr转为wav格式并保存为test.wav:

sox file.amr -b 16 test.wav channels 1 rate 16k fade 3 norm

你可能感兴趣的:(服务器,centos)