34#ifdef BLURAY_API_EXPORT
35#include "util/attributes.h"
36#elif !defined(BD_PUBLIC)
41#define BD_OVERLAY_INTERFACE_VERSION 2
83typedef struct bd_pg_palette_entry_s {
93typedef struct bd_pg_rle_elem_s {
101typedef struct bd_overlay_s {
130 memcpy(ov, src,
sizeof(*ov));
172typedef struct bd_argb_overlay_s {
201typedef struct bd_argb_buffer_s {
206 void (*
lock) (
struct bd_argb_buffer_s *);
207 void (*
unlock)(
struct bd_argb_buffer_s *);
BD_PUBLIC void bd_refcnt_dec(const void *)
Release reference-counted object.
bd_argb_overlay_cmd_e
ARGB overlay event type.
Definition overlay.h:157
@ BD_ARGB_OVERLAY_INIT
Initialize overlay plane.
Definition overlay.h:159
@ BD_ARGB_OVERLAY_CLOSE
Close overlay plane.
Definition overlay.h:160
@ BD_ARGB_OVERLAY_DRAW
Draw ARGB image on plane.
Definition overlay.h:165
@ BD_ARGB_OVERLAY_FLUSH
All changes have been done, flush overlay to display at given pts.
Definition overlay.h:166
bd_overlay_cmd_e
YUV overlay event type.
Definition overlay.h:58
@ BD_OVERLAY_INIT
Initialize overlay plane.
Definition overlay.h:60
@ BD_OVERLAY_WIPE
Clear area.
Definition overlay.h:68
@ BD_OVERLAY_HIDE
Overlay is empty and can be hidden.
Definition overlay.h:69
@ BD_OVERLAY_DRAW
Draw bitmap.
Definition overlay.h:67
@ BD_OVERLAY_CLEAR
Clear overlay plane.
Definition overlay.h:66
@ BD_OVERLAY_CLOSE
Close overlay plane.
Definition overlay.h:61
@ BD_OVERLAY_FLUSH
All changes have been done, flush overlay to display at given pts.
Definition overlay.h:71
bd_overlay_plane_e
Overlay plane.
Definition overlay.h:46
@ BD_OVERLAY_IG
Interactive Graphics plane (on top of PG plane).
Definition overlay.h:48
@ BD_OVERLAY_PG
Presentation Graphics plane.
Definition overlay.h:47
BD_PUBLIC const void * bd_refcnt_inc(const void *)
Hold reference-counted object.
Application-allocated frame buffer for ARGB overlays.
Definition overlay.h:201
void(* unlock)(struct bd_argb_buffer_s *)
Unlock buffer (write complete).
Definition overlay.h:207
int height
overlay buffer height (pixels)
Definition overlay.h:223
uint32_t * buf[4]
[0] - PG plane, [1] - IG plane.
Definition overlay.h:215
int width
overlay buffer width (pixels)
Definition overlay.h:222
void(* lock)(struct bd_argb_buffer_s *)
Lock (or prepare) buffer for writing.
Definition overlay.h:206
uint16_t x0
top-left x coordinate
Definition overlay.h:230
uint16_t y0
top-left y coordinate
Definition overlay.h:231
uint16_t x1
bottom-down x coordinate
Definition overlay.h:232
uint16_t y1
bottom-down y coordinate
Definition overlay.h:233
ARGB overlay event.
Definition overlay.h:172
uint16_t y
top-left y coordinate
Definition overlay.h:183
int64_t pts
Event timestamp, on video grid.
Definition overlay.h:173
uint16_t h
region height
Definition overlay.h:185
const uint32_t * argb
ARGB image data, 'h' lines, line stride 'stride' pixels.
Definition overlay.h:188
uint8_t cmd
Overlay event type (bd_argb_overlay_cmd_e).
Definition overlay.h:175
uint8_t plane
Overlay plane (bd_overlay_plane_e).
Definition overlay.h:174
uint16_t x
top-left x coordinate
Definition overlay.h:182
uint16_t stride
ARGB buffer stride.
Definition overlay.h:187
uint16_t w
region width
Definition overlay.h:184
YUV overlay event.
Definition overlay.h:101
uint8_t cmd
Overlay event type (bd_overlay_cmd_e).
Definition overlay.h:104
const BD_PG_PALETTE_ENTRY * palette
overlay palette (256 entries)
Definition overlay.h:113
uint16_t x
top-left x coordinate
Definition overlay.h:108
uint8_t palette_update_flag
Set if only overlay palette is changed.
Definition overlay.h:106
int64_t pts
Timestamp, on video grid.
Definition overlay.h:102
uint16_t y
top-left y coordinate
Definition overlay.h:109
uint16_t w
region width
Definition overlay.h:110
uint8_t plane
Overlay plane (bd_overlay_plane_e).
Definition overlay.h:103
uint16_t h
region height
Definition overlay.h:111
const BD_PG_RLE_ELEM * img
RLE-compressed overlay image.
Definition overlay.h:114
Overlay palette entry.
Definition overlay.h:83
uint8_t T
Transparency ( 0...255).
Definition overlay.h:87
uint8_t Cb
Cb component (16...240).
Definition overlay.h:86
uint8_t Y
Y component (16...235).
Definition overlay.h:84
uint8_t Cr
Cr component (16...240).
Definition overlay.h:85
RLE element.
Definition overlay.h:93
uint16_t len
RLE run length.
Definition overlay.h:94
uint16_t color
palette index
Definition overlay.h:95