The client-application sends a series of messages to your driver to coordinate decompressing video data. The coordination involves the following activities:
The following messages are used by video compression and decompression drivers for these decompression activities:
Message | Description |
---|---|
ICM_DECOMPRESS | Decompresses a frame of data into a buffer provided by the client-application. |
ICM_DECOMPRESS_BEGIN | Prepare a driver for decompressing data. |
ICM_DECOMPRESS_END | Cleans up after decompressing. |
ICM_DECOMPRESS_GET_FORMAT | Obtains a suggestion for a good format for the decompressed data. |
ICM_DECOMPRESS_QUERY | Determines if a driver can decompress a specific input format. |
ICM_DECOMPRESS_GET_PALETTE | Returns the color table of the output data structure. |
The video decompressed with these messages is returned to the client-application and it handles the display of data. If you want your driver to control the video timing or directly update the display, use the ICM_DRAW messages explained in "Decompressing Directly to Video Hardware." If you return the decompressed video to the client-application, your driver can decompress data using either software or hardware with the ICM_DECOMPRESS messages.