TSDL_Overlay = record
format: Uint32; // Overlay format
w, h: Integer; // Width and height of overlay
planes: Integer; // Number of planes in the overlay. Usually either 1 or 3
pitches: PUint16; // An array of pitches, one for each plane. Pitch is the length of a row in bytes.
pixels: PUint8; // An array of pointers to teh data of each plane. The overlay should be locked before these pointers are used.
hw_overlay: Uint32; // This will be set to 1 if the overlay is hardware accelerated.
end;
format | Overlay format (see below) |
w, h | Width and height of overlay |
planes | Number of planes in the overlay. Usually either 1 or 3 |
pitches | An array of pitches, one for each plane. Pitch is the length of a row in bytes. |
pixels | An array of pointers to teh data of each plane. The overlay should be locked before these pointers are used. |
hw_overlay | This will be set to 1 if the overlay is hardware accelerated. |
A TSDL_Overlay is similar to a TSDL_Surface except it stores a YUV overlay. All the fields are read only, except for pixels which should be locked before use. The format field stores the format of the overlay which is one of the following:
constMore information on YUV formats can be found at http://www.webartz.com/fourcc/indexyuv.htm.
SDL_YV12_OVERLAY = $32315659; // Planar mode: Y + V + U
SDL_IYUV_OVERLAY = $56555949; // Planar mode: Y + U + V
SDL_YUY2_OVERLAY = $32595559; // Packed mode: Y0 + U0 + Y1 + V0
SDL_UYVY_OVERLAY = $59565955; // Packed mode: U0 + Y0 + V0 + Y1
SDL_YVYU_OVERLAY = $55595659; // Packed mode: Y0 + V0 + Y1 + U0