在Linux下获取屏幕供应商和序列号

时间:2011-08-07 14:49:00

标签: linux gtk x11 gdk edid

我有Gdk::Screen的实例,它代表连接到我的计算机的显示器。如何读取显示器的供应商ID和/或序列号?

从XScreen获取供应商ID和序列号也足够了。

阅读监视器的EDID也足够了。

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:2)

我没有对此进行测试,但您应该能够查看Gnome的显示配置applet的来源。就在这里:

http://git.gnome.org/browse/gnome-control-center/tree/panels/display/xrandr-capplet.c

函数get_display_name()看起来很有希望。看起来它使用来自libgnome-desktop的代码,它也可以在同一个git浏览器中查看。

答案 1 :(得分:1)

EDID信息通常不是完全由X11传递,而只是那些对图形重新产生重要的部分,即分辨率,物理尺寸等。可以为此实现X11扩展,但ATM没有这样的扩展。

所以你必须查询EDID信息。远程执行操作是不可能的,但是对于读取本地机器信息,有一些工具,如 read-edid 。此外,可能还有图形驱动程序供应商特定的扩展,例如NVidia的 NV-CONTROL