読者です 読者をやめる 読者になる 読者になる

ffmpegとx264を入れてみた

Ubuntu

今,俺の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)"

にします.

参考になったのは,これ.

http://judsonsnotes.com/notes/index.php?option=com_content&view=article&id=639:compile-ffmpeg-with-h264-and-lame&catid=37:tech-notes&Itemid=59

そして,実際に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を使うといい.

インストールしているパッケージを見つけて,「パッケージ」→「バージョン固定」とやると,アップデート通知されなくなる.

ちなみに,「バージョンの強制」によって強制ダウングレードもできるらしい.