【Linux】CentOSへffmpegのインストール

コンパイルに必要なツールをインストールしておく。

$ yum install gcc gcc-c++
$ yum install automake libtool

携帯動画の変換も行うので下記のコーデックをインストール

ここを参考にyumの追加パッケージを入れるとちょっと楽ができる。
$ yum install a52dec-devel faac-devel lame-devel
でも一応ソースからコンパイルしてみた。

faacはここからダウンロードしてきてコンパイル
$ tar xzvf faac-1.26.tar.gz
$ cd faac
$ sh bootstrap
$ ./configure
$ make
$ make install

faad2はここからダウンロードしてきてコンパイル。
$ tar xzvf faad2-2.6.1.tar.gz
$ cd faad2
$ sh bootstrap
$ ./configure
$ make
$ make install

AMR-NBとAMR-WBをここからダウンロードしてきてコンパイル。

$ tar jxvf amrnb-7.0.0.2.tar.bz2
$ cd amrnb-7.0.0.2
$ ./configure
$ make
$ make install

$ tar jxvf amrwb-7.0.0.3.tar.bz2
$ cd amrwb-7.0.0.3
$ ./configure
$ make
$ make install

liba52はここからダウンロードしてきてコンパイル
$ tar xzvf a52dec-0.7.4.tar.gz
$ cd a52dec-0.7.4
$ ./configure
$ make
$ make install

lameはここからダウンロードしてきてコンパイル
$ tar xzvf lame-398.tar.gz
$ cd lame-398
$ ./configure
$ make
$ make install

/usr/local/libにパスを通しておく。
$ vi /etc/ld.so.conf.d/local.conf
/usr/local/lib
$ ldconfig

ffmpegをここからダウンロードしてきてコンパイル。full checkoutのリンクから。 subversionを使ってダウンロードしてきてもOK.

subversionを使う場合は
$ yum install subversion
$ svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
私が使用したrevisionは13836

$ cd ffmpeg
$ ./configure --enable-libamr-nb --enable-libamr-wb --enable-libmp3lame --enable-libfaad --enable-libfaac --enable-liba52 --enable-gpl --enable-nonfree --enable-shared

$ make
$ make install

nonfreeなので、ここは必読。要は再配布できない。

あとでffmpeg-phpを使うために--enable-sharedをつけとく

試しに変換してみると失敗・・・

Unknown encoder 'mp3'

と怒られた。最近は -acodec 'libmp3lame' としないと駄目らしい。

<2008/07/05> --enable-sharedを追加

<2008/08/13> コーデックを全てコンパイルからやってみた。

<2009/02/21> ffmpegのバージョンを知りたい場合は下記コマンドで。 $ ffmpeg -version