编译支持x264 x265 的ffmeg 并成功移植到docker

    系统需要使用支h264, h265 的ffmpeg ,为了能够一次编译,到处执行,且不需要每次打docker 的时候都重新编译下ffmpeg,索性将整个ffmpeg 编译后打成个包,考到基础镜像中去,这里记录下整个过程。

    (1)下载X264 :    git clone http://git.videolan.org/git/x264.git

      (2) 下载x265 :     wget https://bitbucket.org/multicoreware/x265/downloads/x265_2.7.tar.gz

      (3)   安装 cmake, yum or apt-get 

      (4) 安装X264:          

cd x264

sudo ./configure --enable-shared --disable-asm

sudo make

sudo make install

    (5) ldconfig

    (6)安装 x265 

cd x265

cmake -G "Unix Makefiles"

make 

make install

   (7) 移动h265 库文件

cp x265.pc /usr/local/lib

cp libx265.so.151 /usr/lib/ # 按操作系统,可能需要其他库文件,提示确实,拷贝即可

apt-get install pkg-config 

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/ #不设置会找不到报错ERROR: x265 not found using pkg-config

pkg-config --list-all | grep x265 # 查看 是否已经添加x265到库中

  (8) 编译ffmpeg

sudo  ./configure --prefix=/usr/local/ --enable-shared --enable-libx264 --enable-gpl --enable-pthreads --disable-x86asm --enable-libx265

sudo make

sudo make install

    经过漫长等待,离大工告成只有最后一步。

    (9)  vi /etc/ld.so.conf 加入:/usr/local/ffmpeg/lib  执行  ldconfig

    (10)查看依赖:ldd /usr/local/bin/ffmpeg, 将所有so 和二进制文件打成tar 包

     (11) 拷贝文件,编写dockerfile     

COPY ./ffmpeg.tar.gz /data/ffmpeg.tar.gz
RUN cd /data && tar -xvf ffmpeg.tar.gz && cd ffmpeg && cp -f ffmpeg /usr/local/bin/ffmpeg  && cp -f lib64/* /lib/x86_64-linux-gnu/

        大功告成,使用只要操作系统一致,不管是真实操作系统还是docker, 都能拷贝后即可使用。

猜你喜欢

转载自my.oschina.net/u/2950272/blog/1788618
今日推荐