ICM_DRAW

See also ICDraw, ICM_DECOMPRESS, ICM_DRAW_BEGIN, ICM_DRAW_END, ICM_DRAW_START, ICM_DRAW_STOP


wParam = (DWORD) (LPVOID) &icdraw;
lParam = sizeof(ICDRAW);

Notifies a rendering driver to decompress a frame of data and draw it to the screen.

wParam

Address of an ICDRAW structure.

lParam

Size, in bytes, of the ICDRAW structure.

If the ICDRAW_UPDATE flag is set in dwFlags member of the ICDRAW structure, the area of the screen used for drawing is invalid and needs to be updated. The extent of updating depends on the contents of the lpData member.

If lpData is NULL, the driver should update the entire destination rectangle with the current image. If the driver does maintain a copy of the image in an offscreen buffer, it can fail this message. If lpData is not NULL, the driver should draw the data and make sure the entire destination is updated.

If the ICDRAW_HURRYUP flag is set in the dwFlags member, the calling application wants the driver to proceed as quickly as possible, possibly not even updating the screen.

If the ICDRAW_PREROLL flag is set in the dwFlags member, this video frame is preliminary information and should not be displayed if possible. For example, if play is to start from frame 10, and frame 0 is the nearest previous keyframe, frames 0 through 9 will have the ICDRAW_PREROLL flag set.

If you want the driver to decompress data into a buffer, send the ICM_DECOMPRESS message.