Using Uncompressed Audio and Video Streams

[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.]

Under most circumstances, uncompressed media has prohibitively large storage and delivery requirements, but for some local playback scenarios, the quality level is important enough to warrant not using compression..

The settings for an uncompressed media stream should reflect the settings of the source media. When configuring an uncompressed stream, you must calculate the bit rate of the media and set the stream appropriately by calling IWMStreamConfig::SetBitrate. Because uncompressed streams are not viable for streaming, you should always set the buffer window for uncompressed media streams to zero by calling IWMStreamConfig::SetBufferWindow.

The following pixel formats are supported for uncompressed video streams:

  • WMMEDIASUBTYPE_RGB555
  • WMMEDIASUBTYPE_RGB24
  • WMMEDIASUBTYPE_RGB32
  • WMMEDIASUBTYPE_I420
  • WMMEDIASUBTYPE_IYUV
  • WMMEDIASUBTYPE_YV12
  • WMMEDIASUBTYPE_YUY2
  • WMMEDIASUBTYPE_UYVY
  • WMMEDIASUBTYPE_YVYU

Configuration Common to All Streams

Configuring Audio Streams

Configuring Streams

Configuring Video Streams