2.2.4.1.1.3.1 CLEARCODEC_SUBCODEC
The CLEARCODEC_SUBCODEC structure encapsulates an uncompressed bitmap or a bitmap encoded with the NSCodec Codec ([MS-RDPNSC] sections 1 through 3) or the RLEX scheme as specified in section 2.2.4.1.1.3.1.1.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
xStart |
yStart |
||||||||||||||||||||||||||||||
width |
height |
||||||||||||||||||||||||||||||
bitmapDataByteCount |
|||||||||||||||||||||||||||||||
subCodecId |
bitmapData (variable) |
||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
xStart (2 bytes): A 16-bit unsigned integer that specifies the horizontal position (relative to the left edge of the bitmap) where the subcodec-encoded bitmap MUST be placed once it has been decoded.
yStart (2 bytes): A 16-bit unsigned integer that specifies the vertical position (relative to the top edge of the bitmap) where the subcodec-encoded bitmap MUST be placed once it has been decoded.
width (2 bytes): A 16-bit unsigned integer that specifies the width of the subcodec-encoded bitmap.
height (2 bytes): A 16-bit unsigned integer that specifies the height of the subcodec-encoded bitmap.
bitmapDataByteCount (4 bytes): A 32-bit unsigned integer that specifies the number of bytes in the bitmapData field. This field MUST be used to determine whether the bitmap in the bitmapData field is in compressed or uncompressed format. The value in the bitmapDataByteCount field MUST NOT exceed (3 * width * height).
subCodecId (1 byte): An 8-bit unsigned integer that identifies the encoding scheme used to encode the data in the bitmapData field.
bitmapData (variable): A variable-length array of bytes that contains bitmap data.
-
If the subCodecId field equals 0x00, the bitmapData field contains the raw pixels of the bitmap in little-endian byte order (blue in the first byte, green in the second byte, and red in the third byte). The pixels are ordered from left to right and then top to bottom.
-
If the subCodecId field equals 0x01, the bitmapData field contains a bitmap encoded with the NSCodec Codec ([MS-RDPNSC] section 1, 2 and 3).
-
If the subCodecId field equals 0x02, the bitmapData field contains a CLEARCODEC_SUBCODEC_RLEX (section 2.2.4.1.1.3.1.1) structure.