On Thu, 12 Jul 2001, Adam wrote: > Also where I can find information on differences between grab display and > overlay. I have a vague idea how they differ but I would know difference > in more details. It's mentioned a little in the xawtv docs. A summary: overlay configures the tv card to dump newly-captured tv frames directly into the memory of your video card. This way it appears on the screen straight away without the main CPU having to do anything about it. The tv card takes control of the PCI bus while it's doing this and talks to the video card directly. In grabdisplay mode, the xawtv application repeatedly asks the bttv driver for tv pictures from the tv card. These are grabbed into memory (in much the same way as the tv card does when grabbing to the video card---it's just a different area of memory). Once in memory, xawtv copies the image to the real display (X) using X calls. This mode may be more compatible, but it uses a lot more CPU time since it has to do format conversion and copying to the X display. If you have a video card which supplies the XVideo XvImage extension, xawtv can use this to do hardware scaling of the captured image to the screen. For example, I have a TNT2 with nvidia's driver and it does this. However, it's worth noting that there is a known bandwidth issue with the TNT2 and this kind of hardware overlay (occurs when the source image is a particular area). When using overlay mode, you'll probably notice momentary entire-screen flickers when you move or resize windows that intersect the tv window. This is because the bttv driver needs to be told of the new window locations. This information is filtered down the tv card, which then knows that it shouldn't draw the tv picture on certain areas of the screen (e.g. if the tv window is partially obscured). This shouldn't happen in grabdisplay mode because all drawing is done through X. However, you may notice slight motion artefacts (momentary pauses, etc), which occur when xawtv doesn't get all the processor time it needs to be able to grab every frame successfully. [sorry for the long message---almost done now!] Further confusion is obtained by the introduction of the XFree86 v4 'v4l' (video4linux) module. This is a module that is loaded into the X server that interacts with the video card (by accessing the /dev/video0 bttv [or other] device). In effect, it talks to the /dev/video device in the same way that xawtv, or any other tv application, would do. It then provides a generic XVideo interface to the facilities provided by the tv card. When you run xawtv in this mode (it'll use it by default if it's available; otherwise you need to do 'xawtv -noxv'), xawtv never accesses the video device directly. This means you can no longer do video capture, and some of the picture adjustment options change slightly. However, you'll probably find that the X display flickers less when you move windows about, since the display region updates can occur sooner since they're implemented at a lower level (inside the X server). You can think of the XVideo v4l (video4linux) mechanism as being the same as 'overlay' in Xawtv, but with the X server managing the card instead of the tv application. Hope that makes some sense! -- Jonathan Paisley paisleyj@xxxxxxxxxxxxx