From 406a025a2e1b12eab3ae9aa0124f8707bd8112bc Mon Sep 17 00:00:00 2001 From: Eduard Hasenleithner Date: Tue, 14 Aug 2001 17:13:33 +0000 Subject: Fixed a bug resulting from the misassumption that the pixels are counted without the right and bottom border. CVS patchset: 429 CVS date: 2001/08/14 17:13:33 --- src/video_out/alphablend.c | 36 ++++-------------------------------- 1 file changed, 4 insertions(+), 32 deletions(-) (limited to 'src/video_out/alphablend.c') diff --git a/src/video_out/alphablend.c b/src/video_out/alphablend.c index b8a540b2a..b86968c43 100644 --- a/src/video_out/alphablend.c +++ b/src/video_out/alphablend.c @@ -227,34 +227,6 @@ void blend_rgb32 (uint8_t * img, vo_overlay_t * img_overl, int dst_width, #define BLEND_YUV(dst, src, o) (((src)*o + ((dst)*(0xf-o)))/0xf) -/* FIXME: my_clut should disappear once I find out how to get the clut from the MPEG2 stream. */ -/* It looks like it comes from the ,IFO file, so will have to wait for IFO parser in xine. - * Here is an extract of another DVD player (oms) - * clut = ifoGetCLUT (priv->pgci); - * codec->ctrl (codec, CTRL_SPU_SET_CLUT, clut); - */ -/* This happens to work with "The Matrix" using 0(edges), 8(white) */ - -static clut_t __default_clut[] = { - {y: 0x00, cr: 0x80, cb:0x80}, - {y: 0xbf, cr: 0x80, cb:0x80}, - {y: 0x10, cr: 0x80, cb:0x80}, - {y: 0x28, cr: 0x6d, cb:0xef}, - {y: 0x51, cr: 0xef, cb:0x5a}, - {y: 0xbf, cr: 0x80, cb:0x80}, - {y: 0x36, cr: 0x80, cb:0x80}, - {y: 0x28, cr: 0x6d, cb:0xef}, - {y: 0xbf, cr: 0x80, cb:0x80}, - {y: 0x51, cr: 0x80, cb:0x80}, - {y: 0xbf, cr: 0x80, cb:0x80}, - {y: 0x10, cr: 0x80, cb:0x80}, - {y: 0x28, cr: 0x6d, cb:0xef}, - {y: 0x5c, cr: 0x80, cb:0x80}, - {y: 0xbf, cr: 0x80, cb:0x80}, - {y: 0x1c, cr: 0x80, cb:0x80}, - {y: 0x28, cr: 0x6d, cb:0xef} -}; - void blend_yuv (uint8_t * dst_img, vo_overlay_t * img_overl, int dst_width, int dst_height) { @@ -289,10 +261,10 @@ void blend_yuv (uint8_t * dst_img, vo_overlay_t * img_overl, /* OK, this looks time consuming. * But it gets only evaluated if (o != 0) */ - if (o) if (img_overl->clip_left > x || - img_overl->clip_right <= x || - img_overl->clip_top > y || - img_overl->clip_bottom <= y) + if (o) if (img_overl->clip_left > x || + img_overl->clip_right < x || + img_overl->clip_top > y || + img_overl->clip_bottom < y) o = 0; if (o) -- cgit v1.2.3