On 22-04-10 10:04, Michel Dänzer wrote:
Well, Xv to pixmaps is working and I have non-flickering, double-buffered, scaled video with nice overlays. Thank you so much for your help.On Mit, 2010-04-21 at 13:28 +0200, Matthew Fincham wrote:On 20-04-10 11:15, Michel Dänzer wrote:One unexpected thing I found was that the (x,y) of the drawable, when it was a pixmap, was not (0,0) but an apparently random number. This may point to a problem with what I have done, but it is worked around (see xf86xv.c:1819).Are you using XAA? Textured video to pixmaps can't work reliably with that. Use EXA (or UXA with newer versions of the intel driver).I have been using XAA, but it doesn't work when using EXA eitherThe difference is with the latter you have a chance to make it work. :)1. Does REGION_INIT/REGION_UNINIT need to be called when using a pixmap?I assume you're referring to ClipRegion. It certainly looks like that may not be initialized properly. Probably best to use REGION_INIT() as is done for WinRegion in the window path. Then you can trace in the driver if it's processing a single cliprect as expected.2. Any reason why the drawable (x,y) is not (0,0) when it is a pixmap - should it be? The position seems to vary quite a bit, and the numbers seem quite large (>2000).It's an artifact of how XAA handles pixmaps.3. Pixmap memory - is it card or system memory?With EXA, the driver can ensure that the pixmap is GPU accessible. The code for that should already be there, at the driver level there should be no difference whether the pixmap is retrieved with pScreen->GetWindowPixmap or passed in directly.
Attached is a patch to support Xv to pixmaps for Xorg 1.3.0. I am not sure how it will apply to later versions, so I have included the entire xf86xv.c for easy reading so that it can be ported (if necessary).
This has raised a subsequent issue however. Previously the system I am working on was using XSHM_PIXMAPs for fast display. I understand with the EXA architecture this is no longer supported. Is this correct? What can be used in its place with equivalent performance?
Thanks again Matthew
xv.tgz
Description: application/compressed
_______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
