デミュクサー
******

デミュクサーは特定の種類のファイルからマルチメディアストリームを読むことを可能にする Libav での構成される要素です。

Libav のビルドを構成する際、既定では全ての対応されるデミュクサーが有効になります。全ての利用可能なデミュクサーを configure オプション "--list-demuxers" を使って一覧できます。

configure オプション "--disable-demuxers" を使って全てのデミュクサーを無効にできます。そしてオプション  "--enable-demuxer=DEMUXER" で 1つのデミュクサーを選択的に有効にでき、オプション "--disable-demuxer=DEMUXER" で1つのデミュクサーを選択的に無効にできます。

ff* ツールの "-formats" オプションは有効になっているデミュクサーの一覧を表示します。

現在利用可能なデミュクサーのいくつかの説明は以下の通りです。

image2
======

画像ファイルデミュクサー。

このデミュクサーはパターンで指定された画像ファイルのリストを読みます。

パターンは文字列 "%d" または "%0Nd" を含めることができ、これがこのパターンにマッチする各ファイル名の連番を表す文字の位置を指定します。"%d0Nd" という形が使われた場合、各ファイル名の番号を表す文字列は0で埋められており、N は番号を表す0で埋められた桁の総数です。リテラル文字 '%' は文字列 "%%" を含むパターンで指定されます。

このパターンが "%d" または "%0Nd" を含む場合、このパターンによって指定されたファイル列の最初のファイル名は0から4までの間の番号を含まなければならず、後に続く全ての番号は連番でなければなりません。この制限は取り払われる見込みです。

このパターンにはファイルに含まれる画像の形式によって自動的に決まる接尾辞を含んでもよいです。

例えばパターン "img-%03d.bmp" は img-001.bmp, img-002.bmp, ..., img-010.bmp, などの形をしたファイル名の列にマッチします; パターン "i%%m%%g-%d.jpg" は i%m%g-1.jpg, i%m%g-2.jpg, ..., i%m%g-10.jpg, などの形をしたファイル名の列にマッチします。

各画像のサイズ、ピクセル形式、および形式は列にある全てのファイルで同じでなければなりません。

次の例は、秒間10フレームの入力フレームレートとして、ファイル列 img-001.jpeg, img-002.jpeg, ..., の画像から映像を作るための avconv の使い方です:

     avconv -i 'img-%03d.jpeg' -r 10 out.mkv

このパターンは "%d" または "%0Nd" を含む必要はないことに注意してください。例えば単一の画像ファイル img.jpeg を変換するために次のコマンドが使えます:

     avconv -i img.jpeg img.png

applehttp
=========

Apple HTTP Live Streaming デミュクサー。

このデミュクサーは全ての種類のストリームから全ての AVStreams を取り出します。 id フィールドはそのビットレートに応じたインデックス番号に設定されます。 AVStreams の discard フラグを設定する(avplay では 'a' または 'v' を押す) ことによって、呼び出し側が実際に受け取るストリームの種類を決定できます。ストリームが属する種類の全体のビットレートは "variant_bitrate" と名付けられているメタデータキーで取れます。