今,俺のOSはUbuntu 11.10なのだけれど,その環境で最新のffmpegとx264を入れてみた.
基本的にはここに従う.
https://wiki.ubuntulinux.jp/UbuntuTips/Application/HowToInstallAndUseLatestFFmpegAndX264
makeしたあとにmake installをしないと,chekinstallでこける.
まぁそれはいいとして,一番苦労したのはffmpegのインストール.
chekinstallすると,
dpkg-deb error parsing file near line 7 package 'ffmpeg'
このようなエラーが出てくる.
この後,「ログファイルを入れろ」というようなメッセージが出てきて,それ以降動けなくなる.
これ,chekinstallのオプションでpkgversionの指定でエラーが出ているらしい.
なので,「:」を「-」に書き換える.
--pkgversion="5:$(./version.sh)"
これを,
--pkgversion="5-$(./version.sh)"
にします.
参考になったのは,これ.
そして,実際にffmpegでx264エンコードをやってみたのだけれど,
error while loading shared libraries: libfaac.so.0: cannot open shared object file: No such file or directory
というエラーがでてくる.
これについては,libfaac.soっぽいものをVineが認識していないので,
sudo vi /etc/ld.so.conf
として,viでこのファイルを編集する.
行末に「/usr/loacl/lib」と追加して保存.
sudo /sbin/ldconfig
と実行してやれば大丈夫.
参考になったのはここ.
http://www.cgis.biz/others/ffmpeg/
というわけでうまくいきました.
無事2passでx.264圧縮でmp4コンテナを作ることに成功した.
そして最後に.
このインストール方法だと,最新版のソースを取ってきて自分でコンパイル,オプションを色々つけてインストールしている.
ところが,このインストール終了後,Ubuntuを普通に使っているとアップデートマネージャーがffmpegをアップデートしてくれそうになる.これをやってしまうと,今まで設定したx264やaacのコーデック設定が全部吹き飛ぶので,やらないほうがいい.
一度俺もやってしまって,1pass目で,プリセットの設定がぶっ壊れていて,自分で指定しなければいけなくなり,2pass目ではオーディオのコーデック,libfaacを見つけられなかったりした.
もちろん,自分で全部どこに入っているかわかっていて,もう一度コーデックを指定し直せるのならばいいのだが.
ちなみにアップデートマネージャーは,毎回バージョンをチェックして通知してくる.
ここには,その他の重要なセキュリティアップデートなども含まれていて,正直毎回ffmpegのチェックだけ外してアップデートするのはとてもリスキー.
特定のアプリだけをアップデートしないようにするためには,Synapticを使うといい.
インストールしているパッケージを見つけて,「パッケージ」→「バージョン固定」とやると,アップデート通知されなくなる.
ちなみに,「バージョンの強制」によって強制ダウングレードもできるらしい.