Microsoft DirectX 8.0

IMediaPropertyBag インターフェイス

IMediaPropertyBag インターフェイスは、メディア プロパティ バッグで公開される。メディア プロパティ バッグとは、標準的な COM のプロパティ バッグを特殊化したものであり、AVI (Audio-Video Interleaved) ファイルの INFO チャンクおよび DISP チャンクの設定および取得を目的としている。

INFO チャンクには、作者、著作権情報など、ファイルに関する包括的な情報が格納されている。DISP チャンクには、データがクリップボード フォーマットで格納されている。詳細については、RIFF (Resource Interchange File Format) の仕様を参照すること。

メディア プロパティ バッグのチャンクは、次のように名前/値ペアで格納される。

このインターフェイスは IPropertyBag インターフェイスを継承する。このインターフェイスを IPersistMediaPropertyBag インターフェイスと共に使用して、AVI ファイルから INFO チャンクおよび DISP チャンクを取得する。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterface サポートされているインターフェイスへのポインタを取得する。
AddRef 参照カウントをインクリメントする。
Release 参照カウントをデクリメントする。
IMediaPropertyBag メソッド説明
EnumProperty プロパティと値のペアを取得する。

IMediaPropertyBag::EnumProperty

IMediaPropertyBag インターフェイス

プロパティと値のペアを取得する。

構文

HRESULT EnumProperty(
    ULONG iProperty,
    VARIANT *pvarPropertyName,
    VARIANT *pvarPropertyValue
);

パラメータ

iProperty
[in] ペアのインデックス値。
pvarPropertyName
[in, out] プロパティの名前を受け取る VARIANT へのポインタ。
pvarPropertyValue
[in, out] プロパティの値を受け取る VARIANT へのポインタ。

戻り値

HRESULT 値を返す。設定される値は次のとおりである。

S_OK成功。
E_INVALIDARG無効な引数。
E_OUTOFMEMORYメモリ不足。
E_POINTERNULL ポインタ引数。
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS)インデックスが範囲外。

注意

名前は常に文字列である。このメソッドを呼び出す前に、VARIANT 型の pvarPropertyName パラメータに VT_EMPTY または VT_BSTR を設定すること。

値は文字列 (INFO チャンクの場合) またはバイト配列 (DISP チャンクの場合) である。VARIANT 型の pvarPropertyName パラメータに VT_EMPTY、VT_BSTR、または (VT_ARRAY | VT_UI1) を設定する。