Ubuntu日本語フォーラム
ログインしていません。
Wiki にUbuntu Tips/アプリケーション/ffmpegとコーデックをソースからビルドするにはを追加しました。
内容はフォーラムに投稿した内容のまとめです。
以降、ffmpeg のビルドに関する情報は Wiki にてメンテナンスしていきます。
最後の編集者: avidya (2009-05-11 14:40:53)
ffmpeg の Subversion リポジトリの設定変更、とコーデックの追加により、該当 wiki ページを更新しました。
Subversion のビルドが不要になったことをお知らせします。
libogg 1.1.4、libvorbis 1.2.2 がリリースされています。
Ubuntu 9.04 Jaunty Jackalope で build できることを確認しました。
なお libogg は libvorbis のバージョンアップに伴うアップデートです。libvorbis をビルドする際は、libogg をビルド後、libvorbis をビルドしてください。
libvorbis 1.2.3 がリリースされています。
以下の通り bug fix とのことです。
A bug affecting playback of very short files using libvorbisfile was found shortly after release 1.2.2. This bug affects playback of Vorbis audio files where all audio packets fit onto a single audio page. Although Vorbisfile will open the file and report a correct length, playback results in zero samples. As libvorbisfile is widely used for sound effects in games, we deemed an immediate correction important. 1.2.3 offers a complete fix for this problem.
従来の「注意」を以下の項目に分割・整理・追記しました。
・対象ユーザ
・法律・文責に関する注意事項
・ビルド上の注意
以上
当該Wiki項目の "【ビルド上の注意】" を以下の通り修正しました。
+ 以下の手順ではビルドの都合上、Ubuntuリポジトリからインストールされたライブラリを上書きします。このことはパッケージの依存関係を破壊することを意味しますので、修復方法が分からない人は以下の手順を実行しないでください。 + 以下の手順でインストールする実行ファイル、ライブラリは Synaptic や apt の管理対象外になります。
- 通常、リポジトリからのインストールでは、各種コーデック、関連ライブラリは/usr/libにインストールされますが、ビルドのみを正常に行うためconfigure時に必ず"--prefix=/usr"を指定してください(デフォルトのprefixではビルド時に問題が生じることがわかりました)。 + 通常、リポジトリからのインストールでは、各種コーデック、関連ライブラリは/usr/libにインストールされますが、ビルドのみを正常に行うためconfigure時に必ず"--prefix=/usr"を指定してください(デフォルトのprefixではビルド時に問題が生じることがわかりました。また、これによりパッケージの依存関係が破壊されます)。
該当 Wik 項目iを更新しました。主な変更点の概要は以下の通りです。
・ビルド用ツールを全て Synaptic によりインストールするように変更
・"/usr/lib" にインストールする必要がなくなったため、"--prefix" オプションに関する記載を削除 ( /usr/local/lib にインストールされるためシステムの安全性が向上 )
・ffmpeg が amr コーデックをサポートしなくなったため、関連する記述を削除
【amrコーデックのインストール】
#10 にて ffmpeg が amr コーデックをサポートしなくなったことをお知らせしました。2009/09/27 現在、従来の amr コーデック・ライブラリに代わり、ffmpeg が amr コーデック用 opencore-amr ライブラリがサポートされていることをお知らせします。
opencore-amr ライブラリのインストール方法を以下に解説します。なお現状で単純に /usr/local/lib に同ライブラリをインストールすると ffmpeg 実行時にライブラリのロード・エラーが発生するため、Wiki への記載はペンディングとさせていただきます。
【opencore-amr のダウンロード】
opencore-amr プロジェクトのページからダウンロードしてください。
【opencore-amr のビルド】
"./configure && make && sudo make install" でビルドしてください。
【シンボリック・リンクの作成】
"/usr/lib" にて以下を実行してください。root 権限で実行します。
ln -s /usr/local/lib/libopencore-amrnb.so.0.0.2 ln -s /usr/local/lib/libopencore-amrwb.so.0.0.2 mv libopencore-amrnb.so.0.0.2 libopencore-amrnb.so.0 mv libopencore-amrwb.so.0.0.2 libopencore-amrwb.so.0
【ffmpeg のビルド】
以下のオプションを追加指定して ffmpeg をビルドします。
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3
※訂正
- ffmpeg が amr コーデック用 opencore-amr ライブラリがサポートされていることをお知らせします。
+ ffmpeg が amr コーデック用 opencore-amr ライブラリをサポートしていることをお知らせします。
FFmpeg version SVN-r20161 にて #11 の手順のうち、opencore-amr ライブラリのシンボリック・リンクの作成が不要になっています。また libthora 1.1.1 がリリースされています。
これらにより当該 Wiki 項目を変更しました。
Ubuntu 9.10 Karmic Koala リリースにあわせ Wiki を更新しました。2009/11/01現在、以下の問題が存在します。
【問題】
* libmp4v2 がビルドできません
* libfaac がビルドできません ( libfaad2 はビルドできます )
【回避策】
Synapticパッケージ・マネージャ等により libfaac-dev をインストールする。また必要であれば libfaac0 パッケージもインストールする。
以上
libmp4v2 がビルドできない理由が判明しました。libmp4v2 のサイトに書かれているとおり libmp4v2 が依存している mpeg4ip がパテントの関係で利用できなくなったためのようです。libmp4v2 がビルドできないので libfaac もビルドできません。
The mpeg4ip package, available from http://mpeg4ip.net/ contains a very useful piece of software, the libmp4v2 package. Unfortunately the mpeg4ip package also contains software that are covered by patents in some juridistictions and therefore the policy of several different free software distributions stops it's inclusion.
# Ubuntu のリポジトリに libfaac バイナリとソースが存在するのは Canonical 社のおかげなのかな?