On Wed, 2009-01-14 at 19:35 +0000, Daniel Gultsch wrote: > Hi Guys, > > My major problem is that i dont have the "Intel(R) Video Overlay" but > only the "Intel(R) Textured Video" - as reported by xvinfo | grep -i > adaptor. This causes tearing and i really need to watch movies :-)
The textured adapter causes tearing because it doesn't synchronize the screen update to the vblank. Synchronizing this operation involves either: A. queuing a command to stop the graphics engine until the vblank interval and then queuing the rendering commands right after that. B. waiting for the vblank interval to occur and then quickly queueing suitable rendering commands to the graphics engine Of the two, A. is trivial where it works (it does work on the X4500), but it means that all rendering on the screen stops once the command to display the video is queued to the card. That seems fairly harsh. I believe there is a patch around that will do this though; it might be reasonable if the video was filling the screen. So, we'd like to do B., but that requires the ability to stop the graphics engine in the middle of some drawing operation and switch it over to the 'update the video' command sequence at vblank time. We've explored several options here, but haven't gotten anything working. This is also tied in with the DRI2 work, which needs exactly the same operation. And that doesn't consider multi-head environments where you have to know which monitor you want to sync with so that you can wait for the right time. The overlay can easily synchronize because the overlay isn't connected to the graphics pipeline, and the overlay registers are all nicely double-buffered. So, you just poke a pointer to the new image into the overlay registers and they get swapped automatically at vblank time, making the transition entirely tearless. We're about to go try to make this work for DRI2, and so Xv should come along more-or-less for free. We sketched out some ideas on how this might work at XDS last fall, but then got distracted getting DRI2 support into the kernel in time for 2.6.28 -- we dropped the vblank stuff as that doesn't have a huge impact on the kernel, or application interfaces. -- keith.pack...@intel.com
signature.asc
Description: This is a digitally signed message part
_______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg