IWMReader::GetOutputFormat method (wmsdkidl.h)

[The feature associated with this page, Windows Media Format 11 SDK, is a legacy feature. It has been superseded by Source Reader and Sink Writer. Source Reader and Sink Writer have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use Source Reader and Sink Writer instead of Windows Media Format 11 SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The GetOutputFormat method retrieves the supported formats for a specified output media stream.


HRESULT GetOutputFormat(
  [in]  DWORD               dwOutputNumber,
  [in]  DWORD               dwFormatNumber,
  [out] IWMOutputMediaProps **ppProps


[in] dwOutputNumber

DWORD containing the output number.

[in] dwFormatNumber

DWORD containing the format number.

[out] ppProps

Pointer to a pointer to an IWMOutputMediaProps interface. This interface belongs to an output media properties object created by a successful call to this method. The properties exposed by this interface represent formats than can be supported by the specified output; the current properties set for the output can be obtained by calling IWMReader::GetOutputProps.

Return value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.


The Windows Media codecs can deliver media samples for a stream in a number of formats. For example, the Windows Media Video 9 codec can deliver samples in various RGB or YUV formats. You can use this method in conjunction with IWMReader::GetOutputFormatCount to loop through the available formats and find the one you need.

To use a format returned by this method, you must call IWMReader::SetOutputProps.

This method is synchronous and does not result in any messages being sent to the status callback.


Minimum supported client Windows 2000 Professional [desktop apps only],Windows Media Format 7 SDK, or later versions of the SDK
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wmsdkidl.h (include Wmsdk.h)
Library Wmvcore.lib; WMStubDRM.lib (if you use DRM)

See also

IWMReader Interface