FFmpegは、
動画と
音声を記録、変換、再生するための自由なソフトウェアです。
Unix系OSで生まれましたが、現在は
クロスプラットフォームで動作し、libavcodec(
動画/
音声コーデックライブラリ)、libavformat(コンテナ
ライブラリ)、libswscale(色空間・サイズ変換
ライブラリ)、libavfilter(
動画フィルタリング
ライブラリ)など、多くの
ライブラリを含んでいます。
ライセンスはコンパイル時のオプションによってLGPLまたはGPLに決定されます。コマンドラインから利用可能で、豊富な
コーデックと多彩なオプションが使えるため、幅広い用途で利用されています。FFmpeg自体はGUIを持たないツールであり、
UNIXコマンドのように動作します。そのため、対話型アプリケーションとして使用する場合は、
フロントエンドを用いることが一般的です。コマンドラインインターフェース(CUI)での配布は、必要に応じて
フロントエンドを利用したり、スクリプトでのバッチ処理に組み込んだりできる利点があります。また、FFserverと組み合わせることで、
ファイルシステムや
デバイスファイルと
ストリーミングサーバ間のフィルタとしても機能します。
2011年3月13日には、開発体制の対立からffmpeg.orgとlibav.orgに分裂しました。どちらもFFmpegというソフトウェアをリリースしていますが、Libav側はavconvという名称に変更する動きを進めています。この分裂に伴い、Debian、
Ubuntu 11.04、
Gentoo [[Linux]]はLibavを採用しましたが、Debianは
2015年7月にセキュリティ問題への対応姿勢からLibavを排除し、FFmpegに戻っています。
Ubuntuも同様にFFmpegに戻りました。
2022年1月17日には、大幅なAPI変更と非推奨APIの削除が行われたFFmpeg 5.0がリリースされています。
サポートしている形式
画像形式: 多数の画像形式に対応。
コーデック: libavcodecを参照。
プロトコル: TCP, UDP, HTTP, RTP, RTSP, RealMedia RTSP/RDT, RTMP, RTMPT, RTMPE, RTMPTE, RTMPS (librtmp経由), SDP, Gopher, MMS over TCP。
入出力デバイス: Unix, OSS, JACK, X11 grabbing, dv1394, bktrドライバ,
Linux, ALSA, Video4
Linux, Video4
Linux2, libdc1394 (IEEE 1394), Windows, VfWキャプチャ。
入手方法
公式サイトではコンパイル済みのバイナリは提供されていません。そのため、ソースコードを自分でコンパイルするか、非公式のサイトで配布されているコンパイル済みバイナリを利用する必要があります。
FFmpegを利用・サポートしているアプリケーション
エンコーダ: MEncoder, HandBrake, MediaCoder, 携帯動画変換君, WinFF。
コーデック: ffdshow,
GStreamer FFmpeg plug-in, Perian, Bellagio OpenMAX IL, FFmpegInterop。
3D描画: Blender。
マルチメディアプレーヤー: MPlayer, VLC, Xine,
Gnash, swfdec, Moonlight。
動画編集: Avidemux, Kdenlive, Jahshaka, B's 動画レコーダー。
音声編集: Audacity (1.3.6以降), ラジ録12 Windows版。
VoIP: Ekiga。
構内交換機 (PBX): Asterisk。
画像処理: OpenCV, ImageMagick。
ウェブブラウザ: Google Chrome。
動画処理: Ingex。
ラッパー: JavaCV。
FFmpegに含まれる
ライブラリ群は、多くのマルチメディアアプリケーションで利用されています。また、Palmのスマートフォン (Palm WebOS) やソニーのブルーレイプレーヤーなど、様々なデバイスでも活用されています。
関連項目
オープンソースのコーデックとコンテナフォーマット
KMPlayer
ffvp6
外部リンク
公式ウェブサイト