Ich versuche, den HDMI-Ausgang auf einem PC (HP ZBook) mit Debian (Stretch) zu verwenden. Ich habe Bumblebee konfiguriert, es funktioniert gut (glxinfo und optirun glxinfo melden die erwarteten Informationen und ich habe komplizierte GLSL-Shader getestet, die ebenfalls wie erwartet funktionieren).
Jetzt möchte ich einen Videoprojektor an den HDMI anschließen können. Ich habe hier gelesen [1], dass Intel-Virtual-Output verwendet werden kann, um es zu konfigurieren, wenn der HDMI auf der NVidia-Karte angeschlossen ist (unter Verwendung eines VIRTUAL-Ausgangs, der von xrandr manipuliert werden kann). In der Intel-Virtual-Ausgabe heißt es jedoch:
no VIRTUAL outputs on ":0"
Wenn ich es tue xrandr -q
, ist keine VIRTUELLE Ausgabe aufgelistet, ich habe nur:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 345mm x 194mm
1920x1080 60.02*+ 59.93
1680x1050 59.95 59.88
1600x1024 60.17
... other video modes ...
400x300 60.32 56.34
320x240 60.05
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
Meine installierte Version von xserver-xorg-video-intel lautet: xserver-xorg-video-intel_2.99.917 + git20160706-1_amd64.deb
Update (Sa. Dez. 09 2016) Ich habe Debian aktualisiert und jetzt stürzt X ab, wenn der zweite Monitor aktiv ist, wenn ich einige Anwendungen starte (zum Beispiel Xemacs). Sat. 17. Dezember 2016: Ja, herausgefunden! (hat die Antwort aktualisiert).
Update (Wed Sep 27 2017) Die Methode funktioniert in 99% der Fälle, aber letzte Woche habe ich einen Beamer ausprobiert, der nur 50-Hz-Modi akzeptiert und nichts anderes als 60 Hz erhalten konnte (es hat also nicht funktioniert). Weiß jemand, wie man 50Hz-Modi erzwingt?
Update (Di 01 Okt 2019) Argh! Wieder defekt: Nach dem Update von X und dem NVidia-Treiber stürzt optirun jetzt ab ( /var/log/Xorg.8.log
sagt Absturz in Xorg, OsLookupColor + 0x139). Update (07 Okt 2019) Es wurde ein temporärer Fix gefunden (aktualisierte Antwort).
[1] https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup
Antworten:
Ja, herausgefunden! Um die VIRTUELLE Ausgabe des Intel-Treibers zu aktivieren, müssen Sie eine
20-intel.conf
Datei im Xorg-Konfigurationsverzeichnis erstellen (/usr/share/X11/xorg.conf.d
unter Debian Stretch, ermittelt durch Lesen/var/log/Xorg.0.log
).Meine /etc/bumblebee/xorg.conf.nvidia lautet wie folgt:
Einige Erklärungen: Es benötigt einen "Screen" -Bereich, ansonsten wird versucht, das in 20-intel.conf deklarierte Intel-Gerät zu verwenden (das wir gerade hinzugefügt haben, oh my ...). Außerdem muss "AllowEmptyInitialConfiguration" in der Lage sein, mit optirun zu beginnen, wenn kein externer Monitor angeschlossen ist.
Mit dieser Konfiguration und dem Starten
intel-virtual-output
konnte ich auf meinen HDMI-Anschluss zugreifen. Yeehaa !!!Fehlerbehebung: Wenn es funktioniert
optirun
oderintel-virtual-output
nicht, werfen Sie einen Blick auf/var/log/Xorg.8.log
(Bumblebee erstellt einen X-Server mit Anzeige: 8, der intern verwendet wird).Hinweise I an mehreren Stellen gelesen , die
KeepUnusedXServer
eingestellt werden solltrue
undPMMethod
zunone
in/etc/bumblebee/bumblebee.conf
, ich tat das nicht und es funktioniert gut. Wenn ich das tue, funktioniert es, aber dann bleibt die diskrete GPU auch nach dem Beenden einer optiruned-Anwendung oder dem Beenden der Intel-Virtual-Ausgabe eingeschaltet, was ich nicht wollte.Weitere Hinweise Etwas anderes, das mich dazu brachte, meinen Kopf gegen die Wand zu stoßen, war das Deaktivieren von Nouveau und das Starten des Intel X-Servers: Dies muss mithilfe von Flags geschehen, die an den Kernel übergeben wurden und in den GRUB-Parametern angegeben sind. In habe
/etc/defaults/grub
ich folgende Zeile:(Achten Sie auf die Anführungszeichen und Anführungszeichen mit Escapezeichen).
Einige Erklärungen: Es vermeidet das Laden von nouveau (das nicht mit dem Nvidia X-Server kompatibel ist) und weist den Intel-Treiber an, direkt beim Start in den Grafikmodus zu wechseln. Wenn Sie dies nicht tun, kann der Intel X-Server nicht gestartet werden und greift auf einen einfachen alten VESA-Server mit CPU-seitigem 3D-Rendering zurück. Die
acpi_xxx
Flags werden auf diesem speziellen Computer benötigt, um einen BIOS-Fehler zu beheben, der im Grafikmodus mit ausgeschalteter diskreter GPU zum Absturz führt. Beachten Sie, dass es für dieses spezielle Notebook (tragbare HP ZBook-Workstation) spezifisch ist und für andere Laptops möglicherweise nicht erforderlich ist oder davon abweicht.Update (6. Dezember 2017) Mit der neuesten Debian-Distribution (Buster) ist "915.modeset = 1 gfxpayload = 640x480" nicht erforderlich. Um nouveau zu entfernen, musste ich auch eine nouveau.conf-Datei in /etc/modprobe.d mit "blacklist nouveau" erstellen und dann die RAM-Disk mit "update-initramfs -u" neu erstellen. Starten Sie neu und stellen Sie sicher, dass "nouveau" nicht mehr mit "lsmod | grep nouveau" geladen ist.
Update (17. Dezember 2016) Mit dem neuesten xorg-Server (1.19) scheint es ein Problem in einer RandR-Funktion zu geben, die Gamma verwaltet, wenn sie mit verwendet wird
intel-virtual-output
. So patchen Sie den Xserver und bringen ihn zum Laufen:editiere hw / xfree86 / modes / xg86RandR12.c Zeile 1260, füge "return" ein (damit die Funktion
xf86RandR12CrtcComputeGamma()
nichts macht)( Ersetze die
n.nn.n-n
mit der richtigen Version), starte neu und Yehaa !! geht wieder ! (aber es ist eine schnelle und schmutzige Lösung)Update hat einen Fehlerbericht eingereicht (war bereits bekannt und wurde gerade behoben): https://bugs.freedesktop.org/show_bug.cgi?id=99129
Wie ich herausgefunden habe: Installiert
xserver-xorg-core-dbg
und gemachtgdb /usr/lib/xorg/Xorg <xorg pid>
von einem anderen Rechner über ssh.Update (11. Januar 17) Scheint, dass der Fehler jetzt in den neuesten Debian-Paketen behoben ist.
Update (24.01.18) Wenn Sie einen Beamer für eine Präsentation anschließen möchten und vor dem Start alles konfigurieren müssen (Intel-Virtual-Output + XRANDR), kann dies stressig sein. Hier ist ein kleines Skript, das die Arbeit erledigt (Haftungsausschluss: viel Raum für Verbesserungen, in Bezug auf Stil usw.):
Aktualisierung (07.10.2013)
Ein "Fix" für den neuen Absturz: Schreiben Sie folgendes in ein Skript (nennen Sie es
bumblebee-startx.sh
zum Beispiel):(Ersetzen Sie PCI: nn: nn: n durch die Adresse Ihrer NVidia-Karte, die Sie mit lspci erhalten haben.)
Führen Sie dieses Skript in einem Terminalfenster als root (
sudo bumblebee-startx.sh
) aus, lassen Sie das Terminal dann geöffnetoptirun
undintel-virtual-output
arbeiten Sie wie erwartet (Hinweis: Manchmal muss ichxrandr
zusätzlich ausführen , damit der Bildschirm / Videoprojektor erkannt wird). Jetzt verstehe ich nicht, warum genau derselbe Befehl von Hummelabstürzen ausging, so viele Rätsel hier ... (aber zumindest gibt es eine vorübergehende Lösung).Wie ich herausgefunden habe: habe ein 'Wrapper'-Skript geschrieben, um den Xserver zu starten, es in der Datei bumblebee.conf als XorgBinary deklariert, die Befehlszeile ($ *) in einer Datei gespeichert und versucht, mit LD_PRELOAD einen Patch auf den XServer zu schreiben Behebung des Absturzes in osLookupColor (funktionierte nicht), aber als ich versuchte, dieselbe Befehlszeile von Hand zu starten, funktionierte es und es funktionierte ohne meinen Patch weiter (aber ich verstehe immer noch nicht warum).
Update 15.11.2013 Nach dem Update habe ich viel Flackern festgestellt , wodurch das System unbrauchbar wurde. Behebung durch Hinzufügen eines Kernel-Parameters
i915.enable_psr=0
(in/etc/defaults/grub
, thensudo update-grub
). Wenn Sie jetzt möchten, bedeutet PSR "Panel Self Refresh", eine stromsparende Funktion von Intel-GPUs (die zu Bildschirmflackern führen kann).quelle
intel-virtual-output
. wurde mit Exit-Code beendet111
. Ich versuchte sogar herauszufinden, womit es zu tun hattestrace
. Hab deinen Beitrag gefunden, den ich/etc/X11/xorg.conf.d/20-intel.conf
genau wie deinen erstellt habe, undBusID "PCI:2:0:0"
für alle Fälle meinen hinzugefügt . Verwendet ähnliche Einstellungen/etc/bumblebee/xorg.conf.nvidia
und bam,intel-virtual-output
läuft gut.xrandr
erkennt jetzt alle meine anderen Ports! : D <3 der Teil zur Fehlerbehebung über/var/log/Xorg.8.log
wirklich geholfenxrandr
, aber wenn ich das Kabel einhänge , sehe ich die Maus, aber auf dem externen Display werden keine Fenster angezeigt. Manchmal zeigt es eine Kopie meines Hauptbildschirms und dann werden beide Bildschirme schwarz und nichts passiert. und es stellte sich heraus, dass das System nicht mit beginnt/etc/X11/xorg.conf.d/20-intel.conf
und ich nichts in den Protokollen sehe. Wie auch immer, danke, dass du das teilst, ich schätze, ich komme einer Lösung näher.