Por que a resolução nativa do meu monitor não é reconhecida no Linux?

0

Eu possuo um monitor ViewSonic VA1931wa-LED que possui uma resolução nativa de 1366x768 pixels com uma taxa de atualização de 60Hz. O problema é que, não importa o que eu faça, ele funciona bem no Windows, mas em qualquer distribuição Linux, ele não funciona corretamente. Eu experimentei o driver proprietário da nvidia (minha GPU é uma nvidia GeForce 210) e com o driver nouveau e as resoluções que eu obtenho mais próximas da nativa são 1368x768 e 1360x768.

Eu também tentei digitar gtf 1366 768 60 no terminal e a saída é a seguinte:

    # 1368x768 @ 60.00 Hz (GTF) hsync: 47.70 kHz; pclk: 85.86 MHz

Modeline "1368x768_60.00" 85,86 1368 1440 1584 1800 768 769 772 795 -HSync + Vsync

Como você pode ver claramente, mesmo digitando 1366 pixels horizontais, recebo 1368 como saída. Então, existe uma maneira de forçar meu monitor a exibir sua resolução nativa? Se não, então o que mais pode ser feito?

Evangelos
fonte
Ver se isso ajuda superuser.com/questions/1323967/... askubuntu.com/questions/377937/how-to-set-a-custom-resolution cvt 1366 768 60 em seguida, xrandr --newmodeem seguida xrandr --addmode. Isso funciona no VirtualBox com resoluções fora do padrão, mas com monitores reais, acho que depende do driver de vídeo.
Paulo

Respostas:

0

Devido à maneira como o hardware CRTC legado funciona nas placas gráficas da Nvidia, você só pode definir resoluções horizontais com múltiplos de 8. 1360 e 1368 são múltiplos de 8, 1366 não.

Você não disse como o seu monitor está conectado à sua placa gráfica (VGA, DisplayPort, HDMI / DVI, ...). Os detalhes são um pouco complicados, mas novamente por motivos herdados, algumas dessas conexões incluem uma fase horizontal e vertical, na qual apenas os pixels em branco são enviados. Para a sua modelo, você teria, por exemplo, 1368 pixels de buffer de quadros em um total de 1584 pixels horizontais.

Isso significa que realmente não importa que os dois últimos pixels da faixa 1368 não sejam exibidos; o cartão enviará 216 pixels em branco adicionais que também são ignorados pelo monitor.

Então, no seu caso, eu escolheria a resolução horizontal 1368. Isso significa que sua área de trabalho terá dois pixels à direita que não são visíveis (e eu não conheço nenhuma maneira de convencer o X de que o buffer de quadros real é menor). Possivelmente, você pode configurar seu gerenciador de janelas para sempre ignorar esta área.

Editar

O VGA usa transmissão analógica; portanto, um LCD conectado ao VGA possui um conversor A / D para converter as informações de pixel em digital. Não estou completamente convencido do que você quer dizer com "algumas partes verticais da tela estão borradas", mas se você quer dizer áreas ou listras verticais na mesma distância, a razão é que a conversão A / D não ocorre no limite de pixels , e a razão para isso é que a largura horizontal total (1584 na sua modelagem) não é o que o monitor precisa: essa largura total aumenta ou diminui os pixels; portanto, em horários regulares, a amostragem ocorre em um limite entre os pixels.

Assim, você pode brincar com a largura total (e / ou os valores de sincronização, para mudar a imagem) da sua modelagem.

Além disso, dê uma olhada no seu /var/log/Xorg.0.log, ele deve conter as modelos sugeridas pelo monitor via EDID. Ou leia os dados do EDID usando outras ferramentas. Se você não sabe como interpretar o log, faça o upload em uma pasta etc., e edite sua pergunta com um link.

Outra coisa que você pode tentar é procurar qual modelo o Windows usa (embora não tenha certeza de onde encontrar essas informações no Windows).

dirkt
fonte
O monitor está conectado à GPU através do VGA, que é a única interface disponível neste monitor. O problema é que, embora eu possa definir minha resolução para 1368x768 e a imagem seja boa, algumas partes verticais da tela ficam embaçadas e não podem ser corrigidas, mesmo quando as configurações são ajustadas manualmente. Mas o que é ainda mais intrigante é que, no Windows, a GPU e a resolução nativa do monitor são instantaneamente reconhecidas e aplicadas quando o driver é instalado e funciona na perfeição.
Evangelos 23/11