xine-lib: xine-lib-1.2.12/include/xine/video_overlay.h File Reference

xine-lib 1.2.12

Data Structures | Macros | Typedefs | Functions
video_overlay.h File Reference
`#include <xine/xine_internal.h>`

Go to the source code of this file.

## Data Structures
struct | video_overlay_object_s
struct | video_overlay_event_s

## Macros
#define | CLUT_Y_CR_CB_INIT(_y, _cr, _cb) { (_cb), (_cr), (_y) }
#define | MAX_OBJECTS 50
#define | MAX_EVENTS 50
#define | MAX_SHOWING (5 + 16)
#define | OVERLAY_EVENT_NULL 0
#define | OVERLAY_EVENT_SHOW 1
#define | OVERLAY_EVENT_HIDE 2
#define | OVERLAY_EVENT_MENU_BUTTON 3
#define | OVERLAY_EVENT_FREE_HANDLE 8 /* Frees a handle, previous allocated via get_handle */
#define | _X_SET_CLUT_CM(clut, color_matrix)

## Typedefs
typedef struct video_overlay_object_s | video_overlay_object_t
typedef struct video_overlay_event_s | video_overlay_event_t

## Functions
video_overlay_manager_t * | _x_video_overlay_new_manager (xine_t *)
void | _x_overlay_clut_yuv2rgb (vo_overlay_t *overlay, int video_color_matrix)
void | _x_overlay_to_argb32 (const vo_overlay_t *overlay, uint32_t *rgba, int stride, const char *format)

## Macro Definition Documentation

## ◆ _X_SET_CLUT_CM

#define _X_SET_CLUT_CM | ( |  | clut,
|  |  | color_matrix
| ) |  |

Value:
{ \
uint8_t *q = (uint8_t *)clut; \
q[3] = 'X'; \
q[7] = 'C'; \
q[11] = 'M'; \
q[15] = color_matrix; \
}

## ◆ CLUT_Y_CR_CB_INIT

#define CLUT_Y_CR_CB_INIT | ( |  | _y,
|  |  | _cr,
|  |  | _cb
| ) |  | { (_cb), (_cr), (_y) }

## ◆ MAX_EVENTS

#define MAX_EVENTS 50

## ◆ MAX_OBJECTS

#define MAX_OBJECTS 50

## ◆ MAX_SHOWING

#define MAX_SHOWING (5 + 16)

## ◆ OVERLAY_EVENT_FREE_HANDLE

#define OVERLAY_EVENT_FREE_HANDLE 8 /* Frees a handle, previous allocated via get_handle */

## ◆ OVERLAY_EVENT_HIDE

#define OVERLAY_EVENT_HIDE 2

## ◆ OVERLAY_EVENT_MENU_BUTTON

#define OVERLAY_EVENT_MENU_BUTTON 3

## ◆ OVERLAY_EVENT_NULL

#define OVERLAY_EVENT_NULL 0

## ◆ OVERLAY_EVENT_SHOW

#define OVERLAY_EVENT_SHOW 1

## Typedef Documentation

## ◆ video_overlay_event_t

typedef struct video_overlay_event_s video_overlay_event_t

## ◆ video_overlay_object_t

typedef struct video_overlay_object_s video_overlay_object_t

## Function Documentation

## ◆ _x_overlay_clut_yuv2rgb()

void _x_overlay_clut_yuv2rgb | ( | vo_overlay_t * | overlay,
|  | int | video_color_matrix
| ) |  |

References _x_clut_yuv2rgb(), vo_overlay_s::color, vo_overlay_s::hili_color, vo_overlay_s::hili_rgb_clut, and vo_overlay_s::rgb_clut.

Referenced by mmal_overlay_blend(), opengl2_overlay_blend(), raw_overlay_blend(), vaapi_overlay_end(), and vdpau_overlay_end().

## ◆ _x_overlay_to_argb32()

void _x_overlay_to_argb32 | ( | const vo_overlay_t * | overlay,
|  | uint32_t * | rgba,
|  | int | stride,
|  | const char * | format
| ) |  |

References _fill(), clut_to_argb(), rle_elem_s::color, vo_overlay_s::color, GET_DIM, vo_overlay_s::height, vo_overlay_s::hili_bottom, vo_overlay_s::hili_color, vo_overlay_s::hili_left, vo_overlay_s::hili_right, vo_overlay_s::hili_top, vo_overlay_s::hili_trans, LUT_SIZE, MAKE_LINE, vo_overlay_s::num_rle, vo_overlay_s::rle, vo_overlay_s::trans, and vo_overlay_s::width.

Referenced by mmal_overlay_blend(), opengl2_upload_overlay(), raw_process_ovl(), vaapi_overlay_end(), and vdpau_overlay_end().

## ◆ _x_video_overlay_new_manager()

video_overlay_manager_t * _x_video_overlay_new_manager | ( | xine_t * | xine | ) |

References MAX_EVENTS, MAX_OBJECTS, MAX_SHOWING, NULL, video_overlay_add_event(), video_overlay_dispose(), video_overlay_flush_events(), video_overlay_free_handle(), video_overlay_get_handle(), video_overlay_init(), video_overlay_multiple_overlay_blend(), and video_overlay_redraw_needed().

Referenced by _x_vo_new_port().