Why X server exposes multiple visuals with same depth/colormap ?

patrick ficheux pficheux at prologue.fr
Thu Dec 31 02:54:46 PST 2009


Yann Droneaud a écrit :
> Le jeudi 31 décembre 2009 à 08:17 +0100, patrick ficheux a écrit :
>   
>> Hello,
>>
>> It seems that X server exposes several visuals with same caracteristics 
>> (depth / color).
>>
>> For example, on my Debian, xdpyinfo displays 4 identical Visuals: 
>> TrueColor/24 planes (see output below) and only one visual TrueColor/32 
>> planes.
>> With window/cygwin, XWin (the X server) exposes 15 identical visuals 
>> TrueColor / 24 planes
>>
>> Is there a reason to expose several identical visuals ?
>> If yes, could you give me an example ?
>>
>>     
>
> I don't have a definitive answer for this, but from my humble
> experience, those visuals have different render / OpenGL support:
> there's an X visual for each specific OpenGL framebuffer configuration.
>
> Try xdpyinfo -ext RENDER and you can see picture formats for each
> visual.
>   
It seems that RENDER uses only one picture for all visual with same 
caracteristics (see output below)
visual 0x22/23/24/25 uses picture 0x2b (depth 24)
visual 0x3f uses picture 0x29 (depth 32)

Also, differents visuals with same depth/colors seems to use the same 
picture ...

> Try glxinfo and you will get OpenGL framebuffer attributes.
>   
... I don't understand the output of glxinfo ... :-(
> Regards.
>   
Regards


extract from output of xdpyinfo -ext RENDER

  number of visuals:    5
  default visual id:  0x22
  visual:
    visual id:    0x22
    class:    TrueColor
    depth:    24 planes
[...]
  visual:
    visual id:    0x23
    class:    TrueColor
    depth:    24 planes
[...]
  visual:
    visual id:    0x24
    class:    TrueColor
    depth:    24 planes
[...]
  visual:
    visual id:    0x25
    class:    TrueColor
    depth:    24 planes
[...]
  visual:
    visual id:    0x3f
    class:    TrueColor
    depth:    32 planes
[...]
RENDER version 0.10 opcode: 156, base error: 179
  Render formats :
  pict format:
 >-------format id:    0x26
 >-------type:         Direct
 >-------depth:        1
[...]
  pict format:
 >-------format id:    0x27
 >-------type:         Direct
 >-------depth:        8
[...]
  pict format:
 >-------format id:    0x28
 >-------type:         Direct
 >-------depth:        4
[...]
  pict format:
 >-------format id:    0x2b
 >-------type:         Direct
 >-------depth:        24
[...]
  pict format:
 >-------format id:    0x2c
 >-------type:         Direct
 >-------depth:        24
[...]
  pict format:
 >-------format id:    0x3a
 >-------type:         Direct
 >-------depth:        16
[...]
  pict format:
 >-------format id:    0x3b
 >-------type:         Direct
 >-------depth:        32
[...]
  Screen formats :
    Screen 0 (sub-pixel order Unknown)
      filters: nearest, bilinear, convolution, fast(nearest), 
good(bilinear), best(bilinear)
      visual format:
        visual id:      0x22
        pict format id: 0x2b
      visual format:
        visual id:      0x23
        pict format id: 0x2b
      visual format:
        visual id:      0x24
        pict format id: 0x2b
      visual format:
        visual id:      0x25
        pict format id: 0x2b
      visual format:
        visual id:      0x3f
        pict format id: 0x29
     depth formats:
       depth           24
       pict format id: 0x2b
       pict format id: 0x2c
[...]




More information about the xorg-devel mailing list