diff options
Diffstat (limited to 'src/video_out/alphablend.h')
-rw-r--r-- | src/video_out/alphablend.h | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/src/video_out/alphablend.h b/src/video_out/alphablend.h index dd7f799ea..b49a902c3 100644 --- a/src/video_out/alphablend.h +++ b/src/video_out/alphablend.h @@ -27,6 +27,16 @@ #include "video_out.h" +typedef struct { + void *buffer; + int buffer_size; + + int disable_exact_blending; +} alphablend_t; + +void _x_alphablend_init(alphablend_t *extra_data, xine_t *xine); +void _x_alphablend_free(alphablend_t *extra_data); + /* _MSC_VER port changes */ #undef ATTRIBUTE_PACKED #undef PRAGMA_PACK_BEGIN @@ -71,21 +81,26 @@ typedef struct { void blend_rgb16 (uint8_t * img, vo_overlay_t * img_overl, int img_width, int img_height, - int dst_width, int dst_height); + int dst_width, int dst_height, + alphablend_t *extra_data); void blend_rgb24 (uint8_t * img, vo_overlay_t * img_overl, int img_width, int img_height, - int dst_width, int dst_height); + int dst_width, int dst_height, + alphablend_t *extra_data); void blend_rgb32 (uint8_t * img, vo_overlay_t * img_overl, int img_width, int img_height, - int dst_width, int dst_height); + int dst_width, int dst_height, + alphablend_t *extra_data); void blend_yuv (uint8_t *dst_base[3], vo_overlay_t * img_overl, - int dst_width, int dst_height, int dst_pitches[3]); + int dst_width, int dst_height, int dst_pitches[3], + alphablend_t *extra_data); void blend_yuy2 (uint8_t * dst_img, vo_overlay_t * img_overl, - int dst_width, int dst_height, int dst_pitch); + int dst_width, int dst_height, int dst_pitch, + alphablend_t *extra_data); /* * This function isn't too smart about blending. We want to avoid creating new @@ -96,6 +111,7 @@ void blend_yuy2 (uint8_t * dst_img, vo_overlay_t * img_overl, void 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); /* |