Ubuntu 14.04でffmpegをビルドしてみた

基本的にこのページの内容をなぞっただけです。
CompilationGuide/Ubuntu – FFmpeg

準備

ソースとライブラリを置くディレクトリの作成と必要なライブラリの取得。

$ mkdir $HOME/work/ffmpeg
$ mkdir $HOME/work/ffmpeg/build

$ sudo apt-get update
$ sudo apt-get -y --force-yes install autoconf automake build-essential libass-dev libfreetype6-dev \
  libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \
  libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev
$ sudo apt-get install yasm
$ sudo apt-get install libx264-dev

libx265のビルド

$ cd $HOME/work/ffmpeg
$ sudo apt-get install cmake mercurial
$ hg clone https://bitbucket.org/multicoreware/x265
$ cd x265/build/linux/
$ PATH="$HOME/bin:$PATH" cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/work/ffmpeg/build" -DENABLE_SHARED:bool=off ../../source
$ make
$ make install
$ make clean

libfdk-aacのビルド

$ cd $HOME/work/ffmpeg
$ wget -O fdk-aac.tar.gz https://github.com/mstorsjo/fdk-aac/tarball/master
$ tar xvzf fdk-aac.tar.gz 
$ cd mstorsjo-fdk-aac-047376a/
$ autoreconf -fiv
$ ./configure --prefix="$HOME/work/ffmpeg/build" --disable-shared
$ make
$ make install
$ make distclean

ffmpegのビルド

$ cd $HOME/work/ffmpeg
$ tar xvf ~/Downloads/ffmpeg-2.7.2.tar.xz
$ cd ffmpeg-2.7.2/
$ vi myconfig.sh
$ sh myconfig.sh 
$ make
$ make install

myconfig.shの内容は以下の通り。

PKG_CONFIG_PATH="$HOME/work/ffmpeg/build/lib/pkgconfig" ./configure \
  --prefix="$HOME/work/ffmpeg/build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/work/ffmpeg/build/include" \
  --extra-ldflags="-L$HOME/work/ffmpeg/build/lib" \
  --bindir="$HOME/bin" \
  --enable-gpl \
  --enable-libass \
  --enable-libfdk-aac \
  --enable-libfreetype \
  --enable-libtheora \
  --enable-libvorbis \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree

  #--enable-libmp3lame \
  #--enable-libopus \
  #--enable-libvpx \

できた。

$ which ffmpeg
/home/koba/bin/ffmpeg
$ ffmpeg -version
ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/koba/work/ffmpeg/build --pkg-config-flags=--static --extra-cflags=-I/home/koba/work/ffmpeg/build/include --extra-ldflags=-L/home/koba/work/ffmpeg/build/lib --bindir=/home/koba/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-nonfree
libavutil      54. 27.100 / 54. 27.100
libavcodec     56. 41.100 / 56. 41.100
libavformat    56. 36.100 / 56. 36.100
libavdevice    56.  4.100 / 56.  4.100
libavfilter     5. 16.101 /  5. 16.101
libswscale      3.  1.101 /  3.  1.101
libswresample   1.  2.100 /  1.  2.100
libpostproc    53.  3.100 / 53.  3.100