epgrec でも(ちょこっとだけ)使われているFFmpegの最新版を入れてみる事にした。 そもそもは、下記のサイトを見つけたからやろうと思ったのだが、対象がUbuntu 10.04なので「楽勝!」と思ったのだが、記事を書いた頃より x264やffmpegが新しい版になったようで、それらのビルド環境も変化した為、記事そのままでは上手く逝かないところが幾つかあった。 ちょっと難儀したので、備忘録を兼ねて書いておく。
>> UbuntuTips|最新FFmpegとx264をUbuntu Lucid Lynx 10.04 にインストール
情報提供ありがとうございました。 orz
依存関係にあるものをインストール
(1) x264とlibx264-devとffmpegをアンインストール
(2) FFmpegとx264をインストールするのに必要なパッケージをすべて取得
$ 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) 最新のソースファイルを取得し、コンパイル・インストール
$ git clone git://git.videolan.org/x264
$ cd x264
$ ./configure –enable-static
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時点) に。
$ 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 」付与
$ git clone git://git.videolan.org/x264
$ cd x264
$ make clean; make distclean
$ ./configure –enable-static
$ 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 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ビデオをエンコードするときに使用。これも「任意」らしいが入れとく。
$ 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) 最新のソースコードを入手して、コンパイル・インストール
$ 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 配下にリンクを貼る。
qt-faststratのインストール(任意)
(1) これで、Web動画を完全にダウンロードする前に再生することができるように、なるらしい。
$ 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
Pingback: FFmpeg のインストール / Netarium