On Sat, Oct 08, 2005 at 09:02:36AM +0200, Stefan Lucke wrote:
> On Freitag, 7. Oktober 2005 21:45, Ville Syrjälä wrote:
> > On Fri, Oct 07, 2005 at 09:32:59PM +0200, Stefan Lucke wrote:
> > > Hi,
> > > 
> > > when using stretchblit for downscaling 16:9 to 4:3 interlaced TV, I 
> > > noticed some bad filtering effects. 
> > > 
> > > When I understood that right, downscale filters are described in 
> > > G440 external june15 page 3-217. Directfb's matrox gfx driver sets 
> > > this in matrox3d.c matroxTextureTriangles(), to MIN_ANISO.
> > 
> > Actually I don't think ANISO does anything beyond BILIN without 
> > mipmapping. Also on G400/G450 aniso requires multitexturing to be enabled 
> > and is still prone to lockups. At least that was my experience when 
> > playing around with the Mesa mga driver. G200 doesn't support aniso at 
> > all. G550 seems to be the only one to support it properly.
> > 
> > > Are other 
> > > values more suitable for doing that kind of filtering ? Or should 
> > > displaying downscaled interlaced video be done in another way ?
> > > 
> > > Separte fields of a frame, 
> > > - downscale field 1, show field 1, 
> > > - downscale field 2, show field 2,
> > 
> > Yes, fields should be scaled independently. I've though about doing that 
> > but never needed it enough :)
> 
> Thanks for your reply but that's not the answer I wished to get. A easy
> workaround for resolving that is getting a 16:9 TV ;-) , so no need to 
> downscale.
> 
> So I think I know how to separate a frame into separate field buffers.
> If a given frame has 576 lines I need 2 surfaces of 288 lines. Drawing
> has to be done with stretchblit from YUV2 (field1) surface to an RGBA
> surface, which has been allocated with DSCAPS_SEPARATED, upper half. 
> Same has to be done for field2 (RGBA lower half). 

That should work. But it would be better to add proper support for 
independent field blitting to DirectFB.

> Or is this possible with one stretchblit from YUY2 DSCAPS_SEPARATED
> allocated surface to one RGBA suface with the same capability ?

That should work too.

> At least a simple test for setting the CRTC2 layer configuration with
> DSCAPS_SEPARATED set, failed.

That's because I didn't add support for it in the driver. The hardware 
does support it though.

> Setting that flag to the source YUV2
> surface had no visible effect on the stretchblit operation.

Currently DSCAPS_SEPARATED only affects DSBLIT_DEINTERLACE behaviour.

-- 
Ville Syrjälä
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/

_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to