1. Video overlay works by telling the capture card to capture directly to the framebuffer on the video card. No memcpy. That is the absolute most efficient way to display video, but there are a lot of caveats. You can't get that buffer to compress or display later, and you have to pass clipping and window position information to the video device (not a big deal). If you want the only full example I can think of you will have to look at the xawtv source. ANY other way, you will have a memcpy. But it is not THAT expensive. If you want to go real fast, you can use the newer dga interface for X-windows, but then your application is the only application that has access to the graphics interface, and you have to be root to write to that memory. I don't know how the sdl way works, but I am pretty sure that the fastest way (barring the overlay stuff above) to write applications is use the xvideo extensions for X and use the native video functions of the video card. If you capture card supports BGR24 pixel format you can use openGL and the BGR_EXT openGL pixel format. Chris