|Original author(s)||X.Org Foundation|
|Stable release||1.4.0 / July 12, 2012|
RandR is a communications protocol written as an extension to the X11 and Wayland protocols for display servers. Both, XRandR and WRandR facilitate the ability to resize, rotate and reflect the root window of a screen.
Limitations and criticisms of RandR
RandR 1.2 permits only one virtual screen per display device. It is not possible to assign each monitor on a device to a different screen (sometimes called "Zaphod" mode), or to combine monitors from multiple devices into a single screen. One practical limiting effect of this is that it is not possible to run a different WM on each monitor, since window managers are limited to one per screen. Some of these specific issues are resolved in RandR 1.3.
The initial X11 design did not anticipate the need for dynamic resizing and it was necessary to restart the X display server to bring about the changes. However, XFree86 has, since its first release, allowed the user to change the screen resolution on the fly without changing the desktop size. RandR extension framework brought the ability to change display characteristics without restarting the X session. The extension framework allows laptops and handheld computers to change their screen size to drive external monitors at different resolutions than their built in screens.
Some of the features in version 1.3:
- Querying state without output probing
- Multi-monitor panning (still limited to one separate screen per GPU)
- Display transformations (translation, scaling, rotation, projection)
- Standard outputs
Some of the features in 1.4:
- Output border adjustment properties
- Provider objects, which allow configuration of render and output offload for multi-GPU configurations
- The X Resize, Rotate and Reflect Extension Version 1.3.1
- "Introduce Wayland RandR protocol". 2014-02-26. Retrieved 2014-02-27./013480.html
- Debian XStrikeForce (documentation and information on Xrandr 1.2)
- Freedesktop.org GIT Repository Browser - XRandR Protocol Headers - "Add unicode art pictures for panning"
- The X Resize and Rotate Extension (Jim Gettys and Keith Packard, Usenix Technical Conference 2001)
- RandR 1.3 Explained, Demonstrated
- Overview of the GPU object implementation state
- XRandR project page at X.org
- The X Resize, Rotate and Reflect Extension
- Using xrandr to switch between displays