Color Converter DSP
Converts a video stream between color formats.
CLSID
CLSID_CColorConvertDMO
Interfaces
- IMediaObject
- IMFRealTimeClient
- IMFTransform
- IPropertyStore
- IWMColorConvProps
Input Formats
- RGB 24
- RGB 32
- RGB 555
- RGB 565
- RGB 8
- AYUV
- I420
- IYUV
- NV11
- NV12
- UYVY
- V216
- V410
- Y41P
- Y41T
- Y42T
- YUY2
- YV12
- YVU9
- YVYU
Output Formats
- RGB 24
- RGB 32
- RGB 555
- RGB 565
- RGB 8
- AYUV
- I420
- IYUV
- NV11
- NV12
- UYVY
- V216
- V410
- YUY2
- YV12
- YVYU
Properties
- MFPKEY_COLORCONV_SRCLEFT
- MFPKEY_COLORCONV_SRCTOP
- MFPKEY_COLORCONV_DSTLEFT
- MFPKEY_COLORCONV_DSTTOP
- MFPKEY_COLORCONV_WIDTH
- MFPKEY_COLORCONV_HEIGHT
- MFPKEY_COLORCONV_MODE
Remarks
The Color Converter DSP is implemented as a COM object that can act as a DirectXMedia Object (DMO) or a Media Foundation Transform (MFT). The object has a single class identifier (CLSID) regardless of whether it acts as a DMO or an MFT. For information about when a DSP acts as a DMO or an MFT, see Digital Signal Processor Implementation.
The globally unique identifiers (GUIDs) for RGB media subtypes differ depending on whether a DSP is acting as a DMO or an MFT. The GUIDs for non-RGB media subtypes are the same, regardless of whether a DSP is acting as a DMO or an MFT. For information about the GUIDs that represent media subtypes, see Media Subtype GUIDs.
By default, this DSP copies the entire source image to the output buffer. Optionally, you can specify source and destination rectangles. The DSP copies the portion of the source image defined by source rectangle, and writes it into the destination rectangle on the output buffer. The DSP does not perform any scaling; the source and destination rectangles must be the same size. The source and destination rectangles cannot exceed the boundaries of the video frame.
All of the properties except MFPKEY_COLORCONV_MODE must be set in a group. If you set any of these properties, you must set all of the others. Otherwise, the source and destination rectangles might be invalid, in which case both the IMFTransform::ProcessOutput and IMediaObject::ProcessOutput methods will return E_INVALIDARG.
The color converter does not support every combination of input format and output format. Usually, you should set the media format that you know, either input or output, and then enumerate the available formats on the opposite stream.
Requirements
Minimum supported client |
Windows Vista |
Minimum supported server |
Windows Server 2008 |
Header |
Wmcodecdsp.h |
DLL |
Colorcnv.dll |
See Also
Send comments about this topic to Microsoft
Build date: 4/7/2010