Drivers that can render video directly to hardware should support the ICM_DRAW messages in addition to the ICM_DECOMPRESS messages. The ICM_DRAW messages decompress data directly to hardware rather than into a data buffer returned to the client-application by the decompression driver.
Your driver will receive a series of messages from the client-application to coordinate the following activities to decompress a video sequence:
The following ICM_DRAW messages are used by video decompression drivers for these decompression activities:
Message | Description |
---|---|
ICM_DRAW | Decompresses a frame of data and draws it. |
ICM_DRAW_BEGIN | Prepares to draw data. |
ICM_DRAW_END | Clean up after decompressing an image to the screen. |
ICM_DRAW_REALIZE | Realizes a palette. |
ICM_DRAW_QUERY | Determines if the driver can render data in a specific format. |
ICM_DRAW_SUGGESTFORMAT | Has the driver suggest and output format. |
The video decompressed with the ICM_DRAW messages is retained by your driver and it handles the display of data. These messages control only the decompression process. The messages used to control the drawing are described separately. Your driver will receive the ICM_DRAW messages only if it sets the VIDCF_DRAW flag when it responds to the ICM_GETINFO message.