zoukankan      html  css  js  c++  java
  • 【转】Compile FFmpeg on CentOS 6.x

    This guide is based on a minimal CentOS installation and will install FFmpeg with several external encoding libraries. This guide is kept relatively up to date with FFmpeg development and library sources (see the page history for changelog), and should also work for recent Red Hat Enterprise Linux (RHEL) and Fedora.

    Note: The # indicates that the command should be executed as superuser or root.

    Preparation

    Remove any existing packages:

    # yum erase ffmpeg x264 x264-devel

    Get the dependencies:

    # yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig wget zlib-devel

    Make a source directory:

    mkdir ~/ffmpeg-source

    Installation

    Yasm

    Yasm is an assembler used by x264 and FFmpeg.

    cd ~/ffmpeg-source
    wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
    tar xzvf yasm-1.2.0.tar.gz
    cd yasm-1.2.0
    ./configure
    make
    # make install

    Note: If you do not require certain encoders you may skip the relevant section and then remove the appropriate ./configure option in FFmpeg. For example, if libvorbis is not needed, then skip that section and then remove –enable-libvorbis from the Install FFmpeg section.

    x264

    H.264 video encoder.

    cd ~/ffmpeg-source
    git clone git://git.videolan.org/x264
    cd x264
    ./configure --enable-static --enable-shared
    make
    # make install

    libfdk_aac

    AAC audio encoder.

    cd ~/ffmpeg-source
    git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git
    cd fdk-aac
    autoreconf -fiv
    ./configure --disable-shared
    make
    # make install

    LAME

    MP3 audio encoder.

    cd ~/ffmpeg-source
    wget http://downloads.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 --disable-shared --enable-nasm
    make
    # make install

    libogg

    Required for libtheora and libvorbis.

    cd ~/ffmpeg-source
    wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz
    tar xzvf libogg-1.3.0.tar.gz
    cd libogg-1.3.0
    ./configure --disable-shared
    make
    # make install

    libtheora

    Theora video encoder.

    cd ~/ffmpeg-source
    wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz
    tar xzvf libtheora-1.1.1.tar.gz
    cd libtheora-1.1.1
    ./configure --disable-shared
    make
    # make install

    libvorbis

    Vorbis audio encoder.

    cd ~/ffmpeg-source
    wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.gz
    tar xzvf libvorbis-1.3.3.tar.gz
    cd libvorbis-1.3.3
    ./configure --disable-shared
    make
    # make install

    libvpx

    VP8 video encoder.

    cd ~/ffmpeg-source
    git clone http://git.chromium.org/webm/libvpx.git
    cd libvpx
    ./configure
    make
    # make install

    FFmpeg

    cd ~/ffmpeg-source
    git clone git://source.ffmpeg.org/ffmpeg
    cd ffmpeg
    ./configure --enable-nonfree --enable-gpl --enable-libfdk_aac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264
    make
    # make install

    Compilation is now complete and ffmpeg should now be ready to use. The rest of this guide shows how to update or remove FFmpeg.

    Note: Keep the ffmpeg-source directory and all contents if you intend to update or uninstall as shown below.

    Error with libx264 not found:

    yum install x264-devel

    yum install x264

    Updating x264, libvpx, and FFmpeg

    First uninstall x264, libvpx, and FFmpeg:

    cd ~/ffmpeg-source/x264
    # make uninstall
    cd ~/ffmpeg-source/ffmpeg
    # make uninstall
    cd ~/ffmpeg-source/libvpx
    # make uninstall

    Update x264

    cd ~/ffmpeg-source/x264
    make distclean
    git pull

    Then run ./configuremake, and make install as shown in the Install x264 section.

    Update libvpx

    cd ~/ffmpeg-source/libvpx
    make clean
    git pull

    Then run ./configuremake, and make install as shown in the Install libvpx section.

    Update FFmpeg

    cd ~/ffmpeg-source/ffmpeg
    make distclean
    git pull

    Then run ./configuremake, and make install as shown in the Install FFmpeg section.

    Reverting changes made by this guide

    cd ~/ffmpeg-source/yasm-1.2.0
    # make uninstall
    cd ../x264
    # make uninstall
    cd ../lame-3.99.5
    # make uninstall
    cd ../libogg-1.3.0
    # make uninstall
    cd ../libvorbis-1.3.3
    # make uninstall
    cd ../libvorbis-1.3.3
    # make uninstall
    cd ../libvpx
    # make uninstall
    cd ../ffmpeg
    # make uninstall
    rm -rf ~/ffmpeg-source
    # yum erase autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig wget zlib-devel

    This entry was posted in Centos, FFmpeg on April 30, 2013.

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    条件编译
    宏定义
    联合体,枚举类型
    结构体的概念
    C#程序报找不到时区错误
    C# ArrayList和List的区别
    C# 无法将类型为“__DynamicallyInvokableAttribute”的对象强制转换为类型...
    C# readonly与const区别
    C#特性
    Linux vsftpd 安装配置使用
  • 原文地址:https://www.cnblogs.com/yuliyang/p/3590390.html
Copyright © 2011-2022 走看看