Bilal Khan (grouptheory@xxxxxxxxxxx): > If the capture size is small, say 320x240 and one wants to do full > screen playback, is it typically the case that one has to do the > pixel-doubling/rescaling in software using CPU, or is this type of > operation supported by video cards like Matrox G400 and nVidia. If > so, can someone give me some pointers as to how this is done. Just > seems like this is something that ought to be supported in hardware by > now... Hardware scaling has been around for quite some time. The StretchBlt call in the Microsoft world is commonly hardware accellerated. Unfortunately, there was no native X protocol way of asking the server to do hardware-accellerated stretched blits, but the functionality is now exported using two APIs: 1. OpenGL. All cards with opengl accelleration under linux can be used for 2D scaling of video and graphics. 2. XVideo. Probably just what you're looking for. It's an API to hardware overlay surfaces. Video cards these days usually have one overlay engine for video and then the texture engine for general scaling. Most XVideo drivers only export Y'CbCr surfaces though. The general consensus seems to be that XVideo should be for video scaling using the overlay, and OpenGL for everything else (stretchblt-like stuff). If you just want to blow up an image and have it sit there, or a 2D game from RGB pixel data, use OpenGL. If you want to watch live video, use XVideo. HTH, -- Billy Biggs vektor@xxxxxxxxxxxx