Linux Xrandr im Dualmonitorbetrieb: unterschiedliche Skalierungen, Hilfe...

Til

Member
Registriert
21 Mai 2019
Beiträge
594
Hallo,

ich habe ein hochauflösendes 13" Laptop (2160x1440) rechts neben einem Full-HD-Monitor stehen und komme mit Xrandr unter Kubuntu 20.04 LTS nicht zurande. Ich möchte auf dem Laptop 200% und auf dem Full-HD 150% skalieren.

Im Internet gibt es viele Seiten, wo Leute sich mit dem Problem rumschlagen, aber ich verstehe schlichtweg die Syntax der zu verwendenden Befehle nicht.

Wenn ich etwas in der Art hier mache, passt es einfach nicht:

xrandr --output DP-1 --scale 2x2 --mode 1920x1080 --fb 7680x2160 --pos 3840x0
xrandr --output eDP-1 --scale 1x1 --pos 0x0

Kann mir da jemand aushelfen?



Quellen:

https://askubuntu.com/questions/1110171/multi-monitor-setup-with-xrandr

https://wiki.ubuntuusers.de/RandR/

[url]https://www.thinkwiki.org/wiki/Xorg_RandR_1.2

[/URL]
 
Zuletzt bearbeitet:
--fb sollte unnötig sein, X errechnet das automatisch.

Was verstehst du unter Skalierung? Man kann die Auflösung skalieren, das ist das, was du mit xrandr versuchst. Generell ist es aber sehr umständlich, sowas über xrandr zu machen.

--scale 2x2 ist nicht empfehlenswert, das rendert in doppelter Auflösung und versucht dann herunterzuskalieren, was zwangsweise verschwommen wird.
--scale 1x1 ist überflüssig, da Normalfall
--scale 0.5x0.5 gibts noch, hier wird mit halber Auflösung gerenderter und dann hochskaliert. Neuere xrandr können parallel dazu noch --filter nearest, damit bleibt die Sache gestochen scharf, da jeder gerenderte Pixel perfekt auf 4 Pixel des Panels abgebildet wird. So kann man z.B. einen 4k Monitor als 2k verwenden.

In deinem Fall:

xrandr --output eDP-1 --pos 0x0 --scale 0.5x0.5 --filter nearest

Zum 150% Scaling auf dem 1080er wären das dann 0.667x0.667, aber das ist wieder zwangsläufig verschwommen:

xrandr --output DP-1 --mode 1920x1080 --right-of eDP-1 --scale 0.667x0.667


Man kann auch über das Toolkit skalieren, also Fensterelemente anpassen. Das ist das, was Windoze unter Skalieren versteht. Das geht aber anders und dazu kann ich nichts Näheres sagen.
 
Zuletzt bearbeitet:
Die xrandr-Option --filter nearest geht bei meinem Kubuntu leider nicht, es ist ohne diese Option alles total verschwommen.

Über die KDE Anzeige kann ich direkt auf 200% skalieren, das sieht dann aber auf dem externen Monitor leider riesig aus (hat nur 1080p)
 
Geht nicht 200% auf dem kleinen und 100% auf dem Großen / das sollte doch passen?
 
Über die KDE Anzeige kann ich direkt auf 200% skalieren, das sieht dann aber auf dem externen Monitor leider riesig aus (hat nur 1080p)
Ja, das Toolkit-Scaling ist leider meist nicht individuell für Bildschirme definierbar.

Die xrandr-Option --filter nearest geht bei meinem Kubuntu leider nicht, es ist ohne diese Option alles total verschwommen.
Du kannst mal schauen, ob du irgendwo eine neuere Version des Pakets x11-xserver-utils auftreiben kannst. Das enthält xrandr. Neuere xrandr unterstützen --filter. Übrigens hilft --filter nearest nur bei 0.5x0.5 Scaling, andere Verhältnisse lassen sich nicht schön skalieren.
 
Zuletzt bearbeitet:
Geht nicht 200% auf dem kleinen und 100% auf dem Großen / das sollte doch passen?

Ideal wären 125% auf dem externen DP-1 und 175% auf dem internen eDP-1, so habe ich es unter Windows 10 eingestellt.

Eine neuere Version eines Pakets finden und einbinden übersteigt leider meine bescheidenen Linux-Kenntnisse, ich bin reiner Anwender...
 
Also ich hatte das früher mal gemacht. Da hatte ich aber nur »--scale« und »--panning« als Optionen.
Das Skalierungs-Workaround mittels xrandr funktioniert im Prinzip via Overscaling. D.h. du gehst in den HiDPI-Modus des nächsthöheren Integerwertes und skalierst die Monitore dann dann mit positivem Logarithmus, um das Bild zu verkleinern. Skaierungsfaktioren mit negativem Logarithmus führen zwangsläufig zu einem unscharfen Bild, da dann weniger Pixel gerechnet würden als angezeigt werden sollen.
Mit »autorandr« kannst du diese Konfiguration dann speichern und Laden sowie in den Autostart legen.
Versuche mal:

Code:
xrandr --output DP-1 --scale 1.6x1.6
xrandr --output DP-1 --panning 3072x1728
Code:
xrandr --output eDP-1 --scale 1.142857x1.142857
xrandr --output eDP-1 --panning 2926x1646
Für die von dir zuletzt favorisierte Skalierung und den Faktor »2.0«.
Den gibt es quasi bei allen Desktopumgebungen.
Speziell bei KDE kannst du aber auch unter Xorg zwischenstufen einstellen. Dann passt du die Zahlen entsorechend an.
Den Faktor »1.0« kannst du getrost lassen. Das ist unnötig. Wenn du andere Faktoren möchtest, passt du wiederum die Zahlen an.

Xrandr ist allerdings für das Emulieren von monitor-independent fractional-scaling nie ausgelegt worden.
Entsprechend gibt es meiner eigenen Erfahrung nach eine ziemliche Kluft zwischen Theorie und Praxis. Theoretisch ist »xrandr« ein uneingeschränkte Möglichkeit um unter Xorg „nach Herzenslust“ zu skalieren. In der Praxis gibt das je nach Umgebung einfach nur GUI-Salat. Du kannst es aber gefahrlos ausprobieren, da die Konfiguration ja erst einmal nur temporär ist. Ansonsten würde ich dir mal anraten, dir mal Wayland anzusehen. Unter Kubuntu >= 19.10 ist Wayland im Gegensatz zu <= 18.04 definitiv brauchbar.
Bei einem 13-Zoll-Notebook würde ich jetzt einfach mal annehmen, dass keine NVIDIA-GPU verbaut ist. Dann kannst du in den Monitor-Settings für jeden Monitor einen eigenen Skalierungsfaktor einstellen und hast sogar Multitouch-Gesten.
 
Zuletzt bearbeitet:
Wie aktiviere ich Wayland unter Kubuntu 20.04 (oder ganz grundsätzlich unter Kubuntu)?
 
Du benötigst das Paket »plasma-workspace-wayland«. Installieren kannst du das mit »apt« oder »Muon«.
Im Anmeldebildschirm (SDDM) wählst du dann unten links in einem Menü (kann man leicht übersehen) aus, dass die Sitzung unter Wayland gestartet werden soll.
SDDM setzt dann automatisch die letzte Auswahl als Standard für das nächste Mal.
 
Danke, das klappt jetzt. Tatsächlich kann man unter Wayland problemlos unterschiedlich skalieren.

Leider sieht das auf dem kleinen 13" komplett verwaschen aus, egal ob 150, 175 oder 200%.

Irgendein Haken ist immer... :facepalm: :whistling:


Muss ich doch mit xrandr arbeiten, die Parameter muss ich noch anpassen, die passten leider nicht.

Die Syntax von xrandr ist nicht ganz leicht zu verstehen.
 
Zuletzt bearbeitet:
Leider sieht das auf dem kleinen 13" komplett verwaschen aus, egal ob 150, 175 oder 200%.

Interessant. Meinst du nur Firefox und Thunderbird? Die beiden haben unter Wayland und KDE Plasma 5 tatsächlich ein Problem mit verwaschenem Aussehen. Ist ein bekannter Bug.
Das ist übrigens einer der Gründe, weshalb ich selbst wieder zu Xorg zurückgekehrt bin — neben meiner NVIDIA-GPU und einem kleinen, aber für mich relevanten Feature von Plasma 5 unter X.org, welches es zumindest bis zuletzt noch nicht unter Walyand gab.
Ich selbst habe jedoch auch glücklicherweise zwei Monitore, die man am besten beide auf 1.25 skaliert.

Wenn es tatsächlich nur Firefox und Thunderbird sind, kann ich dir nur raten, entweder zu GNOME zuwechseln, wo das besser sein müsste oder für Thunderbird und Firefox Alternativen zu suchen.
 
Ich nutze Linux in allererster Linie zum Surfen und Mailen, und da sind Firefox und Thunderbird erste Wahl.

Werde gucken müssen, wie ich xrandr unter KDE richtig einsetze. Alternativ ginge noch Cinnamon.

Mein Problem ist halt auch, dass mein Laptop einen 3:2 Bildschirm hat und dieser nicht sauber auf den externen 16:9 zu skalieren geht.

Im Notfall muss ich tatsächlich Linux den Rücken kehren und mit Windows arbeiten, wo das ootb geht...
 
Ach so, du willst den externen auf den internen spiegeln. Das ist bei unterschiedlichen Formaten aber ohne Kompromisse nicht möglich. Da hilft dir auch kein Windows.
Ich selbst war mit Wayland ziemlich zufrieden, als ich es für einige Monate unter Kubuntu 19.10 auf meinem alten Laptop eingesetzt habe.
Damals brauchte ich noch verschiedene Skalierungen und hatte keine NVIDIA-GPU. Jetzt bin ich ja wieder bei Xorg.

Ich nutze Linux in allererster Linie zum Surfen und Mailen, und da sind Firefox und Thunderbird erste Wahl.
Erste Wahl ist relativ. Es gibt Alternativen wie KMail, Evolution zum Mailen bzw. Opera und Chromium als Browser. Nur um mal ein paar Beispiele zu nennen.

Ich wüsste auch nicht, warum ein Programm erste Wahl sein sollte, wenn es Skalierungsprobleme hat.
Mit Cinnamon tust du dir nicht unbedingt einen Gefallen, denn damit wird dir das moderne Protokoll Wayland auf absehbare Zeit verschlossen bleiben.
Ist konzeptionell in der Tat ein toller Desktop, doch das Sicherheitskonzept von Linux Mint würde mir Unruhige Nächte bereiten. Es ist in erster Linie allerdings kein Linux-Problem sondern ein Mozilla-Problem. By-the-way ist Mozilla respektive bei vielen Web-Entwicklern sehr unbeliebt, weil sie gerne ihr eigenes Süppchen kochen, was viel Anpassungsarbeit erfordert.
Wenn du Windows willst, dann werde glücklich damit. Alle, die ich kenne, die Linux-Distris nutzen, haben dafür klare Gründe, mich eingeschlossen — Und wegen eines dämlichen Mailprogramms würde ich nicht das OS wechseln, zumal es ja Alternativen gibt.
 
Zuletzt bearbeitet:
Nein nein, spiegeln wollte ich nicht, sondern nach links erweitern.

Ich habe das xrandr-wiki so verstanden, dass man praktisch einen übergroßen Desktop definiert (sprich Auflösung A+B) und das auf beide mittels Befehl aufteilt.

Bei deinem Vorschlag in #7 habe ich eine zu große Desktopfläche, welche ich mit der Maus rumschieben kann.

Ich brauche links 125% bei 1920x1080 und rechts 175% bei 2160x1440, habe ich festgestellt.

Muss ich dann nicht einen Desktop (1920+2160) x 1440 definieren und dann entsprechend skalieren?

Was mache ich mit dem Monitor, der nur 1080 hat?
 
Also das mit einem großen Desktop, welcher beide Bildschirme umfasst, habe ich nie gemacht. Da bin ich mangels Erfahrung raus. Xrandr ist ein sehr komplexes Werkzeug, mit dem du eine Menge anstellen kannst. Da musst du dich selbst in das xrandr-Wiki einlesen.
Ich habe in Prä-Wayland-Zeiten beide Monitore auch als separate Monitore behandelt und mit xrandr nur überskaliert, um das fraktionale Skalieren zu ralisieren.
Dabei ist der Skalierungsfaktor der Quotient aus dem für alle Monitore identischen Skalierungsfaktor des User-Interface (Numerator) und dem eigentlich gewünschten Skalierungsfaktor für einen spezifischen Monitor (Denominator).
Diesen Faktor trägst du hinter die »--scale«-Option ein, um den Monitor überzuskalieren. Also dann »--scale 1.4x1.4« für 175:125 bei deinem 1080p-Monitor.
Das Produkt aus diesem Quotienten und der eigentlichen physikalischen Auflösung des Monitors trägst du nun hinter die »--panning«-Option ein, um die Desktopoberfläche und die Grenzen des Mauszeigers anzupassen. Also dann »--panning 2688x1512« für (1920*175:125) x (1080*175:125) Den internen Monitor lässt du in Ruhe, da 175% ja nativ möglich sind vonseiten Plasma 5.
 
  • ok1.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen
Zurück
Oben