ICDRAW

typedef struct {
    DWORD dwFlags;
    LPVOID lpFormat;
    LPVOID lpData;
    DWORD cbData;
    LONG lTime;
} ICDRAW;

The ICDRAW structure is used with the ICM_DRAW message to specify the parameters for drawing video data to the screen.

Members
dwFlags
Specifies the flags from the AVI file index. The following flags are defined:

Flag

Meaning

ICDRAW_HURRYUP

Indicates the data is just buffered and not drawn to the screen. Use this flag for the fastest decompression.

ICDRAW_UPDATE

Indicates the driver should update the screen based on data previously received. In this case, the lpData parameter should be ignored.

ICDRAW_PREROLL

Indicates that this frame of video occurs before actual playback should start. For instance, if playback is to begin on frame 10, and frame 0 is the nearest previous key frame, frames 0 through 9 are sent to the driver with the ICDRAW_PREROLL flag set. The driver needs this data so it can display frame 10 properly, but frames 0 through 9 need not be individually displayed.

ICDRAW_NULLFRAME

Indicates the previous frame should be repeated.

ICDRAW_NOTKEYFRAME

Indicates the image is not a key frame.

lpFormat
Specifies a pointer to a structure containing the data format. For video, this is a BITMAPINFOHEADER structure.
lpData
Specifies the data to be rendered.
cbData
Specifies the number of bytes of data to be rendered.
lTime
Specifies the time, in samples, when this data should be drawn. For video data, this is usually a frame number. See dwRate and dwScale of the ICDRAW structure for details.