On Sat, Oct 29, 2005 at 12:34:09PM +0200, Stefan Lucke wrote:
> Hi,
>
> I get a visible disortion when decoding/displaying large videos.
> This happens _only_ when display is done via BES. Picture is ok
> when I use stretchblit instead of BES. With BES scaling, there is
> no difference if surface is YV12 or YUV2 .
>
> Screen shots are:
> http://www.lucke.in-berlin.de/divx-avi-1280x720p-ok.jpg
> http://www.lucke.in-berlin.de/divx-avi-1280x720p-bad.jpg
I can confirm this on my G450. I must have only tested it with RGB formats
originally since it works with those. After realizing that, I disabled
filtering with YUV modes and the problem disappeared. After some further
testing it seems that only vertical filtering needs to be disabled.
I can go up to 2000x1024 now. If I increase width above 2000 mplayer tends
to crash. I think it's a bug in mplayer...
Did you have a G450 too? If so I'll have to swap in the G550 and try if
the same thing is needed there. Or maybe it works on a G550 even with
filtering which might also explain why I didn't notice the problem before.
Index: matrox_bes.c
===================================================================
RCS file: /cvs/directfb/DirectFB/gfxdrivers/matrox/matrox_bes.c,v
retrieving revision 1.58
diff -u -r1.58 matrox_bes.c
--- matrox_bes.c 26 Oct 2005 07:23:16 -0000 1.58
+++ matrox_bes.c 29 Oct 2005 12:45:55 -0000
@@ -560,6 +587,9 @@
return;
}
+ if (surface->width > 1024)
+ mbes->regs.besCTL &= ~BESVFEN;
+
mbes->regs.besGLOBCTL |= 3*hzoom | (current_mode->yres & 0xFFF) << 16;
mbes->regs.besPITCH = pitch / DFB_BYTES_PER_PIXEL(surface->format);
--
Ville Syrjälä
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev