DirectFB - Home of the pragmatist Roadmap


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

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

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



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:

   http://sault.org/~tack/mga/foobar_x11.png

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:

   http://sault.org/~tack/mga/foobar_mga.png

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:

   http://sault.org/~tack/mga/foobar_nv.png

You can see the white text is blurrier, but overall the quality of
progressive video from my nvidia is much better.

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
        no-vt
        no-vt-switch
        no-vt-switching
        no-graphics-vt
        no-deinit-check
        disable-module=keyboard
        disable-module=lirc

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)


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?

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.

Anyway, there it all is.  I hope there's something straightforward that
I've done wrong. :) 

Cheers,
Jason.

Attachment: signature.asc
Description: This is a digitally signed message part


Home | Main Index | Thread Index


directfb.org / Development / Old Archives