I recently purchased a Matrox G400 (to play with TV-out).

  I noticed nasty tearing when using my DVD player + XVideo.  This is in
contrast to the i810 driver which will wait to blit if called during the
retrace.  My code now spins on the VGA port, which fixed the tearing.

  Since I really badly want to see a well-supported API to query the
vertical refresh, I'd hope that maybe this is a good chance to again
request help and support.  (please!)

  That said, since I'm sure most simple video apps don't care about
amortizing frame display time over refreshes and just want to avoid
tearing, maybe doing the i810 trick in the mga driver would be useful.

  Do other drivers spin on a call to XvPut if the refresh is occuring?


  Also, I wait for the refresh using something like this code:

  void spin_until_refresh_complete( void ) {
    for(;;) if( inb( 0x3da ) & 8 ) break;
  }

  Does anyone know what VGA cards this could fail on?  So far it's
worked great for my i815, G400, and TNT2.

-- 
Billy Biggs                     [EMAIL PROTECTED]
http://www.billybiggs.com/      [EMAIL PROTECTED]

Attachment: msg01966/pgp00000.pgp
Description: PGP signature

Reply via email to