ICCOMPRESSFRAMES

See also ICM_COMPRESS_FRAMES_INFO


typedef struct {
    DWORD dwFlags;
    LPBITMAPINFOHEADER lpbiOutput;
    LPARAM lOutput;                  // Reserved; do not use
    LPBITMAPINFOHEADER lpbiInput;
    LPARAM lInput;                   // Reserved; do not use
    LONG lStartFrame;
    LONG lFrameCount;
    LONG lQuality;                   // Quality setting
    LONG lDataRate;
    LONG lKeyRate;
    DWORD dwRate;
    DWORD dwScale;
    DWORD dwReserved;                // Reserved; do not use
    DWORD dwReserved1;               // Reserved; do not use
    LONG (CALLBACK* GetData) (LPARAM lInput, LONG lFrame, 
        LPVOID lpBits, LONG len);
    LONG (CALLBACK* GetData) (LPARAM lInput, LONG lFrame, 
        LPVOID lpBits, LONG len);
} ICCOMPRESSFRAMES;

Contains compression parameters used with the ICM_COMPRESS_FRAMES_INFO message.

dwFlags

Applicable flags. The following value is defined:

ICDECOMPRESSFRAMES_PADDING

Indicates padding is used with the frame.


lpbiOutput

Address of a BITMAPINFOHEADER structure containing the output format.

lpbiInput

Address of a BITMAPINFOHEADER structure containing the input format.

lStartFrame

Number of the first frame to compress.

lFrameCount

Number of frames to compress.

lDataRate

Maximum data rate, in bytes per second.

lKeyRate

Maximum number of frames between consecutive key frames.

dwRate

Compression rate in an integer format. To obtain the rate in frames per second, divide this value by the value in dwScale.

dwScale

Value used to scale dwRate to frames per second.

GetData

Reserved; do not use.

PutData

Reserved; do not use.