В ожидании ответа на xrandr обнаружение усилителя в качестве монитора возможный обходной путь - занести в черный список устройства с определенными значениями EDID . К сожалению, xrandr --verbose
печатает все в формате, который является громоздким для анализа и не поддерживает запросы к отдельным устройствам, и get-edid
выходные данные, кажется, не легко сопоставить xrandr
с идентификаторами монитора (например DVI-1
).
Есть ли способ получить легко разбираемый EDID для одного монитора?
xrandr
разбор. Это громоздко, но вы просто напишите свой сценарий раз и навсегда, и тогда он будет работать везде.Ответы:
Ведущий № 1: монитор-Edid
Я не особо разбираюсь в EDID и мониторах, но я нашел этот инструмент,
monitor-edid
который может быть полезен и здесь.Простите, если это не так, я пытаюсь узнать больше об этом пространстве, учитывая множество вопросов, которые вы задаете по этой теме.
Ведущий № 2: ddcontrol
Был еще один инструмент, который я нашел
ddccontrol
, который может помочь в получении информации, которую вы ищете.Ведущий № 3: / sys
Наконец, пробираясь,
/sys
я заметил, что на различных видеоинтерфейсах свисали листовые узлы.Однако на моем ноутбуке Lenovo эти «файлы» были пустыми, возможно, они другие в вашей системе. Я нашел эту ветку форума, которая показала пример выходных данных из VGA EDID.
Источник: Извлечь монитор Серийный номер / Дата изготовления Используя EDID? ,
Ссылки
Монитор-EDIDисточник
Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
сi915
драйвером, Kubuntuxrandr --verbose
оба возвращают данные EDID для моего монитора HDMI, но не возвращают данные EDID для моего монитора DVI.Вывод
xrandr --props
содержит шестнадцатеричные строки EDID для каждого подключенного дисплея менее подробным способом. Вот простой скрипт Python, использующий это для получения EDID для конкретного подключенного монитора.Я не нашел других дистрибутивных инструментов CLI, которые бы работали для извлечения EDID в моей системе на базе NVidia, но большинство инструментов для анализа двоичного EDID, похоже, работают нормально.
источник
Если вы используете x86 или powerpc arch, вы можете использовать
read-edid
. На Debian это доступно здесь .Использование просто (вам нужно быть пользователем root):
а затем проанализировать структуру:
Часто это объединяется в:
Смотрите также здесь о том, как передать этот пользовательский файл edid на вашу графическую карту, используя либо:
источник
Последняя версия инструмента под названием edid-decode может анализировать информацию EDID, а также может читать и записывать текстовые и двоичные файлы EDID. Хорошо работает на выходе
xrandr --verbose
. Например, его можно использовать для сохранения EDID в двоичном файле:Версия edid-decode, поставляемая с Fedora 27 (package: xorg-x11-utils), слишком старая и не работает идеально. Я использовал самую последнюю версию .
источник
В двоичном виде EDID доступен по адресу
/sys/class/drm/card%d-%s/edid
, где%d
представляет индекс устройства DRM (возможно, индекс GPU) и%s
представляет собой идентификатор соединителя, который вы видите вxrandr
выходных данных.Чтобы просмотреть все доступные, запустите
ls -1 /sys/class/drm/*/edid
Если ваш драйвер GPU не поддерживает DRM, вы не сможете получить EDID таким образом.
Чтобы просмотреть в шестнадцатеричном виде, бегите
hexdump
по нему.Если вы хотите удобочитаемую форму, передайте ее
edid-decode
, например:(вам может понадобиться установить его, используя менеджер пакетов,
sudo apt install edid-decode
для Ubuntu)источник
edid-decode
? Также обратите внимание, что есть и подкаталоги для отключенных мониторов.