Microsoft DirectX 8.0 |
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 プロパティと値のペアを取得する。
プロパティと値のペアを取得する。
構文
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_POINTER NULL ポインタ引数。 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) を設定する。