Home > 日記2014前期 | 開発 > CentOS6.3にてffmpegをビルドした時の記録 その2

CentOS6.3にてffmpegをビルドした時の記録 その2

前回の記事からの更新です。

今回は、AAC関係のものをビルドに含めているので再配布不可なビルドです。
ffmpegを2.1系にした事で、VP9, H265/HEVC が使えるようになっています。

前回からの変更点

  • ビルドに以下を追加
    • gmerlin (frei0rの依存)
    • frei0r
    • libaacplus
    • mp4v2
    • libfaac
    • fdk-aac
  • ffmpeg-2.0.1からffmpeg-2.1.1にバージョンアップ
  • libblurayを0.3から0.5にバージョンアップ
  • vid.stabのバージョンを 9ed9836e10567f76decfa7fac178bb70a7bb9452 に固定
    • trunkや0.98はvsLocalmotions2TransformsSimpleが消えていてffmpegのビルドでエラーになるため
    • またこのバージョンにした事でCMakeファイルの場所がsrcから直下に変更された
  • libvpxを1.2.0から1.3.0にバージョンアップ
    • vp9のため

 

まず最初に

Minimal環境だとコンパイラ含めて何もインストールされていないので、必要なものをyumで入れる。

$ yum update -y
$ reboot
$ uname -r
2.6.32-358.14.1.el6.x86_64
yum install -y glibc-devel glibc-headers glibc-static
yum install -y wget
yum install -y patch
yum install -y xz unzip
yum install -y bzip2-devel
yum install -y gcc gcc-c++ make automake libtool
yum install -y fontconfig fontconfig-devel
yum install -y libxml2-devel
yum install -y java-1.6.0-openjdk-devel.x86_64
yum install -y ncurses-devel ncurses-static ncurses-term
yum install -y libpng libpng-devel libpng-static
yum install -y libtiff libtiff-devel libtiff-static
yum install -y lcms lcms-devel lcms-libs
yum install -y git
yum install -y openssl-devel
yum install -y libsndfile libsndfile-devel

yum install -y opencv-devel cairo-devel
yum install -y gnutls-devel
yum install -y fftw fftw-devel fftw-static

openjpegのビルドにはcmakeが必要だが、CentOS6.3のrpmではバージョンが低くて怒られてしまうため、別途新しいものをインストールしている。

ldconfigの設定を追加する。

$ vi /etc/ld.so.conf.d/ffmpeg.conf
/usr/local/ffmpeg-libs/lib

$ ldconfig  # キャッシュの更新

環境変数の設定

都度設定しても良いが、面倒なのでbashrcにでも書いておく。

export PATH=/usr/local/ffmpeg-libs/bin:$PATH
export PKG_CONFIG_PATH=/usr/local/ffmpeg-libs/lib/pkgconfig

CMake

RPMと干渉しないように/usr/localではない場所にインストールする。

wget http://www.cmake.org/files/v2.8/cmake-2.8.11.2.tar.gz
tar zxvf cmake-2.8.11.2.tar.gz
cd cmake-2.8.11.2
./bootstrap --parallel=4 --prefix=/usr/local/ffmpeg-libs
make
make install

環境変数の設定をする。

export CMAKE_ROOT=/usr/local/ffmpeg-libs/share/cmake-2.8

公式) http://www.cmake.org/

YASM

wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar zxvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://yasm.tortall.net/

NASM

lameで必要なため。

wget http://www.nasm.us/pub/nasm/releasebuilds/2.10.09/nasm-2.10.09.tar.xz
tar Jxvf nasm-2.10.09.tar.xz
cd nasm-2.10.09
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://modplug-xmms.sourceforge.net/

fontconfig

CentOSにRPMが存在するが、.aファイルが存在しないのでstaticリンクができない。そのため、自分でビルドして入れる。が、今回はdynamic linkのままにするので今回はビルドしない。

fribidi

libassのビルドで必要なため。

wget http://fribidi.org/download/fribidi-0.19.5.tar.bz2
tar jxvf fribidi-0.19.5.tar.bz2
cd fribidi-0.19.5
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://fribidi.org/

libass

wget https://libass.googlecode.com/files/libass-0.10.1.tar.xz
tar Jxvf libass-0.10.1.tar.xz
cd libass-0.10.1
FRIBIDI_CFLAGS=-I/usr/local/ffmpeg-libs/include PKG_CONFIG_PATH=/usr/local/ffmpeg-libs/lib/pkgconfig ./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) https://code.google.com/p/libass/

libbluray

wget ftp://ftp.videolan.org/pub/videolan/libbluray/0.3.0/libbluray-0.3.0.tar.bz2
tar -jxvf libbluray-0.3.0.tar.bz2
cd libbluray-0.3.0
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.videolan.org/developers/libbluray.html

libcaca

動画のピクセルを文字に変換して出力するライブラリ。(ターミナルでアスキー表現を用いて画像っぽく見せるためのもの)
jdkを入れちゃったのでjavaが入っていると認識しちゃっているが、java用のライブラリを作るときにエラーになる(インクルードパスを設定してあげれば良いだけだが)
pythonは make install 時にエラーになるので無効化した。

wget http://caca.zoy.org/files/libcaca/libcaca-0.99.beta18.tar.gz
tar zxvf libcaca-0.99.beta18.tar.gz
cd libcaca-0.99.beta18
./configure --prefix=/usr/local/ffmpeg-libs --disable-java --disable-python
make
make install

公式) http://caca.zoy.org/wiki/libcaca

libgsm

エラーがぼろぼろ出るが、基本的にrmに失敗しているだけなのでビルド自体は通っている。

wget http://www.quut.com/gsm/gsm-1.0.13.tar.gz
tar zxvf gsm-1.0.13.tar.gz
cd gsm-1.0-pl13
vi Makefile
# 以下の部分を修正する
INSTALL_ROOT    = /usr/local/ffmpeg-libs
GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/include
make
make install

公式) http://www.quut.com/gsm/

libmodplug

wget "http://downloads.sourceforge.net/project/modplug-xmms/libmodplug/0.8.8.4/libmodplug-0.8.8.4.tar.gz?r=http%3A%2F%2Fmodplug-xmms.sourceforge.net%2F&ts=1377681153&use_mirror=jaist"
tar zxvf libmodplug-0.8.8.4.tar.gz
cd libmodplug-0.8.8.4
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://modplug-xmms.sourceforge.net/

lame

wget "http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F3.99%2F&ts=1377682004&use_mirror=jaist"
tar zxvf lame-3.99.5.tar.gz
cd lame-3.99.5
CPPFLAGS="-mfpmath=sse -msse -msse2 -msse3" ./configure --prefix=/usr/local/ffmpeg-libs --enable-nasm
make
make install

公式) http://lame.sourceforge.net/index.php

opencore-amr

wget "http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopencore-amr%2Ffiles%2Fopencore-amr%2F&ts=1377682715&use_mirror=jaist"
tar zxvf opencore-amr-0.1.3.tar.gz
cd opencore-amr-0.1.3
./configure --prefix=/usr/local/ffmpeg-libs
make -j 3
make install

公式) http://opencore-amr.sourceforge.net/

openjpeg

wget https://openjpeg.googlecode.com/files/openjpeg-1.5.1.tar.gz
tar zxvf openjpeg-1.5.1.tar.gz
cd openjpeg-1.5.1
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.openjpeg.org/

opus

wget http://downloads.xiph.org/releases/opus/opus-1.0.3.tar.gz
tar zxvf opus-1.0.3.tar.gz
cd opus-1.0.3
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.opus-codec.org/

RTMPDump

アーカイブは2.3までのものしかなった。2.4はgitから取るしかない。

git clone git://git.ffmpeg.org/rtmpdump
cd rtmpdump
vi Makefile
vi librtmp/Makefile

prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://rtmpdump.mplayerhq.hu/

libsoxr

wget "http://downloads.sourceforge.net/project/soxr/soxr-0.1.1-Source.tar.xz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fsoxr%2Ffiles%2F&ts=1377753028&use_mirror=jaist"
tar Jxvf soxr-0.1.1-Source.tar.xz
cd soxr-0.1.1-Source
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/ffmpeg-libs ..
make
make install

公式) http://sourceforge.net/p/soxr/wiki/Home/

SDL

2.0じゃなくて1.x系のものが必要。

wget http://www.libsdl.org/release/SDL-1.2.15.tar.gz
tar zxvf SDL-1.2.15.tar.gz
cd SDL-1.2.15
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.libsdl.org/

libogg

wget http://downloads.xiph.org/releases/ogg/libogg-1.3.1.tar.gz
tar zxvf libogg-1.3.1.tar.gz
cd libogg-1.3.1
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://xiph.org/

libspeex

liboggを先にビルドしておくこと。

wget http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz
tar zxvf speex-1.2rc1.tar.gz
cd speex-1.2rc1
./configure --prefix=/usr/local/ffmpeg-libs --enable-sse
make
make install

公式) http://xiph.org/

libvorbis

liboggを先にビルドしておくこと。

wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.xz
tar Jxvf libvorbis-1.3.3.tar.xz
cd libvorbis-1.3.3
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://xiph.org/

libtheora

事前にlibogg, libvorbis, SDLを入れること。

wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2
tar jxvf libtheora-1.1.1.tar.bz2
cd libtheora-1.1.1
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://xiph.org/

TwoLAME

事前にlibsndfileが必要。今回はyumで入れている。

wget http://downloads.sourceforge.net/twolame/twolame-0.3.13.tar.gz
tar zxvf twolame-0.3.13.tar.gz
cd twolame-0.3.13
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.twolame.org/

vid.stab

git clone https://github.com/georgmartius/vid.stab.git
cd vid.stab
cd src
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/ffmpeg-libs .
make
make install

公式) http://public.hronopik.de/vid.stab/

opencore-amr

wget "http://downloads.sourceforge.net/project/opencore-amr/vo-aacenc/vo-aacenc-0.1.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopencore-amr%2Ffiles%2Fvo-aacenc%2F&ts=1377763066&use_mirror=jaist"
tar zxvf vo-aacenc-0.1.3.tar.gz
cd vo-aacenc-0.1.3
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://opencore-amr.sourceforge.net/

vo-amrwbenc

wget "http://downloads.sourceforge.net/project/opencore-amr/vo-amrwbenc/vo-amrwbenc-0.1.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopencore-amr%2Ffiles%2Fvo-amrwbenc%2F&ts=1377763362&use_mirror=jaist"
tar zxvf vo-amrwbenc-0.1.3.tar.gz
cd vo-amrwbenc-0.1.3
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://opencore-amr.sourceforge.net/

libvpx

git clone http://git.chromium.org/webm/libvpx.git
cd libvpx
git checkout v1.3.0
./configure --prefix=/usr/local/ffmpeg-libs --target=x86_64-linux-gcc
make
make install

公式) http://www.webmproject.org/

libwavpack

wget http://www.wavpack.com/wavpack-4.60.1.tar.bz2
tar jxvf wavpack-4.60.1.tar.bz2
cd wavpack-4.60.1
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.wavpack.com/

x264 

単純にmakeをしても良い。fprofiled でVIDSを指定すると、最適化してくれるらしい。とりあえずサッカー動画を使って最適化するようにしてみた。

git clone git://git.videolan.org/x264.git
cd x264
git checkout stable
./configure --prefix=/usr/local/ffmpeg-libs
wget http://media.xiph.org/video/derf/y4m/soccer_4cif.y4m
make fprofiled VIDS="soccer_4cif.y4m"
make install install-lib-static

公式) http://www.videolan.org/developers/x264.html

xvid

libtoolが事前に必要だが、yumでインストールしてある。

wget http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz
tar zxvf xvidcore-1.3.2.tar.gz
cd xvidcore
cd build/generic/
./bootstrap.sh
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.xvid.org/

libcdio

wget http://ftp.gnu.org/gnu/libcdio/libcdio-0.90.tar.gz
tar zxvf libcdio-0.90.tar.gz
cd libcdio-0.90
LDFLAGS=-R/usr/local/ffmpeg-libs/lib \
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.gnu.org/software/libcdio/

libcdio-paranoia

libcdioが必要。yumにも存在するが、yumのものは認識しなかったので自分で入れることにした。

wget "http://ftp.gnu.org/gnu/libcdio/libcdio-paranoia-10.2+0.90+1.tar.bz2"
tar jxvf libcdio-paranoia-10.2+0.90+1.tar.bz2
cd libcdio-paranoia-10.2+0.90+1
LD_RUN_PATH=/usr/local/ffmpeg-libs/lib \
CFLAGS=-I/usr/local/ffmpeg-libs/include \
LDFLAGS=-R/usr/local/ffmpeg-libs/lib \
./configure --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://www.gnu.org/software/libcdio/

gmerlin(gavl)

frei0rの依存LIBとして追加。ただし、必須ではなくオプショナルである。

wget http://ftp.jaist.ac.jp/pub/sourceforge/g/project/gm/gmerlin/gavl/1.4.0/gavl-1.4.0.tar.gz
tar zxvf gavl-1.4.0.tar.gz
cd gavl-1.4.0
./configure \
  --prefix=/usr/local/ffmpeg-libs \
  --enable-static \
  --with-cpuflags \
  --without-doxygen

make
make install

公式 http://gmerlin.sourceforge.net/

frei0r

opencvとgavlとcairoがあるとリンクしてくれる。無くてもエラーにはならない。 アーカイブはダウンロードできなかったのでGITから。 v1.3じゃないとcairoまわりでエラーがでたので1.3のものを。

git clone git://git.dyne.org/frei0r.git
cd frei0r
git checkout v1.3

./autogen.sh
./configure \
  --prefix=/usr/local/ffmpeg-libs/ \
  --enable-static

make
make install

公式) http://www.piksel.org/frei0r

libaacplus

yumでfftw fftw-devel, fftw-staticを入れた。

wget http://217.20.164.161/~tipok/aacplus/libaacplus-2.0.2.tar.gz
tar zxvf libaacplus-2.0.2.tar.gz
cd libaacplus-2.0.2

./autogen.sh --prefix=/usr/local/ffmpeg-libs
make
make install

公式) http://tipok.org.ua/node/17

mp4v2

wget http://mp4v2.googlecode.com/files/mp4v2-2.0.0.tar.bz2
tar jxvf mp4v2-2.0.0.tar.bz2
cd mp4v2-2.0.0

./configure --prefix=/usr/local/ffmpeg-libs
make -j 3
make install

公式) https://code.google.com/p/mp4v2/

faac

パッチも当てます

wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
tar zxvf faac-1.28.tar.gz
cd faac-1.28

wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/faac/files/faac-1.28-external-libmp4v2.patch
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/faac/files/faac-1.28-libmp4v2_r479_compat.patch
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/faac/files/faac-1.28-inttypes.patch
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/faac/files/faac-1.28-altivec.patch

patch -p1 < faac-1.28-external-libmp4v2.patch
patch -p0 < faac-1.28-libmp4v2_r479_compat.patch
patch -p0 < faac-1.28-inttypes.patch
patch -p0 < faac-1.28-altivec.patch

./bootstrap
./configure \
  CFLAGS="-I/usr/local/ffmpeg-libs/include -Wno-write-strings" \
  CXXFLAGS="-I/usr/local/ffmpeg-libs/include -Wno-write-strings" \
  --prefix=/usr/local/ffmpeg-libs \
  --enable-drm \
  --with-mp4v2

make
make install

公式) http://www.audiocoding.com/faac.html
エラー参考) http://sourceforge.net/p/faac/bugs/162/
パッチ当て参考) http://repository.slacky.eu/slackware64-14.0/multimedia/faac/1.28/src/faac.SlackBuild

fdkaac

wget http://ftp.jaist.ac.jp/pub//sourceforge/o/op/opencore-amr/fdk-aac/fdk-aac-0.1.3.tar.gz
tar zxvf fdk-aac-0.1.3.tar.gz

cd fdk-aac-0.1.3

./configure --prefix=/usr/local/ffmpeg-libs
make -j 3
make install

公式) http://sourceforge.net/projects/opencore-amr/

ffmpeg / FFmpeg 2.1.1 "Fourier"

wget http://www.ffmpeg.org/releases/ffmpeg-2.1.1.tar.gz
tar zxvf ffmpeg-2.1.1.tar.gz
cd ffmpeg-2.1.1

FF_HUFFMAN_BITS10から12に増やす。

sed -i -e "s@^\(#define FF_HUFFMAN_BITS \).*[0-9]*@\112@"  libavcodec/huffman.h
./configure \
--enable-gpl \
--enable-version3 \
--enable-nonfree \
--enable-avisynth \
--enable-fontconfig \
--enable-frei0r \
--enable-gnutls \
--enable-libaacplus \
--enable-libass \
--enable-libbluray \
--enable-libcaca \
--enable-libcdio \
--enable-libfaac \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libgsm \
--enable-libmodplug \
--enable-libmp3lame \
--enable-libopencore-amrnb \
--enable-libopencore-amrwb \
--enable-libopenjpeg \
--enable-libopus \
--enable-librtmp \
--enable-libsoxr \
--enable-libspeex \
--enable-libtheora \
--enable-libtwolame \
--enable-libvidstab \
--enable-libvo-aacenc \
--enable-libvo-amrwbenc \
--enable-libvorbis \
--enable-libvpx \
--enable-libwavpack \
--enable-libx264 \
--enable-libxvid \
--disable-outdev=sdl \
--disable-ffprobe \
--disable-ffserver \
--extra-cflags='-I/usr/local/ffmpeg-libs/include' \
--extra-ldflags='-L/usr/local/ffmpeg-libs/lib -R/usr/local/ffmpeg-libs/lib' \
--optflags='-O2 -finline-functions'
make
make install

公式) http://www.ffmpeg.org/

リンク確認

今回はstaticリンクをしていないので、大量のsoを見ています。これは後ほどstaticリンクに変えていきたいと思います。

# ldd `which ffmpeg`
    linux-vdso.so.1 =>  (0x00007fff2eff5000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f900c3bd000)
    libcdio_paranoia.so.1 => /usr/local/ffmpeg-libs/lib/libcdio_paranoia.so.1 (0x00007f900c1b3000)
    libcdio_cdda.so.1 => /usr/local/ffmpeg-libs/lib/libcdio_cdda.so.1 (0x00007f900bfaa000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f900bd8d000)
    libgcrypt.so.11 => /lib64/libgcrypt.so.11 (0x00007f900bb17000)
    libwavpack.so.1 => /usr/local/ffmpeg-libs/lib/libwavpack.so.1 (0x00007f900b8ef000)
    libvorbisenc.so.2 => /usr/local/ffmpeg-libs/lib/libvorbisenc.so.2 (0x00007f900b420000)
    libvorbis.so.0 => /usr/local/ffmpeg-libs/lib/libvorbis.so.0 (0x00007f900b1f0000)
    libvo-amrwbenc.so.0 => /usr/local/ffmpeg-libs/lib/libvo-amrwbenc.so.0 (0x00007f900afd6000)
    libvo-aacenc.so.0 => /usr/local/ffmpeg-libs/lib/libvo-aacenc.so.0 (0x00007f900adba000)
    libvidstab.so.0.9 => /usr/local/ffmpeg-libs/lib/libvidstab.so.0.9 (0x00007f900aba7000)
    libtwolame.so.0 => /usr/local/ffmpeg-libs/lib/libtwolame.so.0 (0x00007f900a984000)
    libtheoraenc.so.1 => /usr/local/ffmpeg-libs/lib/libtheoraenc.so.1 (0x00007f900a740000)
    libtheoradec.so.1 => /usr/local/ffmpeg-libs/lib/libtheoradec.so.1 (0x00007f900a524000)
    libspeex.so.1 => /usr/local/ffmpeg-libs/lib/libspeex.so.1 (0x00007f900a305000)
    libsoxr.so.0 => /usr/local/ffmpeg-libs/lib/libsoxr.so.0 (0x00007f900a0c0000)
    librtmp.so.1 => /usr/local/ffmpeg-libs/lib/librtmp.so.1 (0x00007f9009ea3000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f9009c8d000)
    libopus.so.0 => /usr/local/ffmpeg-libs/lib/libopus.so.0 (0x00007f9009a4d000)
    libopenjpeg.so.1 => /usr/local/ffmpeg-libs/lib/libopenjpeg.so.1 (0x00007f9009825000)
    libopencore-amrwb.so.0 => /usr/local/ffmpeg-libs/lib/libopencore-amrwb.so.0 (0x00007f9009612000)
    libopencore-amrnb.so.0 => /usr/local/ffmpeg-libs/lib/libopencore-amrnb.so.0 (0x00007f90093e9000)
    libmp3lame.so.0 => /usr/local/ffmpeg-libs/lib/libmp3lame.so.0 (0x00007f9009160000)
    libmodplug.so.1 => /usr/local/ffmpeg-libs/lib/libmodplug.so.1 (0x00007f9008e90000)
    libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007f9008bf3000)
    libfdk-aac.so.0 => /usr/local/ffmpeg-libs/lib/libfdk-aac.so.0 (0x00007f9008945000)
    libfaac.so.0 => /usr/local/ffmpeg-libs/lib/libfaac.so.0 (0x00007f9008729000)
    libcaca.so.0 => /usr/local/ffmpeg-libs/lib/libcaca.so.0 (0x00007f900845c000)
    libbluray.so.1 => /usr/local/ffmpeg-libs/lib/libbluray.so.1 (0x00007f900822c000)
    libass.so.4 => /usr/local/ffmpeg-libs/lib/libass.so.4 (0x00007f9008012000)
    libaacplus.so.2 => /usr/local/ffmpeg-libs/lib/libaacplus.so.2 (0x00007f9007de4000)
    libgnutls.so.26 => /usr/lib64/libgnutls.so.26 (0x00007f9007b40000)
    libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007f900790a000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f9007686000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f9007474000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f900726c000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f9006ed9000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f900c5cc000)
    libcdio.so.14 => /usr/local/ffmpeg-libs/lib/libcdio.so.14 (0x00007f9006cb0000)
    libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f9006aac000)
    libogg.so.0 => /usr/local/ffmpeg-libs/lib/libogg.so.0 (0x00007f90068a6000)
    libgomp.so.1 => /usr/lib64/libgomp.so.1 (0x00007f9006698000)
    libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f900643b000)
    libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f90060a0000)
    libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f9005d9a000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f9005b84000)
    libncursesw.so.5 => /lib64/libncursesw.so.5 (0x00007f9005954000)
    libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007f9005617000)
    libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007f90052c5000)
    libfribidi.so.0 => /usr/local/ffmpeg-libs/lib/libfribidi.so.0 (0x00007f90050ac000)
    libfftw3f.so.3 => /usr/lib64/libfftw3f.so.3 (0x00007f9004db6000)
    libtasn1.so.3 => /usr/lib64/libtasn1.so.3 (0x00007f9004ba6000)
    libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f900497d000)
    libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f9004739000)
    libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f9004452000)
    libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f900424e000)
    libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f9004022000)
    libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f9003e00000)
    libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007f9003be2000)
    libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f90039d7000)
    libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f90037d3000)
    libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f90035b9000)
    libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007f90033b5000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f9003196000)

Version確認

ffmpeg -version
ffmpeg version 2.1.1
built on Jan  7 2014 15:09:13 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-3)
configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-avisynth --enable-fontconfig --enable-frei0r --enable-gnutls --enable-libaacplus --enable-libass --enable-libbluray --enable-libcaca --enable-libcdio --enable-libfaac --enable-libfdk-aac --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libxvid --disable-outdev=sdl --disable-ffprobe --disable-ffserver --extra-cflags=-I/usr/local/ffmpeg-libs/include --extra-ldflags='-L/usr/local/ffmpeg-libs/lib -R/usr/local/ffmpeg-libs/lib' --optflags='-O2 -finline-functions'
libavutil      52. 48.101 / 52. 48.101
libavcodec     55. 39.101 / 55. 39.101
libavformat    55. 19.104 / 55. 19.104
libavdevice    55.  5.100 / 55.  5.100
libavfilter     3. 90.100 /  3. 90.100
libswscale      2.  5.101 /  2.  5.101
libswresample   0. 17.104 /  0. 17.104
libpostproc    52.  3.100 / 52.  3.100

確認

ffmpeg -codecs を叩くことで、ffmpeg2.1で追加されたCodecを確認できました。

 DEV.L. vp9                  Google VP9 (decoders: vp9 libvpx-vp9 ) (encoders: libvpx-vp9 )
 D.V.LS hevc                 H.265 / HEVC

まとめ

libfaacで音が出なかったのでリンクから外す。libfdk_aacの方が良いと言われており、またこちらでは問題は特に無かった。
VP9, H265共にサポートしているのはデコーダーである。とりあえず、libvpx1.3を入れてVP9のエンコード対応をしてみる。
libvpxを1.3にしてvp9サポートもした。

Comments:0

Comment Form

Trackbacks:0

TrackBack URL for this entry
Listed below are links to weblogs that reference
CentOS6.3にてffmpegをビルドした時の記録 その2 from タムタムの日記

Home > 日記2014前期 | 開発 > CentOS6.3にてffmpegをビルドした時の記録 その2

Search
Feeds

Return to page top