Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: kvdr-Xv & deinterlacing support



Guido Fiala wrote:
> Hallo together,
> 
> found some time to make a test with kvdr and Xv-support.
> Basically it's 90% working and looks promising
> - including optional 50Hz upscale-deinterlacing!
> 
> (It takes about 50% CPU-load at my P2-450, mainly falling upon memcpy()=10% 
> and XSync() the rest, XvShmPutImage() only 10us/per call).
> 
> ---
> Can need some help - adressed to programmers and interested people:
> 
> There are however some problems/question remaining:
> 1. The test of the deinterlacing at "N24" scroll texts show a clear 
> improvement of readability in deinterlacing mode, but it looks only like 
> 25Hz, although the software says me it's 50Hz. Maybe the XSync() does'nt 
> actually show the frame upon the screen?
> 
> 2. And the only "don't":
> *None* of the capture formats the dvb/tv-card supports is directly supported 
> by the Xv-extension of the X-Server. One would have to call an additional 
> RGB2YUV-conversion routine eating CPU.
> Are there graphics cards which support more formats then shown below (extract 
> from the output of xvinfo at my V3k) , could someone please send me the 
> output of an Geforce and a Rage card or better a solution ?-)


This is the output of a Geforce256 (Elsa ErazorX²) on Redhat7.2 with 
NVIDIA drivers V2802 (no DVBs in that machine):

--- snip ---

X-Video Extension version 2.2
screen #0
   Adaptor #0: "NV10 Video Overlay"
     number of ports: 1
     port base: 54
     operations supported: PutImage
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
       depth 16, visualID 0x22
       depth 16, visualID 0x24
     number of attributes: 8
       "XV_DOUBLE_BUFFER" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_COLORKEY" (range 0 to 16777215)
               client settable attribute
               client gettable attribute (current value is 2110)
       "XV_AUTOPAINT_COLORKEY" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_SET_DEFAULTS" (range 0 to 0)
               client settable attribute
       "XV_BRIGHTNESS" (range -512 to 511)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_CONTRAST" (range 0 to 8191)
               client settable attribute
               client gettable attribute (current value is 4096)
       "XV_SATURATION" (range 0 to 8191)
               client settable attribute
               client gettable attribute (current value is 4096)
       "XV_HUE" (range 0 to 360)
               client settable attribute
               client gettable attribute (current value is 0)
     maximum XvImage size: 2046 x 2046
     Number of image formats: 4
       id: 0x32595559 (YUY2)
         guid: 59555932-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x32315659 (YV12)
         guid: 59563132-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x59565955 (UYVY)
         guid: 55595659-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x30323449 (I420)
         guid: 49343230-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
   Adaptor #1: "NV05 Video Blitter"
     number of ports: 32
     port base: 55
     operations supported: PutImage
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
       depth 16, visualID 0x22
       depth 16, visualID 0x24
     no port attributes defined
     maximum XvImage size: 2046 x 2046
     Number of image formats: 5
       id: 0x32595559 (YUY2)
         guid: 59555932-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x32315659 (YV12)
         guid: 59563132-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x59565955 (UYVY)
         guid: 55595659-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x30323449 (I420)
         guid: 49343230-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x3
         guid: 03000000-0000-0010-8000-00aa00389b71
         bits per pixel: 32
         number of planes: 1
         type: RGB (packed)
         depth: 0
         red, green, blue masks: 0xff0000, 0xff00, 0xff


--- snap ---

And this is the output of a TNT2 Vanta (Elsa TNT2 Vanta) on Mandrake8.2 
with NVIDIA drivers V2802 (2 DVBs in that machine, Ralp Metzler's 
fullsrceen patch is included in Mandrake8.2's V4L_drv.o):

--- snip ---

X-Video Extension version 2.2
screen #0
   Adaptor #0: "video4linux"
     number of ports: 1
     port base: 63
     operations supported: PutVideo
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
     number of attributes: 9
       "XV_ENCODING" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_BRIGHTNESS" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_CONTRAST" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_SATURATION" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_HUE" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is -1000)
       "XV_FREQ" (range 0 to 16000)
               client settable attribute
               client gettable attribute (current value is -1073743832)
       "XV_COLORKEY" (range 0 to 16777215)
               client settable attribute
               client gettable attribute (current value is 2110)
       "XV_AUTOPAINT_COLORKEY" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_SET_DEFAULTS" (range 0 to 0)
               client settable attribute
     number of encodings: 3
       encoding ID #0: "pal-dvb"
         size: 768 x 576
         rate: 0.020000
       encoding ID #1: "ntsc-dvb"
         size: 640 x 480
         rate: 0.016683
       encoding ID #2: "secam-dvb"
         size: 768 x 576
         rate: 0.020000
   Adaptor #1: "video4linux"
     number of ports: 1
     port base: 64
     operations supported: PutVideo
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
     number of attributes: 9
       "XV_ENCODING" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_BRIGHTNESS" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_CONTRAST" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_SATURATION" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is 0)
       "XV_HUE" (range -1000 to 1000)
               client settable attribute
               client gettable attribute (current value is -1000)
       "XV_FREQ" (range 0 to 16000)
               client settable attribute
               client gettable attribute (current value is -1073743832)
       "XV_COLORKEY" (range 0 to 16777215)
               client settable attribute
               client gettable attribute (current value is 2110)
       "XV_AUTOPAINT_COLORKEY" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_SET_DEFAULTS" (range 0 to 0)
               client settable attribute
     number of encodings: 3
       encoding ID #0: "pal-dvb"
         size: 768 x 576
         rate: 0.020000
       encoding ID #1: "ntsc-dvb"
         size: 640 x 480
         rate: 0.016683
       encoding ID #2: "secam-dvb"
         size: 768 x 576
         rate: 0.020000
   Adaptor #2: "NV04 Video Overlay"
     number of ports: 1
     port base: 65
     operations supported: PutImage
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
       depth 16, visualID 0x22
       depth 16, visualID 0x24
     number of attributes: 4
       "XV_DOUBLE_BUFFER" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_COLORKEY" (range 0 to 16777215)
               client settable attribute
               client gettable attribute (current value is 2110)
       "XV_AUTOPAINT_COLORKEY" (range 0 to 1)
               client settable attribute
               client gettable attribute (current value is 1)
       "XV_SET_DEFAULTS" (range 0 to 0)
               client settable attribute
     maximum XvImage size: 2046 x 2046
     Number of image formats: 4
       id: 0x32595559 (YUY2)
         guid: 59555932-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x32315659 (YV12)
         guid: 59563132-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x59565955 (UYVY)
         guid: 55595659-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x30323449 (I420)
         guid: 49343230-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
   Adaptor #3: "NV05 Video Blitter"
     number of ports: 32
     port base: 66
     operations supported: PutImage
     supported visuals:
       depth 16, visualID 0x21
       depth 16, visualID 0x23
       depth 16, visualID 0x22
       depth 16, visualID 0x24
     no port attributes defined
     maximum XvImage size: 2046 x 2046
     Number of image formats: 5
       id: 0x32595559 (YUY2)
         guid: 59555932-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x32315659 (YV12)
         guid: 59563132-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x59565955 (UYVY)
         guid: 55595659-0000-0010-8000-00aa00389b71
         bits per pixel: 16
         number of planes: 1
         type: YUV (packed)
       id: 0x30323449 (I420)
         guid: 49343230-0000-0010-8000-00aa00389b71
         bits per pixel: 12
         number of planes: 3
         type: YUV (planar)
       id: 0x3
         guid: 03000000-0000-0010-8000-00aa00389b71
         bits per pixel: 32
         number of planes: 1
         type: RGB (packed)
         depth: 0
         red, green, blue masks: 0xff0000, 0xff00, 0xff

--- snap ---


> 
> If someone likes to experiment with it, i can upload the upcoming kvdr-0.5a 
> at the usual place...
> 
> 
> 
> 

Just upload! :o)

Will remote-display (hardware-scaled fullscreen?) on network-clients 
work with that version of KVDR yet?

Rene




Home | Main Index | Thread Index