DirectFB - Home of the pragmatist Roadmap

[directfb-users] Re: Sub-par quality with Matrox G450 and misc dfb probl
Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[directfb-users] Re: Sub-par quality with Matrox G450 and misc dfb problems

On Sat, Jul 31, 2004 at 12:45:34PM -0400, Jason Tackaberry wrote:
> Hi all,
> I have been growing increasingly dissatisfied with the lack of support
> of interlaced video from my nvidia card, so I decided to pick up a
> Matrox G450, which I had read has extremely high quality tv-out.
> I'm experiencing a number of problems with quality and stability.  I
> hope someone has some ideas, because I'd hate to think I wasted my money
> on this card.
> The main problem I am having is with quality.  I am seeing some
> artifacting that can best be described as a really bad deinterlacing
> filter on progressive video. There are these visible horizontal lines in
> areas of high contrast or high motion that make the video look like it
> was badly compressed.
> I have prepared some screenshots of this effect.  I created a filled red
> box with some white text on a blue background, and displayed that using
> mplayer -vo dfbmga.  First, for reference, here is a screenshot taken of
> the image when using -vo x11:
> I connected the s-video out of my G450 to the s-video in on my PVR-350
> and captured the output when displaying using dfbmga.  (Same phenomenon
> when using composite out.)  Here is what got captured:
> Notice the thin lines at the top and bottom of the red box?  This is the
> artifact I'm seeing.  It's quite visible on regular video.  Compared to
> my nvidia card, the quality is appreciably worse.  Here's what my nvidia
> outputs:
> You can see the white text is blurrier, but overall the quality of
> progressive video from my nvidia is much better.

Was the image scaled by dfbmga?

If so can you try without scaling ie. use 720x480 source image and 
specifty -monitoraspect 1.5 option for mplayer.

> I would like to use my matrox because I view a lot of interlaced video.
> Am I missing some options?  Could it be defective hardware?
> I'm using Linux 2.6.8-rc2 with DirectFB cvs from yesterday, build with
> --with-gfxdrivers=matrox.  Here's what lspci says about my card:
> 01:05.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev 82) (prog-if 00 [VGA])
>         Subsystem: Matrox Graphics, Inc. Millennium G450 Dual Head
>         Flags: bus master, medium devsel, latency 32, IRQ 10
>         Memory at d8000000 (32-bit, prefetchable)
>         Memory at da000000 (32-bit, non-prefetchable) [size=16K]
>         Memory at db000000 (32-bit, non-prefetchable) [size=8M]
>         Capabilities: [dc] Power Management version 2
>         Capabilities: [f0] AGP version 2.0
> I am also having problems with the dfb tools, like dfbinfo.  mplayer -vo
> directfb also fails, whereas -vo dfbmga works fine.  When I run dfbinfo,
> this is what it says:
>    (!) DirectFB/Matrox: Can't find device in `/proc/bus/pci'!
>    (!) DirectFB/Core: Could not initialize 'gfxcard' core!
>        --> Initialization error!
>    (#) DirectFBError [DirectFBCreate() failed]: Initialization error!
> /proc/bus/pci/devices does list matroxfb.  My /etc/directfbrc looks like
> this:
>         matrox-crtc2
>         matrox-tv-standard=ntsc
>         primary-layer=2
>         #mode=640x480
>         #depth=16
>         fbdev=/dev/fb1
Remove this and the error should go away.

> Although mplayer -vo dfbmga works, I get these warnings:
> (*) DirectFB/Graphics: Matrox G450 0.7 (convergence integrated media GmbH)
> (*) DirectFB/WM: Default 0.1 (Convergence GmbH)
>  (!!!)  *** WARNING [no video mode set yet] *** [layers.c:536 in dfb_screen_rectangle()]
>  (!!!)  *** WARNING [no video mode set yet] *** [layers.c:536 in dfb_screen_rectangle()]
> VO: [dfbmga] 640x480 => 640x480 Planar YV12
> vo_dfbmga: Video surface 640x480 YV12
> vo_dfbmga: Field parity set to: Top field first
> vo_dfbmga: CRTC2 using triple buffering
> vo_dfbmga: CRTC2 surface 720x480 YV12
>  (!!!)  *** WARNING [no video mode set yet] *** [layers.c:536 in dfb_screen_rectangle()]
>  (!!!)  *** WARNING [no video mode set yet] *** [layers.c:536 in dfb_screen_rectangle()]
> vo_dfbmga: Sub-picture layer using triple buffering
> vo_dfbmga: Sub-picture surface 720x480 ALUT44 (Sub-picture layer)

You can ignore those warnings. They should be going away before 0.9.21 is 

> Also, I'm a little confused about fieldparity with progressive video.  I
> need to specify fieldparity=top to get proper output from video produced
> by my PVR-350, but if I specify fieldparity=top for progressive video (a
> DVD rip for example), horizontal panning becomes jerky.  Without
> fieldparity specified, it's smooth.  I thought fieldparity shouldn't
> affect progressive video, but it seems to.  Any ideas?

It does. vo_dfbmga doesn't know if the video is progressive or interlaced. 
Fieldparity makes the process sleep quite a lot and because mplayer is 
single threaded it won't make any progress decoding. That may be the cause 
of the jerkiness. I'd like to fix this properly (along with making triple 
buffering robust) but that would require some custom kernel hacks.

> And lastly, there seems to be some stability issues.  When letting
> mplayer run for several minutes, it'll invariably crash, for example:
> (!) [ 3253:    0.000] --> Caught signal 11 (at (nil), invalid address) <--
> Of course, I am using cvs.  (I tried also the snapshot from 2004-07-13.)
> Perhaps there's a more stable version I should use, but the last stable
> release was from last year.

Cvs has been stable for me for a long time. I use DirectFB/XDirectFB 
exclusively on all of my system (one desktop and multiple laptops). There 
were some bugs last spring due to big changes but those got fixed 
quickly and it's been smooth sailing ever since :)

Make sure you have everything up-to-date (linux-fusion, DirectFB, 

Ville Syrjälä

Home | Main Index | Thread Index / Development / Old Archives