Go to the documentation of this file.
35 #define BD_OVERLAY_INTERFACE_VERSION 2
82 } BD_PG_PALETTE_ENTRY;
108 const BD_PG_RLE_ELEM *
img;
121 BD_OVERLAY *bd_overlay_copy(
const BD_OVERLAY *src)
123 BD_OVERLAY *ov = malloc(
sizeof(*ov));
124 memcpy(ov, src,
sizeof(*ov));
126 ov->palette = malloc(256 *
sizeof(BD_PG_PALETTE_ENTRY));
127 memcpy((
void*)ov->palette, src->palette, 256 *
sizeof(BD_PG_PALETTE_ENTRY));
135 void bd_overlay_free(BD_OVERLAY **pov)
138 BD_OVERLAY *ov = *pov;
139 void *p = (
void*)ov->palette;
236 #endif // BD_OVERLAY_H_
struct bd_argb_buffer_s::@0 dirty[2]
Dirty area of frame buffers.
@ BD_OVERLAY_FLUSH
All changes have been done, flush overlay to display at given pts.
Definition: overlay.h:65
uint8_t T
Transparency ( 0...255).
Definition: overlay.h:81
uint32_t * buf[4]
[0] - PG plane, [1] - IG plane.
Definition: overlay.h:209
@ BD_ARGB_OVERLAY_FLUSH
All changes have been done, flush overlay to display at given pts.
Definition: overlay.h:160
bd_overlay_cmd_e
YUV overlay event type.
Definition: overlay.h:52
uint8_t cmd
Overlay event type (bd_overlay_cmd_e)
Definition: overlay.h:98
void(* unlock)(struct bd_argb_buffer_s *)
Unlock buffer (write complete)
Definition: overlay.h:201
uint16_t w
region width
Definition: overlay.h:104
uint16_t color
palette index
Definition: overlay.h:89
uint16_t len
RLE run length.
Definition: overlay.h:88
uint8_t Y
Y component (16...235)
Definition: overlay.h:78
uint16_t w
region width
Definition: overlay.h:178
const BD_PG_RLE_ELEM * img
RLE-compressed overlay image.
Definition: overlay.h:108
uint16_t y1
bottom-down y coordinate
Definition: overlay.h:227
uint8_t plane
Overlay plane (bd_overlay_plane_e)
Definition: overlay.h:97
bd_overlay_plane_e
Overlay plane.
Definition: overlay.h:40
Overlay palette entry.
Definition: overlay.h:77
uint16_t x
top-left x coordinate
Definition: overlay.h:102
Application-allocated frame buffer for ARGB overlays.
Definition: overlay.h:195
uint16_t x0
top-left x coordinate
Definition: overlay.h:224
uint16_t h
region height
Definition: overlay.h:179
@ BD_OVERLAY_IG
Interactive Graphics plane (on top of PG plane)
Definition: overlay.h:42
uint8_t plane
Overlay plane (bd_overlay_plane_e)
Definition: overlay.h:168
bd_argb_overlay_cmd_e
ARGB overlay event type.
Definition: overlay.h:151
@ BD_ARGB_OVERLAY_DRAW
Draw ARGB image on plane.
Definition: overlay.h:159
const void * bd_refcnt_inc(const void *)
Hold reference-counted object.
uint8_t Cr
Cr component (16...240)
Definition: overlay.h:79
uint8_t Cb
Cb component (16...240)
Definition: overlay.h:80
@ BD_OVERLAY_DRAW
Draw bitmap.
Definition: overlay.h:61
const BD_PG_PALETTE_ENTRY * palette
overlay palette (256 entries)
Definition: overlay.h:107
@ BD_OVERLAY_CLEAR
Clear overlay plane.
Definition: overlay.h:60
void(* lock)(struct bd_argb_buffer_s *)
Lock (or prepare) buffer for writing.
Definition: overlay.h:200
ARGB overlay event.
Definition: overlay.h:166
const uint32_t * argb
ARGB image data, 'h' lines, line stride 'stride' pixels.
Definition: overlay.h:182
uint16_t x
top-left x coordinate
Definition: overlay.h:176
void bd_refcnt_dec(const void *)
Release reference-counted object.
@ BD_OVERLAY_WIPE
Clear area.
Definition: overlay.h:62
uint16_t h
region height
Definition: overlay.h:105
@ BD_OVERLAY_INIT
Initialize overlay plane.
Definition: overlay.h:54
uint8_t palette_update_flag
Set if only overlay palette is changed.
Definition: overlay.h:100
int64_t pts
Timestamp, on video grid.
Definition: overlay.h:96
@ BD_ARGB_OVERLAY_INIT
Initialize overlay plane.
Definition: overlay.h:153
int width
overlay buffer width (pixels)
Definition: overlay.h:216
uint16_t y
top-left y coordinate
Definition: overlay.h:177
@ BD_OVERLAY_HIDE
Overlay is empty and can be hidden.
Definition: overlay.h:63
uint8_t cmd
Overlay event type (bd_argb_overlay_cmd_e)
Definition: overlay.h:169
@ BD_ARGB_OVERLAY_CLOSE
Close overlay plane.
Definition: overlay.h:154
uint16_t stride
ARGB buffer stride.
Definition: overlay.h:181
@ BD_OVERLAY_PG
Presentation Graphics plane.
Definition: overlay.h:41
@ BD_OVERLAY_CLOSE
Close overlay plane.
Definition: overlay.h:55
int height
overlay buffer height (pixels)
Definition: overlay.h:217
int64_t pts
Event timestamp, on video grid.
Definition: overlay.h:167
uint16_t x1
bottom-down x coordinate
Definition: overlay.h:226
uint16_t y
top-left y coordinate
Definition: overlay.h:103
uint16_t y0
top-left y coordinate
Definition: overlay.h:225
YUV overlay event.
Definition: overlay.h:95
RLE element.
Definition: overlay.h:87