Windows Media Video 9 Screen Encoder
The Windows Media Video 9 Screen encoder is optimized for encoding sequential screen shots from computer monitors.
Class Identifier
The class identifier (CLSID) for the Windows Media Video 9 Screen encoder is represented by the constant CLSID_CMSSCEncMediaObject2. You can create an instance of the encoder by calling CoCreateInstance.
Input Types
The following input types are supported by the Version 9 Screen encoder 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 input types are supported by the Version 9 Screen encoder when it is being used as a Media Foundation Transform (MFT).
- MFVideoFormat_RGB24
- MFVideoFormat_RGB32
- MFVideoFormat_ARGB32
- MFVideoFormat_RGB565
- MFVideoFormat_RGB555
- MFVideoFormat_RGB8
Output Types
The four-character code (FOURCC) for Windows Media Video Screen Version 9 encoded content is "MSS2".
The following output types are supported by the Version 9 Screen encoder.
- MEDIASUBTYPE_MSS2
Encoder Properties
The Windows Media Video 9 Screen encoder supports the following properties.
Property | Description |
---|---|
MFPKEY_ASFOVERHEADPERFRAME | Specifies the overhead, in bytes per packet, required for the container that is used to store the compressed content.
Write-only. |
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).
Read/write. |
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).
Read/write. |
MFPKEY_BUFFERFULLNESSINFIRSTBYTE | Specifies whether the encoded video bit stream contains a buffer fullness value with every key frame.
Read-only. |
MFPKEY_CODEDFRAMES | Specifies the number of video frames encoded by the codec.
Read-only. |
MFPKEY_CODEDNONZEROFRAMES | Specifies the number of video frames encoded by the codec that actually contain data.
Read-only. |
MFPKEY_COMPLEXITY | This property is superseded by MFPKEY_COMPLEXITYEX. |
MFPKEY_COMPLEXITYEX | Specifies the complexity of the encoder algorithm.
Write-only. |
MFPKEY_CRISP | Specifies a numeric representation of the tradeoff between motion smoothness and image quality in codec output.
Write-only. |
MFPKEY_DROPPEDFRAMES | Specifies the number of video frames dropped during encoding.
Read-only. |
MFPKEY_ENDOFPASS | Specifies the end of an encoding pass.
Write-only. |
MFPKEY_FOURCC | Specifies the FOURCC that identifies the encoder you want to use.
Write-only. |
MFPKEY_KEYDIST | Specifies the maximum time, in milliseconds, between key frames in the codec output.
Write-only. |
MFPKEY_LIVEENCODE | Obsolete. |
MFPKEY_PASSESRECOMMENDED | Specifies the maximum number of passes supported by the codec.
Read-only. |
MFPKEY_PASSESUSED | Windows XP and later. Read/write. Specifies the number of passes that the codec will use to encode the content.
Read/write. |
MFPKEY_QPPERFRAME | Specifies QP. Possible values are 1.0 through 31.0.
Write-only. |
MFPKEY_RAVG | Specifies the average bit rate, in bits per second, used for 2-pass variable-bit-rate (VBR) encoding.
Read/write. |
MFPKEY_RMAX | Specifies the peak bit rate, in bits per second, used for constrained 2-pass variable-bit-rate (VBR) encoding.
Read/write. |
MFPKEY_TOTALFRAMES | Specifies the number of video frames passed to the encoder during the encoding process.
Read-only. |
MFPKEY_VBRENABLED | Specifies whether the codec will use variable-bit-rate (VBR) encoding.
Read/write. |
MFPKEY_VBRQUALITY | Specifies the actual quality level for quality based (1-pass) variable-bit-rate (VBR) encoding.
Write-only. |
MFPKEY_VIDEOWINDOW | The amount of content, in milliseconds, that can fit into the model buffer.
Write-only. |
MFPKEY_ZEROBYTEFRAMES | Specifies the number of video frames that were skipped because they were duplicates of previous frames.
Read-only. |
Remarks
A screen encoder object exposes the IMediaObject interface so that the object can be used as a DirectX Media Object (DMO), and it exposes the IMFTransform interface so that the object can be used as a Media Foundation Transform (MFT).
A screen encoder 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 screen encoder behaves as a DMO or an MFT.
Operating system | Encoder behavior |
---|---|
Windows XP | A Windows Media Screen encoder always behaves as a DMO. |
Windows Vista and Windows 7 | By default, a Windows Media Screen encoder behaves as a DMO. If you obtain an IMFTransform interface on a screen encoder, it behaves as an MFT. |
Requirements
Requirement | Value |
---|---|
Client |
Windows XP, Windows Vista or Windows 7 |
Header |
|
DLL |
|
See also