ICCOMPRESS

typedef struct {

    DWORD dwFlags;

    LPBITMAPINFOHEADER lpbiOutput;

    LPVOID lpOutput;

    LPBITMAPINFOHEADER lpbiInput;

    LPVOID lpInput;

    LPDWORD lpckid;

    LPDWORD lpdwFlags;

    LONG lFrameNum;

    DWORD dwFrameSize;

    DWORD dwQuality;

    LPBITMAPINFOHEADER lpbiPrev;

    LPVOID lpPrev;

} ICCOMPRESS;

The ICCOMPRESS structure is used with the ICM_COMPRESS message to specify compression parameters.

Members

dwFlags

Specifies flags used for compression. At present, only the ICCOMPRESS_KEYFRAME flag is defined and indicates that the input data should be treated as a key frame.

lpbiOutput

Specifies a pointer to a BITMAPINFOHEADER structure containing the output (compressed) format. The biSizeImage member of the BITMAPINFOHEADER structure must be filled in with the size of the compressed data.

lpOutput

Specifies a pointer to the buffer where the driver should write the compressed data.

lpbiInput

Specifies a pointer to a BITMAPINFOHEADER structure containing the input format.

lpInput

Specifies a pointer to the buffer containing input data.

lpckid

Specifies a pointer to a buffer used to return the chunk ID for data in the AVI file.

lpdwFlags

Specifies a pointer to a buffer used to return flags for the AVI index.

lFrameNum

Specifies the frame number of the frame to compress.

dwFrameSize

Specifies zero, or the desired maximum size (in bytes) for compressing this frame.

dwQuality

Specifies the compression quality.

lpbiPrev

Specifies a pointer to a BITMAPINFOHEADER structure containing the format of the previous frame. Normally, this is the same as the input format.

lpPrev

Specifies a pointer to the buffer containing the previous frame.