RandR
# 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.

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:

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. 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:

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
