音频转码 php - 微信录音amr转mp3格式 ffmpeg centos 2018-10-18

    项目用到录音,前端小伙子采用微信录音。而微信录音文件是amr格式的。前端直接用不了。OK,那现在我们给他转成统一mp3格式吧。

    前端和php代码不贴了,其实很简单。就是微信jssdk来录音,然后通过多媒体接口下载录音。参考这篇https://www.cnblogs.com/zhongxia/p/5917163.html


    我们通过多媒体下载的录音文件为amr 我们怎么来转成mp3格式呢?


    没错,百度了挺多,有七牛云api转,有ffmpeg。我选了ffmpeg,,现在公司初步发展能节约成本就暂时先节约下来吧。(好吧,其实成本也没多少。其实最主要原因不是节约成本,而是公司还没申请下来,所以我没办法注册公司的七牛云账号)


     废话不多说。就是安装ffmpeg

    很简单--- 参考网站https://www.cnblogs.com/luojianqun/p/6291939.html


    首先跟参考网站一样 我也是选centos服务器  这里指出我的安装步骤 跟博主写的来,但是遇到错误的成功解决的步骤




    #第一步 yasm:汇编器,新版本的ffmpeg增加了汇编代码


    # wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

    # tar -xzvf yasm-1.3.0.tar.gz

    # cd yasm-1.3.0

    # ./configure

    # make

    # make install


    #第二步 lame:Mp3音频解码  (由于这个文件下载速度慢,到这个网站找到下载源来下载 大家自己度量 (https://sourceforge.net/projects/lame/files/lame/))


    # wget http://jaist.dl.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz

    # tar -xzvf lame-3.99.5.tar.gz

    # cd lame-3.99.5

    # ./configure

    # make

    # make install


     


    #第三步 amr支持


    # wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz

    # tar -xzvf opencore-amr-0.1.3.tar.gz

    # cd opencore-amr-0.1.3

    #  ./configure

    # make

    # make install


     


    #第四步 amrnb支持(这一步有遇到问题,就是./configure时报错 怎么整?报unzip的话 就 “yum install -y unzip zip”,如果报 utillity 就 “yum install -y patch”)


    # wget http://www.penguin.cz/~utx/ftp/amr/amrnb-11.0.0.0.tar.bz2

    # tar -xjvf amrnb-11.0.0.0.tar.bz2

    # cd amrnb-11.0.0.0

    # ./configure

    # make

    # make install


     


    #第五步 amrwb支持

    # wget http://www.penguin.cz/~utx/ftp/amr/amrwb-11.0.0.0.tar.bz2

    # tar -xjvf amrwb-11.0.0.0.tar.bz2

    # cd amrwb-11.0.0.0

    # ./configure

    # make

    # make install


     


    #第六步 安装ffmpeg (./configure 时会卡,稍等一会就好了。安装过程相对有点点慢。)

    #wget http://ffmpeg.org/releases/ffmpeg-2.5.3.tar.bz2

    # tar -xjvf ffmpeg-2.5.3.tar.bz2

    # cd ffmpeg-2.5.3

    # ./configure --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-shared

    # make

    # make install


     (小提示 大家在安装的时候记得多多 echo $?  如果为0就没问题。具体百度 echo $?的用法) 


    #加载配置


    #第七步 最后写入config后,终端运行ffmpeg命令,出现success和已安装的扩展,则运行成功。


    # ldconfig


    然后我测了一下,发现用不了

    根据博主的提示  


    # ldd `which ffmpeg`

    发现挺多为空的 我也就没跟着博主去找,因为凭感觉处理方法就在下面 


    # vi /etc/ld.so.conf 后面追加下面两行

    /usr/local/lib

    /usr/local/lib64


    #再运行一下


    #ldconfig 


    这下我们可以来测试了。我们传一个1.amr格式的文件到 然后我们用下面命令转MP3

    # ffmpeg -i 1.amr 1.mp3  

    OK,正常。。


    然后转我们 视频 mov格式要转成mp4呢?


    ffmpeg -i 1.MOV -vcodec copy -acodec copy 1.mp4



    PHP代码下次再说了。