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.