エンコードした動画の画質がどうにも気に入らない。
本当にこんな程度なのか気になって、
比較対象が欲しくなった。
というわけで、ffmpeg を導入することに。
コンパイル済みのバイナリ導入という手もあるが、
どうも古いものが多いようなので、
自力でビルドすることにした。
とはいっても、他人のフンドシを利用する。
「猫科研究所(felid labo)」の手順を有難く利用させていただくことにする。
ここで、再び記述する理由は、
ffmpeg や各ライブラリのバージョンが異なるため、
多少内容が異なる点があるからだ。
それと、自分用備忘録も兼ねている。
では、最初にビルド環境を整えることにする。
ファイルのダウンロードは、全て MinGW のページから行った。
- MinGW-5.1.4.exe をインストール
make を入れる。
g++ は、この時点では入れない。 - MSYS-1.0.11.exe をインストール
なぜかインストール後設定スクリプトが、
起動しなかった(MinGW の場所を指定するやつ)。
しかたがないので、MSYS を起動して、
/postinstall/pi.sh を手動で実行した。 - msysDTK-1.0.1.exe をインストール
次に、GCC とかを入れる。
現時点で GCC のバージョンは 3.4.5 になっている。
このバージョンでは、今回利用するライブラリの一部で素直にコンパイルできない。
どうやらバージョン 4 から新設されたオプションを使用しているからのようだ。
というわけで 4.4.0 を入れることにする。
MinGW のページから別途以下のファイルを、
ダウンロードして手動インストールする。
中には、一見関係なさそうなものがあるが、
依存関係があるのでインストールする。
実は、最初 3.4.5 を入れてしまい、
手動でファイルを削除してから 4.4.0 インストールしているので、
上記手順通りにならないかもしれない。
その時は、MinGW インストーラのディレクトリに、
gcc-core と gcc-c++ の 3.4.5 版アーカイブが置かれるので、
それらに含まれるファイルに対応するものを、
インストールした MinGW から手動で削除すること。
以下のファイルを MSYS 上のホームディレクトリに置く
- gcc-core-4.4.0-mingw32-bin.tar.gz
- gcc-c++-4.4.0-mingw32-bin.tar.gz
- gmp-4.2.4-mingw32-dll.tar.gz
- mpfr-2.4.1-mingw32-dll.tar.gz
- pthreads-w32-2.8.0-mingw32-dll.tar.gz
$ tar zxvf ~/gcc-core-4.4.0-mingw32-bin.tar.gz
$ tar zxvf ~/gcc-c++-4.4.0-mingw32-bin.tar.gz
$ tar zxvf ~/gmp-4.2.4-mingw32-dll.tar.gz
$ tar zxvf ~/mpfr-2.4.1-mingw32-dll.tar.gz
$ tar zxvf ~/pthreads-w32-2.8.0-mingw32-dll.tar.gz
さらに、vim とかも入れた。
まあ、サクラエディタとかでもいいのだが(メモ帳は使っちゃだめよ)、
気分が出るのでw
以下のファイルを MSYS 上のホームディレクトリに置く。
しかし lzma なんてファイルをはじめて見た。
なんだか世の中、変化が早いので困る。
vim-7.2-1-msys-1.0.11-bin.tar.lzma
vim-7.2-1-msys-1.0.11-lang.tar.lzma
インストールは以下のようにする。
$ cd /
$ tar --lzma -xvf ~/vim-7.2-1-msys-1.0.11-bin.tar.lzma
$ tar --lzma -xvf ~/vim-7.2-1-msys-1.0.11-lang.tar.lzma
これでビルド環境のベースができた。