Decompressing Video Data

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.