I am trying to use the Xv / Xvideo extension along with Video4Linux. The card works fine when I have it DMA RGB data directly to the frame buffer, using DGA. I am now trying to use Xvideo, which has very little documentation, so I'm guessing as to what should work. My program creates a 640 x 480 window, then calls XvPutVideo, specifying that window as the drawable. I specify the port associated with the input card; in this case 34 (see below log output). I specify encoding (XV_ENCODING) 1 - note that it shows up as set in below log output. I set the background color of the window (and verified same with xwd and gimp) to 0x101fe, which is the value of XV_COLOR_KEY, and I assume that pixels with different values would block the video. I don't get any video; the window is all the background (color key) color. Is there something more I have to do? I couldn't get xawtv to configure and recognize Xv so it would support it. Does anyone have a simpler program that tests XvPutVideo? The program testxv.c from http://www.cs.uni-potsdam.de/~wertmann/xv/ works and demonstrates that the output YUV buffer (I810 Video Overlay below) works. But that program does not test XvPutVideo. Another question: the tuning frequency (below) shows: 'XV_FREQ': 0 to 16000 gettable settable Can anyone tell me what units the frequency is in - KHz? 1/10 MHz? Also, does anyone know of a document that describes that? The "Wertmann" URL above describes the new functions (e.g. XvQueryPortAttributes), but not what any of the new attribute values are. Thanks for any help. Peter Kaczowka -------------------------------------- Here is the output from xawtv, loaded from a Debian package. I tried compiling xawtv on the target machine so it would enable Xv support, but couldn't get my packages right. Note that xawtv on this machine using DGA doesn't work right. To make my DGA-based code work right I had to hack a bit, because DGA thinks it's 32-bit but it's really 24-bit. This is xawtv-3.06, running on Linux/i686 (2.4.0) visual: id=0x21 class=4 (TrueColor), depth=24 x11: 640x480, 32 bit/pixel, 4096 byte/scanline, DGA, VidMode waitpid: No child processes waitpid: No child processes v4l: 640x480, 32 bit/pixel, 4096 byte/scanline Warning: Cannot convert string "-*-ledfixed-medium-r-semicondensed--39-*" to type FontStruct ------------------------------------------- Here is the "debug" output from my program: XvQueryExtension: ret 2 ver 2 rel 142 reqBase 75 evBase 152 errBase -1073743020 XvQueryAdaptors: 2 adaptors: video4linux: 1 port first 34 input video 1 format: depth 24 visual id 0x21 Info for port 34: 12 encodings: id 0 name 'pal-television' size 768 x 576 id 1 name 'ntsc-television' size 640 x 480 id 2 name 'secam-television' size 768 x 576 id 3 name 'pal-composite1' size 768 x 576 id 4 name 'ntsc-composite1' size 640 x 480 id 5 name 'secam-composite1' size 768 x 576 id 6 name 'pal-svideo' size 768 x 576 id 7 name 'ntsc-svideo' size 640 x 480 id 8 name 'secam-svideo' size 768 x 576 id 9 name 'pal-composite3' size 768 x 576 id 10 name 'ntsc-composite3' size 640 x 480 id 11 name 'secam-composite3' size 768 x 576 7 attributes: 'XV_ENCODING': -1000 to 1000 gettable settable value 1 (0x1) 'XV_BRIGHTNESS': -1000 to 1000 gettable settable value 0 (0x0) 'XV_CONTRAST': -1000 to 1000 gettable settable value 0 (0x0) 'XV_SATURATION': -1000 to 1000 gettable settable value 0 (0x0) 'XV_HUE': -1000 to 1000 gettable settable value 0 (0x0) 'XV_MUTE': 0 to 1 gettable settable value 0 (0x0) 'XV_FREQ': 0 to 16000 gettable settable value 39 (0x27) (no image formats) I810 Video Overlay: 1 port first 35 input image 1 format: depth 24 visual id 0x21 Info for port 35: 1 encoding: id 0 name 'XV_IMAGE' size 720 x 576 3 attributes: 'XV_COLORKEY': 0 to 16777215 gettable settable value 66046 (0x101fe) 'XV_BRIGHTNESS': -128 to 127 gettable settable value 0 (0x0) 'XV_CONTRAST': 0 to 255 gettable settable value 64 (0x40) 4 image formats: YUY2 bits 16 planes 1 YUV packed 'YUYV' top down yuv bits: 8 8 8 h: 1 2 2 v: 1 1 1 YV12 bits 12 planes 3 YUV planar 'YVU' top down yuv bits: 8 8 8 h: 1 2 2 v: 1 2 2 I420 bits 12 planes 3 YUV planar 'YUV' top down yuv bits: 8 8 8 h: 1 2 2 v: 1 2 2 UYVY bits 16 planes 1 YUV packed 'UYVY' top down yuv bits: 8 8 8 h: 1 2 2 v: 1 1 1 --------------------------------------------- Here is part of the output from X when I run it: XFree86 Version 4.0.2 / X Window System (protocol Version 11, revision 0, vendor release 6400) Release Date: 18 December 2000 Operating System: Linux 2.2.16-3smp i686 [ELF] (II) v4l driver for Video4Linux (**) I810(0): Depth 24, (--) framebuffer bpp 24 (==) I810(0): RGB weight 888 (==) I810(0): Default visual is TrueColor (--) I810(0): Chipset: "i810e" (--) I810(0): Linear framebuffer at 0xEC000000 (--) I810(0): IO registers at addr 0xFFA80000 (==) I810(0): Will alloc AGP framebuffer: 8192 kByte (==) I810(0): Using gamma correction (1.0, 1.0, 1.0)