Hello Billy,
On 29.12.2003 17:45, Billy Biggs schrieb:
Michael Hunold (hunold@xxxxxxxxxxxxxx):
I don't know if X finally has something (ie. a "X vsync extension")
like this, otherwise you need to use some other toolkit like DirectFB
(http:/www.directfb.org) that lets you sync your output to the vsync.
Modern video cards have hardware video overlay engines which scale
video and convert from Y'CbCr to RGB. All video cards provide double
buffering for overlay surfaces. When a client provides the next video
frame, it will page flip to that on the next vertical sync, so you will
not get tearing. The X extension to use an overlay surface is called
XVIDEO.
In tvtime we capture a frame (grabbing) to system RAM. We then
process it. We then provide this frame to XVIDEO, which writes it to
offscreen video memory. That frame is then shown on the next retrace
without tearing.
Thanks from keeping me spreading FUD. 8-) Of course you're right.
I was distracted by my problems when I once tried to get a decent *tv-out*.
I tried a fairly old Diamond Viper with Nvidia TNT2 and used "nvtv", but
I got tearing problems. My Matrox G450 was unsupported by the Matrox
binary driver and tv-out on another G400 was very poor (overscan, I did
not check for tearing)
So I finally ended up using DirectFB and mplayer's "dfbmga" plugin.
-Billy
CU
Michael.