Ville Syrjälä wrote:
On Wed, Oct 19, 2005 at 04:53:21PM +0200, Cagdas Ogut wrote:
With DirectFB controlling the TV-out the resolution is fixed 720x576
or 720x480 so if you want to maintain the correct aspect ratio you
need to downscale horixontally.
I noticed that this resolution is hardcoded. Is there any particular
reason? I wished this size could had been configurable.
Also with DirectFB it's not currently possible to have two layers use
the same surface. Which means you can't have both monitors display
the same chunk of memory.
Is this a design choice or hardware limitation?
Another way to display the same stuff on both heads would be to use
just one CRTC and send the data to both outputs. But that won't work
with DirectFB since we program CRTC2 to output BT.656 data that the
DAC doesn't understand. matroxfb doesn't use BT.656 mode so it might
actually work with matroxfb controlling the TV-out. I'm not sure if
matroxfb actually lets you do this on G450/G550 but on G400 it works.
On G450/G550 only CRTC2 can drive the TV-out whereas on G400 either
CRTC can drive the TV-output. Either CRTC can drive the primary DAC
on both chip types.
I tried to clone CRTC1 to secondary output but didn't work at G450.
Querying output was still showing PAL but it was outputing 'monitor'.
Later I tried attaching CRTC2 to both outputs but primary display had
very weird blue pattern only (TVout was ok with con2fb). It would be
a great solution to use CRTC2 for TVout and primary display at the same
time. Can I set the refresh rates of both outputs same at G450? or at G400?
By the way is BT.656 data RGB or YUV? My data is RGB and I need to avoid
all conversions (probably I will use scart RGB for that reason).
If you want to stick with DirectFB controlling the TV-out you could
convert the planar data to packed and write it to the CRTC1 layer's
surface. Then you could StretchBlit() it to the CRTC2 layer's
surface.
It would be opposite of stretching (compressing 768-704). Instead of
computational scalling TVout DAC can trace faster and all the pixels can
be used for maximum quality. That's why I want to change hardcoded 720
to 768 or better make it adjustable. 1023x576 would be very crisp on
widescreen TV.
AFAIK matroxfb does support changing the horizontal resolution on the
TV-out of G450/G550 since it's just a matter of changing the timing.
Vertical resolution can't be changed so freely.
I had the same impression from matroxset/fbset etc.
The TV-out component of G400 is more capable it's G450/G550
counterpart. The main difference is the hardware scaler which is
present on the G400 and missing from G450/G550. So you can display
arbitrary resolutions on the G400 TV-out.
This is important functionality but I already collect data in exact
resolution of PAL active lines. It is a pitty that CRTC1 cannot drive
TVout at G450/G550. Matroxfb driver writer known to mention a
possibility to duplicate a small (upto 1023x625) framebuffer from CRTC1
to CRTC2 requiring extra code in kernel. If I could had documentation I
would go for adding this. I guess wind0w$ driver does this somehow.
There is a comment about planar textures in the G400 specs but I
don't really know what it means since I don't see any way to actually
tell the hardware that a texture is planar.
How can I reach those specs? as well reverse engineered specs of
G450/G550 ? It can well be that planar textures are blended on the fly
as A8's that you don't even need to tell hardware about it.
Thank you very much for your answer. you saved my time trying with G450.
I already bought a G400 on ebay and waiting for it.
I still insist to use DirectFB ;-)))
Cagdas
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users