次の方法で共有


AVI Mux フィルタ

AVI Mux フィルタは、複数の入力ストリームを受け取り、それらを AVI フォーマットにインターリーブする。このフィルタは、各入力ストリームに個別の入力ピンを使い、AVI ストリームに 1 つの出力ピンを使う。

ビデオ キャプチャ アプリケーションやオーサリング アプリケーションは、このフィルタを使って、ファイルを AVI フォーマットでディスクに保存できる。通常、このフィルタはファイル ライタ フィルタに接続されるが、入力ピンで IStream および IMemInputPin インターフェイスをサポートする任意のフィルタに接続できる。

フィルタ インターフェイス IBaseFilterIConfigAviMuxIConfigInterleavingIMediaSeekingIPersistMediaPropertyBagISpecifyPropertyPages
入力ピン メディア タイプ 旧型の FOURCC または MEDIATYPE_AUXLine21Data に対応する任意のメジャー タイプ。(詳細については、「FOURCCMap クラス」を参照すること。)
  • メジャー タイプが MEDIATYPE_Audio である場合、フォーマットは FORMAT_WaveFormatEx でなければならない。
  • メジャー タイプが MEDIATYPE_Video である場合、フォーマットは FORMAT_VideoInfo または FORMAT_DvInfo でなければならない。
  • メジャー タイプが MEDIATYPE_Interleaved である場合、フォーマットは FORMAT_DvInfo でなければならない。
入力ピン インターフェイス IAMStreamControlIMemInputPinIPinIPropertyBagIQualityControl
出力ピン メディア タイプ MEDIATYPE_Stream、MEDIASUBTYPE_Avi
出力ピン インターフェイス IPinIQualityControl
フィルタ CLSID CLSID_AviDest
プロパティ ページ CLSID CLSID_AviMuxProptyPage、CLSID_AviMuxProptyPage1
実行モジュール qcap.dll
メリット MERIT_DO_NOT_USE
フィルタ カテゴリ CLSID_LegacyAmFilterCategory

注意

以下に、AVI Mux フィルタの機能についての注意点を述べる。

ピン

AVI Mux フィルタが作成される際、1 つの入力ピンが作成される。その後それぞれの入力ピンが接続されるたびに、フィルタによって新しい入力ピンが作成される。

ストリーム プロパティ

入力ピンは、個々のストリームにプロパティを設定するために IPropertyBag インターフェイスをサポートしている。現在、以下のプロパティが定義されている。

プロパティ 説明
name ストリームの名前。このプロパティは、'strn' チャンクとして記述される。

フィルタが実行中またはポーズ中の場合、IPropertyBag::Write メソッドは VFW_E_WRONG_STATE を返す。

フレーム レート

アップストリーム フィルタが VIDEOINFOHEADER 構造体の AvgTimePerFrame メンバ内でフレーム レートを指定しない場合、AVI Mux は最初のビデオ フレームのタイム スタンプを使う。AVI ファイル フォーマットは、可変フレーム レートをサポートしていない。

ドロップ フレーム

AVI Mux フィルタは、各サンプルのメディア タイムが使用可能な場合はそれらを使って、それ以外の場合はサンプルのタイム スタンプを使って、ドロップ フレームを計算する。各ドロップ フレームについて 0 長のインデックス エントリを記述する。

ストリーム時間幅

AVI Mux フィルタの IMediaSeeking::GetDuration 実装内で、フィルタは各アップストリーム ソース フィルタの IMediaSeeking インターフェイスをクエリし、最長ストリームの時間幅を返す。アップストリーム フィルタが IMediaSeeking への Mux の QueryInterface 呼び出しまたは IMediaSeeking::GetDuration に失敗した場合、AVI Mux はエラー コードをアプリケーションに返すが、最長時間幅が見つかった場合は出力パラメータ pDuration に挿入する。この場合、pDuration の値は最長入力ストリームの長さとは限らない。

AVI 2.0 ファイル フォーマット拡張

現在 DirectShow は、以下の AVI 2.0 ファイル フォーマット拡張をサポートしている。

  • 大きな AVI ファイル サイズ (1 GB 以上)
  • 階層的なインデックス

詳細については、『OpenDML AVI File Format Extensions』(OpenDML AVI M-JPEG File Format Subcommittee 編、1996 年 2 月 28 日) のバージョン 1.02 を参照すること。