I am using XvShmPutImage to draw video via a YUV overlay into a window.  Then I am using XDraw commands to draw "overlays" directly to the window (lines, arcs, text, etc.). 
 
When I do this the video image appears correctly, but the overlays do not update properly.  Each time the overlays move, the old XDraw data remains along with the new, until I do something to force an exposure on the drawable - such as drag a window over it.  Then the window is redrawn with only the new XDraw data drawn over the video image ("new" meaning from XDraw calls made since the last XvShmPutImage call) which is what I wanted.  I don't seem to be able to force the XServer to re-expose the window via software, or I would find that an acceptable workaround.  Is there something I am not understanding?
 
I have seen this same behavior both on a Matrox G550 and an nVidia Quadro 4 card, so I don't believe it has anything to do with the particular graphics card drivers.
 
Thanks in advance,
   Steve Thrash

Reply via email to