ICCOMPRESSFRAMES
typedef struct {
DWORD dwFlags;
LPBITMAPINFOHEADER lpbiOutput;
LPARAM lOutput;
LPBITMAPINFOHEADER lpbiInput;
LPARAM lInput;
LONG lStartFrame;
LONG lFrameCount;
LONG lQuality;
LONG lDataRate;
LONG lKeyRate;
DWORD dwRate;
DWORD dwScale;
DWORD dwOverheadPerFrame;
DWORD dwReserved2;
LONG (CALLBACK* GetData) (LPARAM lInput, LONG lFrame, LPVOID lpBits,
LONG len);
LONG (CALLBACK* PutData) (LPARAM lOutput, LONG lFrame, LPVOID lpBits,
LONG len);
} ICCOMPRESSFRAMES;
The ICCOMPRESSFRAMES structure is used with the ICM_COMPRESS_FRAMES_INFO
message to specify compression parameters.
-
dwFlags
-
Specifies flags used for compression. At present, only the
ICDECOMPRESSFRAMES_PADDING flag is defined and indicates that padding is used
with the frame.
-
lpbiOutput
-
Specifies a pointer to a BITMAPINFOHEADER structure containing the output
format.
-
lOutput
-
Specifies a parameter returned by the function specified by the PutData
member.
-
lpbiInput
-
Specifies a pointer to a BITMAPINFOHEADER structure containing the input
format.
-
lInput
-
Specifies a parameter returned by the function specified by the GetData
member.
-
lStartFrame
-
Specifies the starting frame number to be compressed.
-
lFrameCount
-
Specifies the number of frames to compress.
-
lQuality
-
Specifies the quality.
-
lDataRate
-
Specifies the maximum data rate in bytes per second.
-
lKeyRate
-
Specifies the maximum spacing, in frames, between key frames.
-
dwRate
-
Specifies the compression rate in an integer format. To obtain the rate in
frames-per-second, divide this value by the value in dwScale.
-
dwScale
-
Specifies the value used to scale dwRate to frames-per-second.
-
dwOverheadPerFrame
-
Reserved.
-
dwReserved2
-
Reserved.
-
GetData
-
Specifies the callback function used get frames of data to compress. (Not
used.)
-
PutData
-
Specifies the callback function used to send frames of compressed data. (Not
used.)