最新FFmpegとx264をUbuntu10.04 にインストール

 epgrec でも(ちょこっとだけ)使われているFFmpegの最新版を入れてみる事にした。 そもそもは、下記のサイトを見つけたからやろうと思ったのだが、対象がUbuntu 10.04なので「楽勝!」と思ったのだが、記事を書いた頃より x264やffmpegが新しい版になったようで、それらのビルド環境も変化した為、記事そのままでは上手く逝かないところが幾つかあった。 ちょっと難儀したので、備忘録を兼ねて書いておく。

>> UbuntuTips|最新FFmpegとx264をUbuntu Lucid Lynx 10.04 にインストール

情報提供ありがとうございました。 orz

依存関係にあるものをインストール

(1) x264とlibx264-devとffmpegをアンインストール

$ sudo apt-get remove ffmpeg x264 libx264-dev

(2) FFmpegとx264をインストールするのに必要なパッケージをすべて取得

$ sudo apt-get update
$ sudo apt-get install build-essential git-core checkinstall yasm texi2html libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev

x264のインストール

(1) 最新のソースファイルを取得し、コンパイル・インストール

$ cd $src
$ git clone git://git.videolan.org/x264
$ cd x264
$ ./configure –enable-static
Found yasm 0.8.0.2194
Minimum version is yasm-1.2.0
If you really want to compile without asm, configure with –disable-asm.

yasmが古すぎ!というエラー。 ubuntu 10.04 のyasm は0.8がデフォルトらしく、apt-getで入れなおしても同じ版0.8 しか入らない。 「–disable-asm」オプション付与でmakeする事も出来たが、「アセンブラ(yasm)を使わないと何倍も遅くなる」という記述をどこかで見たので古い版を廃棄してを最新の 1.2.0(20130710時点) に更新した。 これが分かるまでネットを1時間程徘徊した。

(2) yasm を0.8から最新1.2(@20130710時点) に。 ★追加ステップ

$ sudo apt-get remove yasm
$ cd $src
$ 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
$ sudo checkinstall –pkgname=yasm –pkgversion=”1.2.0″ –backup=no –deldoc=yes –default

更に

下の方の「FFmpegのインストール」の configureのところで「ERROR: libx264 not found」が出て前に進まなかった。 ネットの情報を頼りにいろいろ試行錯誤した結果、x264の configure 時に「–disable-opencl 」付けてビルドをやり直したところ、最終的に FFmpegのビルドが上手くいった。 これも結構時間食った。 (-_-;

(3) configure のオプションに「–disable-opencl 」付与 ★追加ステップ

$ cd $src
$ git clone git://git.videolan.org/x264
$ cd x264
$ make clean; make distclean
$ ./configure –enable-static –disable-opencl
$ make
$ sudo checkinstall –pkgname=x264 –default –pkgversion=”3:$(./version.sh | awk -F'[” ]’ ‘/POINT/{print $4″+git”$5}’)” –backup=no –deldoc=yes

LAMEのインストール(任意)

(1) mp3音声をエンコードするのに使用。「任意」扱いだがmp3だし。

$ sudo apt-get remove libmp3lame-dev
$ sudo apt-get install nasm
$ cd $src
$ wget http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz
$ tar xzvf lame-3.98.4.tar.gz
$ cd lame-3.98.4
$ ./configure –enable-nasm –disable-shared
$ make
$ sudo checkinstall –pkgname=lame-ffmpeg –pkgversion=”3.98.4″ –backup=no –default –deldoc=yes

libvpxのインストール(任意)

(1) VP8ビデオをエンコードするときに使用。これも「任意」らしいが入れとく。

$ cd $src
$ git clone http://git.chromium.org/webm/libvpx.git
$ cd libvpx
$ make clean; make distclean
$ ./configure
$ make
$ sudo checkinstall –pkgname=libvpx –pkgversion=”$(date +%Y%m%d%H%M)-git” –backup=no –default –deldoc=yes

FFmpegのインストール

(1) 最新のソースコードを入手して、コンパイル・インストール

$ cd $src
$ git clone git://git.videolan.org/ffmpeg
$ cd ffmpeg
$ make clean; make distclean
$ ./configure –enable-gpl –enable-version3 –enable-nonfree –enable-postproc –enable-libfaac –enable-libopencore-amrnb –enable-libopencore-amrwb –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –enable-x11grab –enable-libmp3lame –enable-libvpx
$ make
$ sudo checkinstall –pkgname=ffmpeg –pkgversion=”5:$(./version.sh)” –backup=no –deldoc=yes –default
$ hash x264 ffmpeg ffplay ffprobe

(2) ffmpeg を /usr/bin 配下にリンクを貼る。

$ sudo ln -s /usr/local/bin/ffmpeg /usr/bin/ffmpeg

qt-faststratのインストール(任意)

(1) これで、Web動画を完全にダウンロードする前に再生することができるように、なるらしい。

$ cd $src/ffmpeg
$ make tools/qt-faststart
$ sudo checkinstall –pkgname=qt-faststart –pkgversion=”$(./version.sh)” –backup=no –deldoc=yes –default install -D -m755 tools/qt-faststart /usr/local/bin/qt-faststart

1件のコメント

コメントする