como posso descobrir os bits por pixel usando meu framebuffer?

1

Eu sei que a execução do servidor X.org é executada com determinado valor de bpp, 8bpp por padrão, eu acho.

Mas como posso descobrir os bits reais por pixel usando meu framebuffer enquanto estou no linux? existe algum comando que possa obtê-lo?

Obrigado.

    
por Akronix 08.12.2013 / 23:12

2 respostas

3

Em um terminal, execute o comando xwininfo , depois escolha uma janela - o resultado Depth: é os bits por pixel. Por exemplo:

$ xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x3e00005 "davidp@sysadmin: ~"

  Absolute upper-left X:  1920
  Absolute upper-left Y:  24
  Relative upper-left X:  0
  Relative upper-left Y:  0
  Width: 1920
  Height: 1056
  Depth: 32
  Visual: 0x74
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x3e00004 (not installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +1920+24  -0+24  -0-0  +1920-0
  -geometry 212x56-0-0

Você também pode usar xdpyinfo , o que lhe dará mais informações do que você provavelmente deseja - incluindo todas as profundidades de bit disponíveis para suas exibições (sem mostrar a você qual delas está realmente em uso).

    
por David Purdue 08.12.2013 / 23:22
2

adicionando uma resposta, pois não tenho reputação de postar um comentário na resposta de David Purdue.

Como David menciona, xdpyinfo pode ser usado. A vantagem sobre xwininfo é que você não precisa selecionar uma janela, o que pode ser útil quando você está verificando um framebuffer virtual criado com Xvfb .

Aqui está um trecho da saída relevante do comando xdpyinfo :

....
screen #0:
  dimensions:    1024x768 pixels (260x195 millimeters)
  resolution:    100x100 dots per inch
  depths (6):    8, 1, 4, 16, 24, 32
  root window id:    0x4d
  depth of root window:    8 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x20
....

O depth of root window reflete a profundidade de bits da janela raiz, neste exemplo são 8 bits.

A propriedade depths lista as profundidades de bits suportadas, o primeiro número indica a profundidade de bits atual.

    
por mxttie 12.03.2018 / 21:18