MFSerializeAttributesToStream function (mfobjects.h)

Writes the contents of an attribute store to a stream.


HRESULT MFSerializeAttributesToStream(
  IMFAttributes *pAttr,
  DWORD         dwOptions,
  IStream       *pStm



Pointer to the IMFAttributes interface of the attribute store.


Bitwise OR of zero or more flags from the MF_ATTRIBUTE_SERIALIZE_OPTIONS enumeration.


Pointer to the IStream interface of the stream where the attributes are saved.

Return value

The function returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
The method succeeded.


If dwOptions contains the MF_ATTRIBUTE_SERIALIZE_UNKNOWN_BYREF flag, the function serializes IUnknown pointers in the attribute store, as follows:

If dwOptions does not include the MF_ATTRIBUTE_SERIALIZE_UNKNOWN_BYREF flag, the function skips IUnknown pointers in the attribute store.

To load the attributes from the stream, call MFDeserializeAttributesFromStream.

The main purpose of this function is to marshal attributes across process boundaries.


Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header mfobjects.h (include Mfidl.h)
Library Mfplat.lib
DLL Mfplat.dll

See also

Attributes and Properties

Media Foundation Functions