ICDRAW

See also ICDRAWBEGIN, ICM_DRAW_BEGIN


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

Contains parameters for drawing video data to the screen. This structure is used with the ICM_DRAW message.

dwFlags

Flags from the AVI file index. The following values are defined:

ICDRAW_HURRYUP

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

ICDRAW_UPDATE

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

ICDRAW_PREROLL

Indicates the current frame of video occurs before playback should start. For example, if playback will begin on frame 10, and frame 0 is the nearest previous keyframe, frames 0 through 9 are sent to the driver with the ICDRAW_PREROLL flag set. The driver needs this data to display frame 10 properly.

ICDRAW_NULLFRAME

Indicates the current frame does not contain any data, and the previous frame should be redrawn.

ICDRAW_NOTKEYFRAME

Indicates the current frame is not a key frame.


lpFormat

Address of a structure containing the data format. For video streams, this is a BITMAPINFOHEADER structure.

lpData

Address of the data to render.

cbData

Number of bytes of data to render.

lTime

Time, in samples, when this data should be drawn. For video data this is normally a frame number.