yasm安装
Yasm是一个完全重写的NASM汇编。目前,它支持x86和AMD64指令集。
接受NASM和GNU汇编器(gas)语法,产出二进制, ELF32 , ELF64 , COFF , Mach - O的( 32和64 ) , RDOFF2 ,的Win32和Win64对象的格式,并生成STABS 调试信息的来源,DWARF 2 ,CodeView 8格式。
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm-1.3.0.tar.gztar -zxvf yasm-1.3.0.tar.gz
./configure
make
make install
lame安装
用于mp3编码。由于专利版权问题,ffmpeg默认不带mp3格式编码器,但是有mp3格式解码器。
wget https://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz/download
#下载下来的文件名是down重命名为实际的名字
mv download lame-3.99.5.tar.gz
tar -zxvf lame-3.99.5.tar.gz
cd ./lame-3.99.5
./configure
make
make install
#编译安装后并没有加入系统库中,添加如下软连接加入系统库
ln -s /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0
FFmpeg安装
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。
wget http://www.ffmpeg.org/releases/ffmpeg-3.2.tar.gz
tar -zxvf ffmpeg-3.2.tar.gz
cd ffmpeg-3.2
#编译配置,使mp3编码器生效
./configure --enable-libmp3lame
make
make install
执行如下命令查看对mp3格式的支持情况,结果DEA.L. mp3,其中D表示可以解码,E表示可以编码
ffmpeg -codecs |grep mp3
ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17)
configuration: --enable-libmp3lame
libavutil 55. 34.100 / 55. 34.100
libavcodec 57. 64.100 / 57. 64.100
libavformat 57. 56.100 / 57. 56.100
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
DEA.L. mp3 MP3 (MPEG audio layer 3) (decoders: mp3 mp3float ) (encoders: libmp3lame )
D.A.L. mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3) (decoders: mp3adu mp3adufloat )
D.A.L. mp3on4 MP3onMP4 (decoders: mp3on4 mp3on4float )
amr格式是Android系统录音常见格式,测试amr格式音频转mp3格式。命令如下:
ffmpeg -i 1.amr 1.mp3
执行命令后,会生成一个1.mp3的文件,下载下来播放一下,如果播放成功说明转码成功了。
参考文献: