View Single Post
Old 07-15-10, 09:27 AM   #4
Stephen Warren
Moderator
 
Stephen Warren's Avatar
 
Join Date: Aug 2005
Posts: 1,327
Default Re: Tearing with 8600GTS, 256.35, xine-lib-1.2 when avoiding XLockDisplay()

One thought on this: Decode->display interlock is performed within the VDPAU driver. That is, if you decode to a given surface and then display it, VDPAU internally guarantees that display of that surface won't start until the decode has completed. However, the driver performs no display->decode interlock; the application must wait until the presentation queue has completed displaying the image (i.e. its status is IDLE) before requesting that a new decode operation begin on that surface. If the application doesn't do this, the decoder might write to a surface while it's still being displayed, which could look like tearing. Given the presentation queue errors mentioned in the other thread, this could well be the cause of the problems.
Stephen Warren is offline   Reply With Quote