Lists the possible values for the compression flags.
typedef enum
{
FLAGS_DISABLE_ENCODER,
FLAGS_DISABLE_DECODER,
FLAGS_INTERLEAVE_NEVER,
FLAGS_INTERLEAVE_288,
FLAGS_INTERLEAVE_ALWAYS,
FLAGS_FLIP_YUV,
FLAGS_OVERRIDE_DEFAULTS,
FLAGS_NO_REGISTRY_SAVE,
} MCMPFilterFlagsConstants;
Enumeration | Description |
---|---|
FLAGS_DISABLE_ENCODER | [0x0001] Disables the MCMP/MJPEG VFW encoder. NOTE: This flag is deprecated and should not be used anymore. |
FLAGS_DISABLE_DECODER | [0x0002] Disables the MCMP/MJPEG VFW decoder. NOTE: If you disable the decoder, you will not be able to use it to decode MJPEG or MCMP video again until re-enabled programmatically or through a utility like GraphEdit. This flag is deprecated and should not be used anymore. |
FLAGS_INTERLEAVE_NEVER | [0x0000] Save images non-interleaved. |
FLAGS_INTERLEAVE_288 | [0x0004] Interleave images with height >= 288. |
FLAGS_INTERLEAVE_ALWAYS | [0x0008] Set this to save interlaced MJPG files. |
FLAGS_FLIP_YUV | [0x0010] Indicates how YUV video data is handled. If this flag is not set, then YUV video with a positive height value (BITMAPINFOHEADER.biHeight) is handled as normal video, top side up. YUV video with a negative height value is handled as flipped video, bottom side up. If this flag is set, then YUV video with a positive height value is handled as flipped video, bottom side up, and YUV video with a negative height value is handled as normal, top side up. |
FLAGS_OVERRIDE_DEFAULTS | [0x0020] If this flag is set, then the defaults are overridden. |
FLAGS_NO_REGISTRY_SAVE | [0x0040] Do not save these settings in the registry. Set this flag if the compression is temporarily disabled because the input does not permit compression. |
Lists the possible values that represents the state of the filter.
typedef enum
{
FilterState_Stopped,
FilterState_Paused,
FilterState_Running,
} MCMPFilterStateConstants;
Enumeration | Description |
---|---|
FilterState_Stopped | [0] The filter is stopped. |
FilterState_Paused | [1] The filter is paused. |
FilterState_Running | [2] The filter is running. |
Lists the possible values for the quality factor for compression.
typedef enum
{
QFACTOR_PQ1,
QFACTOR_PQ2,
QFACTOR_QFS,
QFACTOR_QMS,
QFACTOR_QS,
QFACTOR_SQS,
QFACTOR_SQT,
QFACTOR_MCQ,
QFACTOR_MC,
} MCMPPredefinedQFactorConstants;
Enumeration | Description |
---|---|
QFACTOR_PQ1 | (-1) Perfect quality option 1. |
QFACTOR_PQ2 | (-2) Perfect quality option 2. |
QFACTOR_QFS | (-3) Quality far more important than size. |
QFACTOR_QMS | (-4) Quality more important than size. |
QFACTOR_QS | (-5) Quality and size are equally important. |
QFACTOR_SQS | (-6) Size more important than quality - Sharp. |
QFACTOR_SQT | (-7) Size more important than quality - Less Tilling. |
QFACTOR_MCQ | (-8) Max Compression, keeping quality as good as possible. |
QFACTOR_MC | (-9) Max compression |
Lists possible values for the MCMP formats.
typedef enum
{
FORMAT_MCMP,
FORMAT_LOSSLESSJPEG,
FORMAT_MJPEG_411,
FORMAT_MJPEG_422,
FORMAT_MJPEG_444,
} MCMPFormatConstants;
Enumeration | Description |
---|---|
FORMAT_MCMP | [5] MCMP format. |
FORMAT_LOSSLESSJPEG | [-1] Lossless JPEG. |
FORMAT_MJPEG_411 | [21] MJPEG 4:1:1 subsampling. Has a higher compression ratio than 4:2:2 and 4:4:4. |
FORMAT_MJPEG_422 | [23] MJPEG 4:2:2 subsampling. Lower compression ratio than 4:1:1, higher compression than 4:4:4. |
FORMAT_MJPEG_444 | [10] MJPEG 4:4:4 subsampling. |
Type | Name | Description |
---|---|---|
long | Format | Gets or sets a value that represents the codec format. For the list of possible values, refer to MCMPFormatConstants. |
long | QFactor | Gets or sets the quality factor for compression. A QFactor of 2 has the highest quality and lowest compression ratio. As the QFactor increases, the quality decreases and the compression ratio increases. A QFactor of 255 has the lowest quality and highest compression ratio. Possible values for each format are: |
FORMAT_MCMP: 2...255 and MCMPPredefinedQFactorConstants | ||
FORMAT_LOSSLESSJPEG: QFactor is ignored for lossless JPEG. | ||
FORMAT_MJPEG_411: 2...255 | ||
FORMAT_MJPEG_422: 2...255 | ||
FORMAT_MJPEG_444: 2...255 | ||
long | Flags | Gets or sets the compression flags. These flags can be OR-ed together, except for the FLAGS_INTERLEAVE_XXX flags. Only one of the interleave flags can be set. Setting FLAGS_INTERLEAVE_NEVER is equal to setting no interleave flags at all. For a list of possible values, refer to MCMPFilterFlagsConstants. |
long | FilterState | (Read only) Gets a value that represents the state of the filter. For a list of possible values, refer to MCMPFilterStateConstants. |
This is a standard DirectShow® interface. For full documentation, refer to DirectShow® documentation.
This interface allows you to select only the quality factor for the codec. For full control over the codec settings, use the IMCMPEncoderOption interface.