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:

·Setting the driver state

·Specifying the input format and determining the decompression format

·Preparing to decompress video

·Decompressing the video

·Ending decompression

The following messages are used by video compression and decompression drivers for these decompression activities.

Message Description
ICM_DECOMPRESSEX Decompresses a frame of data into a buffer provided by the client application.
ICM_DECOMPRESSEX_BEGIN Prepares a driver for decompressing data.
ICM_DECOMPRESSEX_END Cleans up after decompressing.
ICM_DECOMPRESS_GET_FORMAT Obtains a suggestion for a good format for the decompressed data.
ICM_DECOMPRESSEX_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, which 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. 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.