如果在android客户端,需要NDK各种解码,所以采用了传到服务器后,服务器统一处理。服务器处理需要用到ffmpeg方法,网上搜了好多种帖子,各种坑,什么"[Warning] Convert aaa.amr false, maybe not a silk v3 encoded file."等等错误。目前试了下,至少在公元2020-08-25,还可用且简易
首先创建文件夹(这个随意)
# mkdir /opt/ffmpeg
进入文件夹后,进行下面操作
下载、安装lame
# cd /opt/ffmpeg
# wget http://downloads.sourceforge.net/lame/lame-3.100.tar.gz
# tar -zxvf lame-3.100.tar.gz
# cd lame-3.100
# ./configure --prefix=/usr/local
# make && make install
// 软连接,必须连接上,否则会报找不到的错误
# ln -s /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0
下载、安装ffmpeg
# cd /opt/ffmpeg
# wget http://ffmpeg.org/releases/ffmpeg-3.4.1.tar.bz2
# tar -jxvf ffmpeg-3.4.1.tar.bz2
# cd ffmpeg-3.4.1
# ./configure --prefix=/usr/local --pkg-config-flags=--static --enable-libmp3lame --disable-x86asm
# make && make install
安装git
# yum install git
在git上下载silk-v3-decoder
# cd /opt/ffmpeg
# git clone https://github.com/kn007/silk-v3-decoder.git
// 赋权限
# chmod 777 silk-v3-decoder
搞定,最后试验
# cd /opt/ffmpeg/silk-v3-decoder
# sh convert.sh aaa.amr mp3
[OK] Convert aaa.amr To aaa.mp3 Finish.






网友评论