From: Michael R. <mr...@us...> - 2002-11-18 15:50:49
|
taking this over to xine-devel, because this is clearly a bug in xine Hi, > >>Seems like it's still the same. I tested only xv and xshm with 16 > >> Bit as they both had the very same symptoms. I also retested the > >> Herbert Gr=F6nemeyer DVD and I aslo stumbled across two more DVD > >> which show the same behaviour: Sixth Sense RC2 german and The > >> Terminator Special Ediition RC2 UK. > > > >I have the Sixth Sense dvd here, maybe I can help: Could you explain > > the problem with this disc again? > > The problem with the discs is that the highlighting is wrong. i.e. if > I move the mouse to item 2 (top -> bottom) item 1 is highlighted. > Being over item 1 nothing is highlighted. This broke somewhere > between 0.9.12 and 0.9.13 Sorry that this took so long, but I finally found time to look into=20 this. The current alphablend routines seem to be wrong (have no idea=20 when this broke). Problem is the clipping coordinates in the overlay structure: The code=20 seems to be uncertain about the coordinate system these coordinates are=20 referring to. Example? Ok, here we go: This is blend_rgb24, line 547: /* avoid wraping overlay if drawing to small image */ if( (img_overl->x + img_overl->clip_right) < dst_width ) clip_right =3D img_overl->clip_right; else clip_right =3D dst_width - 1 - img_overl->x; This only makes sense, if the clipping coordinates are relative to the=20 left upper corner of the OVERLAY. But this is blend_rgb24, line 580: } else if( clip_right < x + rlelen ) { if( clip_right > x ) { This suggests that the clipping coordinates are relative to the left=20 upper corner of the FRAME (since x iterates over frame width). So I think we should decide now, which behaviour (frame vs. overlay=20 coordinates) we want. Are there any performance issues with one of=20 them? Libspudec currently assumes overlay coordinates. (This is why the=20 user sees the reported bug.) Michael --=20 printk("ufs_read_super: fucking Sun blows me\n"); 2.0.38 /usr/src/linux/fs/ufs/ufs_super.c |