有关于ubuntu16.04 ffmpeg的编译

ffmpeg的下载链接:点击打开链接

下载后按照下面的操作步骤即可安装成功。

一.  安装yasm库(有助于提高ffmpeg的编解码效率)
     1). 解包yasm-1.3.0.tar.gz
         进入yasm-1.3.0目录
     2). 执行./configure产生Makefile 
     3). make  && make install
    安装cmake工具(编译c++源码工程的工具, 编译libx265库用到)
    apt-get install cmake
    安装好后,检查cmake的版本
    cmake --version 如果大于3.5则不需安装cmake-3.5
    否则需安装cmake-3.5
    1). 解包cmake-3.5.0.tar.gz
    进入cmake-3.5.0目录
    2). 执行./configure产生Makefile
    configure完成后, 通过"echo $?"查看执行结果是否成功.
    如果不是0,则不成功, 不能作下一步.
    3). 执行make && make install


----------------------------------------------------------------------


二. 编译h264编解码库
    1). 解包last_x264.tar.bz2
    进入x264-snapshot-20160319-2245目录
    2). 执行"./configure --enable-shared --enable-static"
       enable-shared 加上编译出动态库的支持
       enable-static 加上编译出静态库的选项
    3). make && make install
    安装完成后, h264库的头文件在/usr/local/include
               动静态库在/usr/local/lib
           x264.pc库的配置文件在/usr/local/lib/pkgconfig


-----------------------------------------------------------------------


三. 编译h265编解码库
    1). 解包x265_1.9.tar.gz
    进入x265_1.9目录里的build/linux目录
    2). 在终端下执行目录下的make-Makefiles.bash脚本文件
    执行时会弹出界面选项, 按'c'再按'g'键保存退出
    3). make 
    如出现如下错误信息:
    x265_1.9/source/common/param.cpp:55: 错误:‘char* strtok_r(char*, const char*, char**)’先被声明为‘extern’后又被声明为‘static’
    修改x265_1.9/source/common/param.cpp的55行, 把"static"关键字去掉
    4). make install
    h265库的头文件在/usr/local/include
    动静态库在/usr/local/lib
    x265.pc库的配置文件在/usr/local/lib/pkgconfig


--------------------------------------------------------------------------


四.  编译ffmpeg库
    1). 解包ffmpeg-3.0.tar.bz2
    进ffmpeg-3.0目录里
    2). 在终端里输入命令: export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
    ./configure --disable-debug --enable-libx264 --enable-libx265 --enable-gpl --enable-shared
    注意查看输出的信息:
    enabled program: 是否有ffplay(没有的话,apt-get install ffmpeg ,会替换掉一些库,亲测)  
    3). make && make install    
    cp /usr/local/lib/libx* /lib64/
    cp /usr/local/lib/libav*  /lib64/
    cp  /usr/local/lib/libsw* /lib64/
    cp /usr/local/lib/libpostproc* /lib64/
    也可以不作上面cp的操作,但在编译时需指定库的路径


---------------------------------------------------------------------------


完成后, 有命令: ffmpeg   ffplay
    ffmpeg -decoders  //列出可用的解码器   H264  H265
    ffmpeg -encoders  //列出可用的编码器
    ffmpeg -devices   //列出可支持的设备


你可能感兴趣的:(Ubuntu,16.04)