zoukankan      html  css  js  c++  java
  • CentOS上编译FFmpeg

    一、在CentOS上编译FFmpeg

    • ffmpeg_sources –将源文件下载到的位置。完成本指南后,可以根据需要将其删除。
    • ffmpeg_build –将在其中构建文件和安装库的位置。完成本指南后,可以根据需要将其删除。
    • bin – 将安装生成的二进制文件(ffmpegffprobex264x265)。

    (一)获取依赖关系

    注意:表明该命令应超级用户或根被执行,并且仅此指南中所需的命令。

    获取依赖项。这些是编译所必需的,但是如果愿意,可以在完成后将其删除(make除外;默认情况下应安装它,并且很多东西都取决于它)。

    #yum install autoconf automake bzip2 bzip2-devel cmake freetype-devel gcc gcc-c ++ git libtool make mercurial pkgconfig zlib-devel

    在主目录中,新建一个目录,以将所有源代码放入:

    mkdir ~/ffmpeg_sources

    (二)编译与安装

    提示:如果不需要某些编码器,则可以跳过相关部分,然后在FFmpeg中删除相应的./configure选项。例如,如果不需要libvpx,则跳过该部分,然后从“ 安装FFmpeg”部分中删除--enable-libvpx

    (如果已下载安装包,直接进行解压编译,跳过远程下载)

    1.      NASM

    一些库使用的汇编程序。强烈建议您使用,否则生成的结果可能会很慢。

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载
    tar xjvf nasm-2.14.02.tar.bz2
    cd nasm-2.14.02
    ./autogen.sh
    ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
    make
    make install

    2.      Yasm

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载
    tar xzvf yasm-1.3.0.tar.gz
    cd yasm-1.3.0
    ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
    make
    make install

    3.      libx264

    H.264视频编码器。有关更多信息和用法示例,请参阅《H.264编码指南》

    要求ffmpeg使用--enable-gpl --enable-libx264配置。

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载
    tar xzvf x264.tar.gz
    cd x264
    PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
    make
    make install

    4.      libx265

    H.265 / HEVC视频编码器。有关更多信息和用法示例,请参阅《H.265编码指南》

    要求ffmpeg用--enable-gpl --enable-libx265配置。

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载()
    tar xzvf x265.tar.gz
    cd ~/ffmpeg_sources/x265/build/linux
    cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
    make
    make install

    5.      libvpx

    VP8 / VP9视频编码器和解码器。有关更多信息和用法示例,请参阅《VP9视频编码指南》

    需要使用--enable-libvpx配置ffmpeg。

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载()
    tar xf libvpx-1.8.2.tar.gz
    cd libvpx-1.8.2
    ./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm
    make
    make install

    6.      FFmpeg

    cd ~/ffmpeg_sources
    --如果已下载安装包,直接进行解压编译操作,跳过远程下载()
    tar xjvf ffmpeg-snapshot.tar.bz2
    cd ffmpeg
    PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure 
      --prefix="$HOME/ffmpeg_build" 
      --pkg-config-flags="--static" 
      --extra-cflags="-I$HOME/ffmpeg_build/include" 
      --extra-ldflags="-L$HOME/ffmpeg_build/lib" 
      --extra-libs=-lpthread 
      --extra-libs=-lm 
      --bindir="$HOME/bin" 
      --enable-gpl 
      --enable-libfreetype 
      --enable-libvpx 
      --enable-libx264 
    
      --enable-nonfree
    make
    make install
    hash -d ffmpeg

    (三)FFmpeg 完毕:

    安装成功后:输入ffmpeg -version;显示如下图,则安装成功

    参考文档:http://trac.ffmpeg.org/wiki/CompilationGuide/Centos
    L-Rui
  • 相关阅读:
    忙碌的一月
    SharePoint Portal Server 2003书籍计划最新进展
    如何判断Assembly是Debug还是Release?
    C#和C++的一个有意思的差别
    Enterprise Development Reference Architecture(ShadowFax)
    一个“轻量级”的SharePoint文档流转WebPart
    11月25日下午14:00,CSDN在线SharePoint TechTalk
    到北京后的第一篇随笔
    SOA & Messaging Patterns
    操作SharePoint Object Model完成两项操作的文档
  • 原文地址:https://www.cnblogs.com/Rui6/p/14738072.html
Copyright © 2011-2022 走看看