Share via


Windows Media Video 9 Screen Codec

banner art

The Windows Media Video Screen encoder object is instantiated using the class identifier CLSID_CMSSCEncMediaObject2. The decoder is instantiated using the class identifier CLSID_CMSSCDecMediaObject. The FOURCC for Windows Media Video Screen Version 9 encoded content is "MSS2".

Formats

The following input types are supported by the Version 9 Screen decoder.

  • MEDIASUBTYPE_MSS2

The following output types are supported by the Version 9 Screen decoder when it is being used as a DirectX Media Object (DMO).

  • MEDIASUBTYPE_RGB24
  • MEDIASUBTYPE_RGB32
  • MEDIASUBTYPE_ARGB32
  • MEDIASUBTYPE_RGB565
  • MEDIASUBTYPE_RGB555
  • MEDIASUBTYPE_RGB8

The following output types are supported by the Version 9 Screen decoder when it is being used as a Media Foundation Transform (MFT).

  • MFVideoFormat_RGB24
  • MFVideoFormat_RGB32
  • MFVideoFormat_ARGB32
  • MFVideoFormat_RGB565
  • MFVideoFormat_RGB555
  • MFVideoFormat_RGB8

Encoder Properties

The following properties can be set on the encoder for the Windows Media Video 9 Screen encoder.

Property Description
MFPKEY_ASFOVERHEADPERFRAME Specifies the overhead, in bytes per packet, required for the container that is used to store the compressed content.
MFPKEY_BAVG Specifies the buffer window, in milliseconds, of a constrained variable-bit-rate (VBR) stream at its average bit rate (specified by MFPKEY_RAVG).
MFPKEY_BMAX Specifies the buffer window, in milliseconds, of a constrained variable-bit-rate (VBR) stream at its peak bit rate (specified by MFPKEY_RMAX).
MFPKEY_BUFFERFULLNESSINFIRSTBYTE Specifies whether the encoded video bit stream contains a buffer fullness value with every key frame.
MFPKEY_CODEDFRAMES Specifies the number of video frames encoded by the codec.
MFPKEY_CODEDNONZEROFRAMES Specifies the number of video frames encoded by the codec that actually contain data.
MFPKEY_COMPLEXITY This property is superseded by MFPKEY_COMPLEXITYEX
MFPKEY_COMPLEXITYEX Specifies the encoder algorithm complexity.
MFPKEY_CRISP Specifies a numeric representation of the tradeoff between motion smoothness and image quality of codec output.
MFPKEY_DROPPEDFRAMES Specifies the number of video frames dropped during encoding.
MFPKEY_ENDOFPASS Specifies the end of an encoding pass.
MFPKEY_FOURCC Specifies the FOURCC identifying the encoder you want to use.
MFPKEY_KEYDIST Specifies the maximum time, in milliseconds, between key frames in the codec output.
MFPKEY_PASSESRECOMMENDED Specifies the maximum number of passes supported by the codec.
MFPKEY_PASSESUSED Specifies the number of passes that the codec will use to encode the content.
MFPKEY_RAVG Specifies the average bit rate, in bits per second, used for 2-pass variable-bit-rate (VBR) encoding.
MFPKEY_RMAX Specifies the peak bit rate, in bits per second, used for constrained 2-pass variable-bit-rate (VBR).
MFPKEY_TOTALFRAMES Specifies the number of video frames passed to the codec.
MFPKEY_VBRENABLED Specifies whether the codec will use variable-bit-rate (VBR) encoding.
MFPKEY_VBRQUALITY Specifies the actual quality level for quality based (1-pass) variable-bit-rate (VBR) encoding.
MFPKEY_VIDEOWINDOW The amount of content, in milliseconds, that can fit into the model buffer.
MFPKEY_ZEROBYTEFRAMES Specifies the number of video frames that are skipped because they were duplicates of previous frames.

Remarks

A video encoder or decoder object exposes the IMediaObject interface so that the object can be used as a DirectX Media Object (DMO), and the IMFTransform interface so that the object can be used as a Media Foundation Transform (MFT).

A video encoder or decoder behaves as a DMO or an MFT depending on which interfaces you obtain and which version of Windows is running. The following table shows the conditions under which a video encoder or decoder behaves as a DMO or an MFT.

Operating system Encoder or decoder behavior
Windows XP A Windows Media video encoder or decoder always behaves as a DMO.
Windows Vista and Windows 7 By default, a Windows media video encoder or decoder behaves as a DMO. If you obtain an IMFTransform interface on a video encoder or decoder, it behaves as an MFT.

You can use the same CLSID (CLSID_CMSSCDecMediaObject) to create the Version 7 Screen decoder and the Version 9 Screen decoder. The FOURCC for Windows Media Video Screen Version 7 encoded content is "MSS1". The Version 7 Screen decoder supports the MEDIASUBTYPE_MSS1 input type.

Requirements

Client: Requires Windows 7, Windows Vista, or Windows XP.

Header: Include wmcodecdsp.h.

Library: Use wmvsencd.dll for the encoder and wmvsdecd.dll for the decoder.

See Also