RandR
RandR (von englisch Resize and Rotate) ist ein Kommunikationsprotokoll, welches in Form einer Erweiterung von X11 oder Wayland zum Setzen von Monitoreinstellungen genutzt wird. XRandR (bzw. WRandR bei Wayland) kann Fenster skalieren, rotieren und reflektieren.[2]
RandR | |
---|---|
Basisdaten | |
Hauptentwickler | Keith Packard, Jim Gettys |
Entwickler | X.Org Foundation |
Aktuelle Version | 1.5.0 (16. Mai 2015[1]) |
Betriebssystem | Linux |
Kategorie | Protokoll |
www.x.org/wiki/Projects/XRandR/ |
Um den Grafikmodus zu wechseln, muss sowohl ein Befehl an die Bildschirm-Ansteuerungseinheit (engl. display controller) ausgehen, als auch einer an den x-server (X.Org Server), welche das Wurzelfenster entsprechend einstellt.
Die vom jeweiligen Bildschirm unterstützten Modi werden vom Grafiktreiber über EDID erhalten, während die von der Bildschirm-Ansteuerungseinheit unterstützten Modi im Treiber enthalten sind.
Die Möglichkeiten zu skalieren, zu rotieren und/oder zu reflektieren beziehen sich auf den Inhalt des Framebuffers, bzw. auf das Wurzelfenster.
Benutzer benutzen RandR entweder über ein graphisches Konfigurationsprogramm oder die Kommandozeilenprogramme xrandr
(X11) bzw. weston-wrandr
(Wayland).
xrandr
Eine Beispielausgabe von xrandr
sieht folgendermaßen aus:
Screen 0: minimum 8 × 8, current 1920 × 1080, maximum 32767 × 32767 eDP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm 1920x1080 60.05*+ 40.03 1400x1050 59.98 1280x1024 60.02 1280x960 60.00 1024x768 60.00 800x600 60.32 56.25 640x480 59.94 HDMI1 disconnected (normal left inverted right x axis y axis) VGA1 disconnected (normal left inverted right x axis y axis) VIRTUAL1 disconnected (normal left inverted right x axis y axis)
In diesem Beispiel ist nur ein Monitor am DisplayPort-Anschluss 1 (mit eDP1 bezeichnet) angeschlossen (DisplayPort erlaubt den Anschluss von mehreren Bildschirmen an einem Anschluss über Verkettung (engl. daisy chaining)) und, das am eDP1-Ausgang ausgegebene Signal hat die Parameter Bildschirmauflösung=1920x1080 Pixel, Bildwiederholrate=60,05 Hz.[3] An den vorhandenen HDMI- und VGA-Anschlüssen ist nichts angeschlossen.
Der folgende Aufruf spiegelt die Ausgabe am LVDS-Ausgang 1 auf den HDMI-Ausgang 3, skaliert das Bild dabei aber. Als Ergebnis werden beide Ausgabegeräte mit ihrer jeweiligen nativen Auflösung betrieben:
xrandr --fb 1600x900 --output LVDS1 --mode 1600x900 --scale 1x1 --output HDMI3 --same-as LVDS1 --mode 1920x1200 --scale-from 1600x900[4]
Hinweis: Die Bezeichnung der einzelnen Ausgänge wird im DRM bestimmt.
Bildschirmfotos
Es gibt recht zahlreiche grafische Programme, welche RandR nutzen um Bildschirmeinstellungen vorzunehmen. Wie aus dem obigen Beispiel zu entnehmen, bieten diese im Gegensatz zum Kommandozeilenprogramm weit weniger Möglichkeiten an, den bzw. die Bildschirme, dem Wunsch entsprechend zu konfigurieren.
- GNOME 3.14
- Xfce
- lxrandr
- grandr
Siehe auch
Einzelnachweise
- [ANNOUNCE] randrproto 1.5.0, 16. Mai 2015
- The X Resize, Rotate and Reflect Extension Version 1.5.0, 14. März 2015
- Phoronix: A Newbie’s Guide To RandR 1.2, 26. November 2007.
- Opening a Window to a Wider World.