オープンソースの動画変換、再生で有名なプロジェクト ffmpegでは何ができるのでしょうか?
FFmpeg とは
FFmpegの読み方は、エフエフエムペグです。
FFmpegは、動画と音声を記録・変換・再生するためのオープンソースのソフトウェアです。
動画や音声などのメディア系ファイル、ストリーム系のファイルに関してありとあらゆるフォーマット、コーデックに対応しており、同種のソフトウェアとしては最大級と言ってよいでしょう。
ちなみに、ffmpegのソース中で各フォーマット、コーデックのエンコード、デコード出来ますが、それは各フォーマット、コーデックに関する法的な特許とは別次元にあります。
つまり、例えばffmpegがMPEG2を解釈できるからといって、使っていいことにはならないです。
もし、何らかの製品をリリースする際は、各コーデックの特許に配慮する必要があります。
mpegというのは、Moving Picture Experts Groupの略で、ビデオとオーディオに対して符号を付与する基準の開発責任を負ったISO/IECのワーキンググループであり、標準規格の名称そのものです。
ffmpegは、この規格グループとは直接関係はありませんが、mpeg由来の名称と考えてよいでしょう。
最新バージョンは2018年11月6日現在、4.1.0です。
ffmpegは、Windows、Linux、Macに対応したクロスプラットフォームで、
- libavcodec(動画/音声のコーデックライブラリ)
- libavformat(動画/音声のコンテナライブラリ)
- libswscale(色空間・サイズ変換ライブラリ)
- libavfilter(動画のフィルタリングライブラリ)
などから成っています。
ライセンスはコンパイル時のオプションによりLGPLかGPLに決定されるので、商用利用の時は注意が必要です。
OSSのライセンスについては以下にまとめました。
FFmpeg自体は、ライブラリ群の集まりなので、C、C++等を使った開発者向けのプラットフォームです。
動画や音声を単に再生したいだけのエンドユーザーは、FFmpegを使ったアプリケーションを使いましょう。
FFmpegを使った代表的なメディアプレイヤーにMPlayerがあります。
FFmpegのダウンロード
FFmpegの公式サイトはコチラです。
ffmpegの公式サイトでは、全ソースをダウンロード可能です。
ただ、開発者以外の人はソースでは扱いにくいので、バイナリパッケージをダウンロードするとよいでしょう。
Windows用のバイナリファイルは、有志が作成したコチラのサイトにあります。
なんでこんなところにあるかと言うと、ffmpegのWindows版は、ボランティアがWindowsで動作するようにナイトリービルドして作っているからです。
ffmpegをソースからWindowsで動くようにビルドするのは結構めんどくさいんです。
だから、通常はこのサイトから
ffmpeg-20180430-0807a77-win64-static.zip
のようなzipファイルをダウンロードします。
インストーラーからインストールするような作業はなくて、zipファイルを展開するだけです。
zipファイルを解凍すると
ffmpeg-20180430-0807a77-win64-static\bin
というフォルダに
ffmpeg.exe
ffplay.exe
ffprobe.exe
という3個の実行ファイルが展開されます。
これらはコマンドラインツールなので、エクスプローラーからダブルクリックしても何も起こりません。
ffmpegの使い方
ffmpeg.exe は音声、映像のファイルを高速に変換することが出来きるコンバーターです。
コマンドプロンプトで以下のようなコマンドを入力して作業を行います。
ffmpeg –i (入力ファイル名) (出力ファイル名)
例えば、ビデオのビットレートを64 kbit/s に変換するには以下の通りです。
1 |
ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi |
ffmpegでaviファイルから、Windows Media Playerで読み込めるmp4(h264)に変換する方法は次の通りです。
ffplayの使い方
ffplay はファイルを引き数にするだけで再生できるシンプルなプレイヤーです。
ブラウザと比べて、外部プレイヤーの利点は一時停止ができることと、CPU負荷を小さくすることです。
キーボード割り当て | 効果 |
---|---|
→ | 10秒送り |
← | 10秒戻し |
↑ | 60秒送り |
↓ | 60秒戻し |
Page up | 10分送り |
Page dn | 10分戻し |
右マウスクリック | 画面幅を動画時間として その時間までシーク |
左マウスダブルクリック | 全画面/フルスクリーン |
p / SPACE | 一時停止 |
s | コマ送り |
q / ESC | 停止して終了 |
f | 全画面/フルスクリーン |
m | ミュート切り替え |
9, 0 | 音量下げ、上げ |
/, * | 音量下げ、上げ |
a | 副音声切替 |
t | 字幕切替 |
v | 映像切替 |
w | 映像から音波形切り替え CPU負荷が小さくなる |
ffprobeの使い方
ffprobeとは音声や映像のストリーム情報を解析し、人が理解出来る形式で出力するツールです。
ffprobe (入力ファイル名)
という形で使います。
コメント
[…] ffmpegの最新バージョンの使い方、ダウンロードとインストール、コマンドf… […]