In Erwartung einer Antwort auf xrandr, dass der Verstärker als Monitor erkannt wird, besteht eine mögliche Problemumgehung darin, Geräte mit bestimmten EDIDs auf die schwarze Liste zu setzen . Leider wird xrandr --verbose
alles in einem Format gedruckt, das nur umständlich zu analysieren ist und das Abfragen einzelner Geräte nicht unterstützt, und get-edid
die Ausgabe scheint nicht einfach xrandr
(zum Beispiel DVI-1
) den Monitor-IDs zuzuordnen zu sein .
Gibt es eine Möglichkeit, eine einfach zu analysierende EDID für einen einzelnen Monitor zu erhalten?
xrandr
Parsen gehen . Es ist umständlich, aber Sie schreiben Ihr Skript einfach ein für alle Mal, und dann funktioniert es überall.Antworten:
Lead # 1: Monitor-Edid
Ich bin nicht so begeistert von EDID und Monitoren, aber ich habe dieses Tool gefunden,
monitor-edid
das Ihnen auch hier von Nutzen sein könnte.Verzeih mir, wenn es nicht in der Basis ist, ich versuche angesichts der Vielzahl der Fragen, die Sie zu diesem Thema stellen, auch mehr über diesen Bereich zu erfahren.
Lead # 2: ddcontrol
Es gab ein anderes Tool, das ich angerufen habe
ddccontrol
und das hilfreich sein könnte, um die gewünschten Informationen zu erhalten.Lead # 3: / sys
Schließlich
/sys
bemerkte ich beim Durchstöbern, dass an den verschiedenen Video-Interfaces Blattknoten hingen.Auf meinem Lenovo-Laptop waren diese "Dateien" jedoch leer, möglicherweise sind sie auf Ihrem System anders. Ich habe diesen Forenthread gefunden, der eine Beispielausgabe der VGA-EDID zeigt.
Quelle: Extract Monitor Seriennummer / Herstellungsdatum mit EDID? .
Verweise
Monitor-edidquelle
Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
miti915
Fahrer, Kubuntu 15.04xrandr --verbose
beide geben EDID-Daten für meinen HDMI-Monitor zurück, aber auch keine EDID-Daten für meinen DVI-Monitor.Die Ausgabe von
xrandr --props
enthält hexadezimale EDID-Zeichenfolgen für jede angeschlossene Anzeige in weniger ausführlicher Form. Hier ist ein einfaches Python-Skript , das dies ausnutzt, um eine EDID für einen bestimmten angeschlossenen Monitor abzurufen.Ich habe keine anderen im Distributionspaket enthaltenen CLI-Tools gefunden, die für die EDID-Extraktion auf meinem NVidia-basierten System geeignet sind, aber die meisten Tools zum Parsen einer binären EDID scheinen problemlos zu funktionieren.
quelle
Wenn Sie zufällig einen x86- oder PowerPC-Arch verwenden, können Sie diesen verwenden
read-edid
. Auf Debian ist dies verfügbar hier .Die Verwendung ist einfach (Sie müssen root sein):
und dann die Struktur analysieren:
Oft wird dies kombiniert zu:
Lesen Sie auch hier, wie Sie diese benutzerdefinierte Edid-Datei mit den folgenden Methoden an Ihre Grafikkarte übergeben können:
quelle
Eine neuere Version eines Tools namens edid-decode kann EDID-Informationen analysieren und Text- und Binär-EDID-Dateien lesen und schreiben. Es funktioniert gut mit der Ausgabe von
xrandr --verbose
. Zum Beispiel kann es verwendet werden, um die EDID in einer Binärdatei zu speichern:Die mit Fedora 27 gelieferte Version von edid-decode (Paket: xorg-x11-utils) ist zu alt und funktioniert nicht einwandfrei. Ich habe die neueste Version verwendet .
quelle
In der binären Form ist EDID unter verfügbar
/sys/class/drm/card%d-%s/edid
, wobei%d
DRM-Geräteindex (wahrscheinlich ein GPU-Index) und%s
eine Connector-ID, die Sie in derxrandr
Ausgabe sehen, dargestellt werden.Führen Sie den folgenden Befehl aus, um alle verfügbaren Einträge aufzulisten
ls -1 /sys/class/drm/*/edid
Wenn Ihr GPU-Treiber DRM nicht unterstützt, können Sie EDID auf diese Weise nicht abrufen.
Führen Sie
hexdump
es aus , um es in hexadezimaler Form anzuzeigen .Wenn Sie ein für Menschen lesbares Formular wünschen, geben Sie es weiter an
edid-decode
:(Möglicherweise müssen Sie es mit Ihrem Paket-Manager
sudo apt install edid-decode
für Ubuntu installieren. )quelle
edid-decode
? Beachten Sie auch, dass es auch Unterverzeichnisse für nicht verbundene Monitore gibt.