伪造监视器EDID信息


9

我的显示器有点挑剔。有时我运行一个循环通过分辨率的程序,监视器将拒绝提供几天的EDID信息:

(/var/log/Xorg.0.log)
[   239.653] (II) fglrx(0): Restoring Recent Mode via PCS is not supported in RANDR 1.2 capable environments
[   260.113] (II) fglrx(0): Cannot get EDID information for CRT1
[   271.166] (II) fglrx(0): Cannot get EDID information for CRT1
(^ ran xrandr, this happens)

这导致视频卡认为它支持的最大分辨率为1600x1200,而我在显示器支持的最佳1680x1050下运行它。 xrandr 甚至没有列出支持的模式。

现在,我再次遇到同样的问题,因为我正在尝试 葡萄酒 这导致Xorg崩溃并迫使我重新启动。

有时我会弄清楚如何取回它(我已经忘记了如何),有时它会纠正自己。

第一次发生这种情况时,我想我最好使用备份二进制EDID信息 read-edid,我已经保存在硬盘上的128字节文件中。这引出了我的问题:

你怎么告诉fglrx从文件中读取EDID信息而不是试图从监视器中获取它?


附加信息:

我曾经认为这是视频卡的故障,但它正在发生新的视频卡(仍然是fglrx驱动程序),以及新的VGA电缆。

显示器是插入显卡VGA端口的Westinghouse LCM-22w3,即ATI Radeon HD 3200。

我已经做了一些研究,显然这是LCM-22w3的一个常见的抱怨,但似乎没有人知道如何解决这个问题。

fglrx 8.92,xorg-server 1.9.5,内核2.6.38.7 x86_64 arch。

Answers:


4

当我使用EDID阻塞VGA KVM切换器时,我使用一个小脚本来登录后修复分辨率:

xrandr --newmode "1600x1200_60.00"  162.00  1600 1664 1856 2160  1200 1201 1204 1250 +hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00
xrandr --output VGA-1 --mode 1600x1200_60.00

我想我以某种方式得到了xrandr的模式行(直接插入了监视器)。 我尝试将它放在X配置文件中,但是由于各种虚假的原因,愚蠢的X服务器一直忽略它。


1
谢谢,这对我有用。 Additinnaly,为了获得我的屏幕的一些默认值,我使用命令 cvt
remi

顺便说一句,如果您有2个屏幕,当您设置第二个屏幕的分辨率(例如带有笔记本电脑的外部屏幕)时,我不能再使用arandr来修复屏幕位置。但是你仍然可以使用xrandr和--left-of等等
remi

1

你可以试试

Option "IgnoreEDID" "TRUE"

然后手动指定显示器的信息。如果IgnoreEDID不适合您,请尝试

Option "UseEDIDFreqs" "FALSE"
Option "UseEDIDDpi" "FALSE"

1
[433447.647](WW)fglrx(0):未使用选项“UseEDIDFreqs”[433447.647](WW)fglrx(0):未使用选项“UseEDIDDpi”[433447.647](WW)fglrx(0):选项“IgnoreEDID “未使用[433447.647](WW)fglrx(0):未使用选项”CustomEDID“
amphetamachine

哪个发行版是这个?我没有适当的系统来测试(但从以前的经验中知道CustomEDID应该起作用,至少) - 您可能需要其他先决条件才能使自定义EDID工作。例如: en.gentoo-wiki.com/wiki/Radeon#Custom_EDID
Dr. JKL

1
这是Slackware,但这无关紧要。您提供的链接中提到的驱动程序是与Xorg一起提供的“radeon”F / OSS驱动程序,而不是我使用的专有“fglrx”(并且需要使我的3d加速工作)。
amphetamachine

0

一个非免费(好的,相当昂贵)的选项是使用 格芬DVI侦探 。它是一种设备,可以从设备缓存EDID信息,然后不断将其提供给PC。

我之前不得不使用它们连接到DVI KVM的PC,这些KVM在切换KVM端口后不会重新初始化它们的显示器。他们的工作非常出色,也适合您的使用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.