Na pendência de uma resposta, o xrandr detecta o amplificador, pois, como monitor, uma possível solução alternativa é colocar dispositivos na lista negra com EDID s específicos . Infelizmente, xrandr --verbose
imprime tudo em um formato que é difícil de analisar e não suporta a consulta de dispositivos únicos, e get-edid
a saída da parece não ser fácil de mapear para xrandr
os IDs do monitor (por exemplo DVI-1
).
Existe alguma maneira de obter um EDID facilmente analisável para um único monitor?
xrandr
analisar. É complicado, mas você apenas escreve seu script de uma vez por todas, e então ele funciona em qualquer lugar.Respostas:
Lead nº 1: monitor-edid
Não gosto muito de EDID e monitores, mas encontrei essa ferramenta,
monitor-edid
que também pode ser útil para você aqui.Perdoe-me se estiver fora da base, estou tentando também aprender mais sobre esse espaço, dada a variedade de perguntas que você faz sobre o assunto.
Lead nº 2: ddcontrol
Houve outra ferramenta que me deparei chamada
ddccontrol
, que pode ser útil para obter as informações que você procura.Lead nº 3: / sys
Finalmente, observando
/sys
, notei que havia nós de folhas pendurados nas várias interfaces de vídeo.No entanto, no meu laptop Lenovo, esses "arquivos" estavam vazios, talvez sejam diferentes no seu sistema. Encontrei este tópico do fórum que mostrava saída de amostra do VGA EDID.
Fonte: Extrair o número de série do monitor / data de fabricação usando o EDID? .
Referências
Monitor-edidfonte
Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
com oi915
driver, Kubuntu 15.04xrandr --verbose
ambos retornam dados EDID para o meu monitor HDMI, mas também não retornam dados EDID para o meu monitor DVI.A saída de
xrandr --props
contém seqüências EDID hexadecimais para cada exibição conectada de uma maneira menos detalhada. Aqui está um script Python simples que explora isso para obter um EDID para um monitor conectado específico.Não encontrei nenhuma outra ferramenta CLI distribuída que distribua para a extração de EDID no meu sistema baseado em NVidia, mas a maioria das ferramentas para analisar um EDID binário parece funcionar bem.
fonte
Se você estiver usando um arco x86 ou powerpc, poderá usar
read-edid
. No debian, isso está disponível aqui .O uso é simples (você precisa ser root):
e depois analise a estrutura:
Geralmente, isso é combinado em:
Veja também aqui como passar esse arquivo edid personalizado para sua placa gráfica usando:
fonte
Uma versão recente de uma ferramenta chamada edid-decode pode analisar informações EDID e pode ler e escrever arquivos EDID de texto e binários. Funciona bem na saída de
xrandr --verbose
. Por exemplo, ele pode ser usado para salvar o EDID em um arquivo binário:A versão do edid-decode que acompanha o Fedora 27 (pacote: xorg-x11-utils) é muito antiga e não funciona perfeitamente. Eu usei a versão mais recente .
fonte
No formato binário, o EDID está disponível em
/sys/class/drm/card%d-%s/edid
, onde%d
representa o índice do dispositivo DRM (provavelmente um índice da GPU) e%s
é um ID do conector que você vê naxrandr
saída.Para listar todos os disponíveis, execute
ls -1 /sys/class/drm/*/edid
Se o seu driver de GPU não suportar DRM, você não poderá obter o EDID dessa maneira.
Para visualizar em formato hexadecimal, execute
hexdump
nele.Se você deseja uma forma legível por humanos, passe-a para
edid-decode
, por exemplo:(pode ser necessário instalá-lo usando o gerenciador de pacotes,
sudo apt install edid-decode
para Ubuntu)fonte
edid-decode
? Observe também que existem subdiretórios para monitores desconectados.