xine-lib: xine-lib-1.2.13/include/xine/alphablend.h File Reference

xine-lib 1.2.13-20230125hg15249

Data Structures | Macros | Typedefs | Functions
alphablend.h File Reference
`#include "video_out.h"`

Go to the source code of this file.

## Data Structures
struct | alphablend_t
struct | clut_s
struct | xx44_palette_t

## Macros
#define | XX44_PALETTE_SIZE 32

## Typedefs
typedef struct clut_s | clut_t

## Functions
void | _x_alphablend_init (alphablend_t *extra_data, xine_t *xine)
void | _x_alphablend_free (alphablend_t *extra_data)
void | _x_clut_yuv2rgb (uint32_t *clut, int num_items, int color_matrix)
void | _x_blend_rgb16 (uint8_t *img, vo_overlay_t *img_overl, int img_width, int img_height, int dst_width, int dst_height, alphablend_t *extra_data)
void | _x_blend_rgb24 (uint8_t *img, vo_overlay_t *img_overl, int img_width, int img_height, int dst_width, int dst_height, alphablend_t *extra_data)
void | _x_blend_rgb32 (uint8_t *img, vo_overlay_t *img_overl, int img_width, int img_height, int dst_width, int dst_height, alphablend_t *extra_data)
void | _x_blend_yuv (uint8_t *dst_base[3], vo_overlay_t *img_overl, int dst_width, int dst_height, int dst_pitches[3], alphablend_t *extra_data)
void | _x_blend_yuy2 (uint8_t *dst_img, vo_overlay_t *img_overl, int dst_width, int dst_height, int dst_pitch, alphablend_t *extra_data)
void | _x_blend_xx44 (uint8_t *dst_img, vo_overlay_t *img_overl, int dst_width, int dst_height, int dst_pitch, alphablend_t *extra_data, xx44_palette_t *palette, int ia44)
void | _x_clear_xx44_palette (xx44_palette_t *p)
void | _x_init_xx44_palette (xx44_palette_t *p, unsigned num_entries)
void | _x_dispose_xx44_palette (xx44_palette_t *p)
void | _x_xx44_to_xvmc_palette (const xx44_palette_t *p, unsigned char *xvmc_palette, unsigned first_xx44_entry, unsigned num_xx44_entries, unsigned num_xvmc_components, const char *xvmc_components)

## Macro Definition Documentation

## ◆ XX44_PALETTE_SIZE

#define XX44_PALETTE_SIZE 32

Referenced by _x_init_xx44_palette().

## Typedef Documentation

## ◆ clut_t

typedef struct clut_s clut_t

## Function Documentation

## ◆ _x_alphablend_free()

void _x_alphablend_free | ( | alphablend_t * | extra_data | ) |

References _x_freep(), alphablend_t::buffer, and alphablend_t::buffer_size.

Referenced by Destroy(), directfb_dispose(), dxr3_dispose(), fb_dispose(), macosx_dispose(), mmal_dispose(), opengl_dispose_internal(), pgx32_dispose(), pgx64_dispose(), sdl_dispose(), stk_dispose(), vidix_exit(), xshm_dispose(), xshm_dispose(), xv_dispose(), xv_dispose(), and xxmc_dispose().

## ◆ _x_alphablend_init()

void _x_alphablend_init | ( | alphablend_t * | extra_data,
|  | xine_t * | xine )

References _, alphablend_disable_exact_osd_alpha_blending_changed(), alphablend_t::buffer, alphablend_t::buffer_size, xine_s::config, alphablend_t::disable_exact_blending, NULL, alphablend_t::offset_x, alphablend_t::offset_y, and config_values_s::register_bool.

Referenced by dxr3_vo_open_plugin(), fb_open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin(), open_plugin_2(), open_plugin_fb(), opengl_open_plugin(), pgx32_init_driver(), pgx64_init_driver(), xshm_open_plugin(), and xshm_open_plugin_2().

## ◆ _x_blend_rgb16()

void _x_blend_rgb16 | ( | uint8_t * | img,
|  | vo_overlay_t * | img_overl,
|  | int | img_width,
|  | int | img_height,
|  | int | dst_width,
|  | int | dst_height,
|  | alphablend_t * | extra_data )

References rle_elem_s::color, vo_overlay_s::color, 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, INT_TO_SCALED, rle_elem_s::len, mem_blend16(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, vo_overlay_s::rle, rle_img_advance_line(), SCALED_TO_INT, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, and vo_overlay_s::y.

Referenced by fb_overlay_blend(), xshm_overlay_blend(), and xshm_overlay_blend().

## ◆ _x_blend_rgb24()

void _x_blend_rgb24 | ( | uint8_t * | img,
|  | vo_overlay_t * | img_overl,
|  | int | img_width,
|  | int | img_height,
|  | int | dst_width,
|  | int | dst_height,
|  | alphablend_t * | extra_data )

References rle_elem_s::color, vo_overlay_s::color, 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, INT_TO_SCALED, rle_elem_s::len, mem_blend24(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, vo_overlay_s::rle, rle_img_advance_line(), SCALED_TO_INT, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, and vo_overlay_s::y.

Referenced by fb_overlay_blend(), opengl_overlay_blend(), xshm_overlay_blend(), and xshm_overlay_blend().

## ◆ _x_blend_rgb32()

void _x_blend_rgb32 | ( | uint8_t * | img,
|  | vo_overlay_t * | img_overl,
|  | int | img_width,
|  | int | img_height,
|  | int | dst_width,
|  | int | dst_height,
|  | alphablend_t * | extra_data )

References rle_elem_s::color, vo_overlay_s::color, 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, INT_TO_SCALED, rle_elem_s::len, mem_blend32(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, vo_overlay_s::rle, rle_img_advance_line(), SCALED_TO_INT, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, and vo_overlay_s::y.

Referenced by fb_overlay_blend(), opengl_overlay_blend(), xshm_overlay_blend(), and xshm_overlay_blend().

## ◆ _x_blend_xx44()

void _x_blend_xx44 | ( | uint8_t * | dst_img,
|  | vo_overlay_t * | img_overl,
|  | int | dst_width,
|  | int | dst_height,
|  | int | dst_pitch,
|  | alphablend_t * | extra_data,
|  | xx44_palette_t * | palette,
|  | int | ia44 )

References rle_elem_s::color, vo_overlay_s::color, 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, rle_elem_s::len, memblend_xx44(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, OVL_PALETTE_SIZE, vo_overlay_s::rle, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, xx44_paletteIndex(), and vo_overlay_s::y.

Referenced by xxmc_overlay_blend().

## ◆ _x_blend_yuv()

void _x_blend_yuv | ( | uint8_t * | dst_base[3],
|  | vo_overlay_t * | img_overl,
|  | int | dst_width,
|  | int | dst_height,
|  | int | dst_pitches[3],
|  | alphablend_t * | extra_data )

References blend_yuv_exact(), blend_yuv_grow_extra_data(), rle_elem_s::color, vo_overlay_s::color, alphablend_t::disable_exact_blending, 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, rle_elem_s::len, mem_blend8(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, vo_overlay_s::rle, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, and vo_overlay_s::y.

Referenced by directfb_overlay_blend(), dxr3_overlay_blend(), macosx_overlay_blend(), mmal_overlay_blend(), opengl_overlay_blend(), pgx64_overlay_blend(), sdl_overlay_blend(), stk_overlay_blend(), vidix_overlay_blend(), win32_overlay_blend(), xv_overlay_blend(), xv_overlay_blend(), and xxmc_overlay_blend().

## ◆ _x_blend_yuy2()

void _x_blend_yuy2 | ( | uint8_t * | dst_img,
|  | vo_overlay_t * | img_overl,
|  | int | dst_width,
|  | int | dst_height,
|  | int | dst_pitch,
|  | alphablend_t * | extra_data )

References BLEND_BYTE, blend_yuy2_exact(), blend_yuy2_grow_extra_data(), rle_elem_s::color, vo_overlay_s::color, alphablend_t::disable_exact_blending, 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, rle_elem_s::len, mem_blend32(), vo_overlay_s::num_rle, alphablend_t::offset_x, alphablend_t::offset_y, vo_overlay_s::rle, vo_overlay_s::trans, vo_overlay_s::width, vo_overlay_s::x, clut_s::y, and vo_overlay_s::y.

Referenced by directfb_overlay_blend(), dxr3_overlay_blend(), macosx_overlay_blend(), mmal_overlay_blend(), opengl_overlay_blend(), pgx64_overlay_blend(), sdl_overlay_blend(), stk_overlay_blend(), vidix_overlay_blend(), win32_overlay_blend(), xv_overlay_blend(), xv_overlay_blend(), and xxmc_overlay_blend().

## ◆ _x_clear_xx44_palette()

void _x_clear_xx44_palette | ( | xx44_palette_t * | p | ) |

References xx44_palette_t::cluts, xx44_palette_t::lookup_cache, xx44_palette_t::max_used, OVL_PALETTE_SIZE, and xx44_palette_t::size.

Referenced by xxmc_overlay_begin().

## ◆ _x_clut_yuv2rgb()

void _x_clut_yuv2rgb | ( | uint32_t * | clut,
|  | int | num_items,
|  | int | color_matrix )

References saturate, v, and clut_s::y.

Referenced by _x_overlay_clut_yuv2rgb().

## ◆ _x_dispose_xx44_palette()

void _x_dispose_xx44_palette | ( | xx44_palette_t * | p | ) |

Referenced by xxmc_dispose_context().

## ◆ _x_init_xx44_palette()

void _x_init_xx44_palette | ( | xx44_palette_t * | p,
|  | unsigned | num_entries )

References xx44_palette_t::size, and XX44_PALETTE_SIZE.

Referenced by checkXvMCCap(), and xxmc_setup_subpictures().

## ◆ _x_xx44_to_xvmc_palette()

void _x_xx44_to_xvmc_palette | ( | const xx44_palette_t * | p,
|  | unsigned char * | xvmc_palette,
|  | unsigned | first_xx44_entry,
|  | unsigned | num_xx44_entries,
|  | unsigned | num_xvmc_components,
|  | const char * | xvmc_components )

References xx44_palette_t::cluts, colorToPalette(), and xx44_palette_t::size.

Referenced by xxmc_overlay_end().