ICDraw
The ICDraw function decompresses an image for drawing.
DWORD ICDraw(
HIC hic,
DWORD dwFlags,
LPVOID lpFormat,
LPVOID lpData,
DWORD cbData,
LONG lTime
);
Parameters
-
hic
-
Handle of an decompressor.
-
dwFlags
-
Decompression flags. The following values are defined:
-
ICDRAW_HURRYUP
-
Data is buffered and not drawn to the screen. Use this flag for fastest decompression.
-
ICDRAW_NOTKEYFRAME
-
Current frame is not a key frame.
-
ICDRAW_NULLFRAME
-
Current frame does not contain any data and the previous frame should be redrawn.
-
ICDRAW_PREROLL
-
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 key frame, 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_UPDATE
-
Updates the screen based on previously received data. Set lpData to NULL when this flag is used.
-
lpFormat
-
Address of a BITMAPINFOHEADER structure containing the input format of the data.
-
lpData
-
Address of the input data.
-
cbData
-
Size of the input data, in bytes.
-
lTime
-
Time, in samples, to draw this frame. The units for video data are frames. For a definition of the playback rate, see the dwRate and dwScale members of the ICDRAWBEGIN structure.
Return Values
Returns ICERR_OK if successful or an error otherwise.
Remarks
You can initiate drawing the frames by sending the ICM_DRAW_START message (or by using the ICDrawStart macro). The application should be sure to buffer the required number of frames before drawing is started. Send the KM_GETBUFFERSWANTED message (or use the ICGetBuffersWanted macro) to obtain this value.
QuickInfo
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in vfw.h.
Import Library: Use vfw32.lib.
See Also
Video Compression Manager Overview, Video Compression Functions, BITMAPINFOHEADER, ICDRAWBEGIN, ICM_DRAW_START