Microsoft DirectX 8.1 (C++)

IPersistMediaPropertyBag::Load

The Load method loads properties from the media property bag into the filter.

Syntax

HRESULT Load(
  IMediaPropertyBag *pPropBag,
  IErrorLog *pErrorLog
);

Parameters

pPropBag

[in] Pointer to the IMediaPropertyBag interface of a media property bag created by the caller.

pErrorLog

[in] Reserved. Set the value to NULL.

Return Value

Returns an HRESULT value. Possible values include the following:

Value Description
S_OK Success.
E_POINTER NULL pointer argument.
STG_E_ACCESSDENIED Access denied.
VFW_E_WRONG_STATE Filter graph is not in a stopped state.

Remarks

Call this method on the AVI Mux filter to write the properties into the AVI stream. The following code example writes an IART (author name) INFO chunk to the stream.

IPersistMediaPropertyBag *pPersist = NULL;
IMediaPropertyBag *pBag = NULL;
VARIANT val;

// Query the AVI Mux filter for IPersistMediaPropertyBag (not shown).

CoCreateInstance(CLSID_MediaPropertyBag, NULL, CLSCTX_INPROC,
        IID_IMediaPropertyBag, (LPVOID *)&pBag);

val.vt = VT_BSTR;
val.bstrVal = SysAllocString(L"Author Name");
pBag->Write(L"INFO/IART", &val);
pPersist->Load(pBag, NULL);
VariantClear(&val);

The AVI Splitter filter and the WAVE Parser do not support this method.

See Also