1XRANDR(1) General Commands Manual XRANDR(1)
2
3
4
6 xrandr - primitive command line interface to RandR extension
7
9 xrandr [--help] [--display display] [-q] [-v] [--verbose] [--dryrun]
10 [--screen snum] [--q1] [--q12] [--current] [--noprimary] [--panning
11 widthxheight[+x+y[/track_widthxtrack_height+track_x+track_y[/bor‐
12 der_left/border_top/border_right/border_bottom]]]] [--scale x[xy]]
13 [--scale-from wxh] [--transform a,b,c,d,e,f,g,h,i] [--primary] [--prop]
14 [--fb widthxheight] [--fbmm widthxheight] [--dpi dpi] [--dpi from-out‐
15 put] [--newmode name mode] [--rmmode name] [--addmode output name]
16 [--delmode output name] [--output output] [--auto] [--mode mode]
17 [--preferred] [--pos xxy] [--rate rate] [--reflect reflection] [--ro‐
18 tate orientation] [--left-of output] [--right-of output] [--above out‐
19 put] [--below output] [--same-as output] [--set property value] [--off]
20 [--crtc crtc] [--gamma red[:green:blue]] [--brightness brightness] [-o
21 orientation] [-s size] [-r rate] [-x] [-y] [--listproviders] [--set‐
22 provideroutputsource provider source] [--setprovideroffloadsink
23 provider sink] [--listmonitors] [--listactivemonitors] [--setmonitor
24 name geometry outputs] [--delmonitor name]
25
27 Xrandr is used to set the size, orientation and/or reflection of the
28 outputs for a screen. It can also set the screen size.
29
30 If invoked without any option, it will dump the state of the outputs,
31 showing the existing modes for each of them, with a '+' after the pre‐
32 ferred modes and a '*' after the current mode.
33
34 There are a few global options. Other options modify the last output
35 that is specified in earlier parameters in the command line. Multiple
36 outputs may be modified at the same time by passing multiple --output
37 options followed immediately by their corresponding modifying options.
38
39 --help Print out a summary of the usage and exit.
40
41 -v, --version
42 Print out the RandR version reported by the X server and exit.
43
44 --verbose
45 Causes xrandr to be more verbose. When used with -q (or without
46 other options), xrandr will display more information about the
47 server state. Please note that the gamma and brightness informa‐
48 tion are only approximations of the complete color profile
49 stored in the server. When used along with options that recon‐
50 figure the system, progress will be reported while executing the
51 configuration changes.
52
53 -q, --query
54 When this option is present, or when no configuration changes
55 are requested, xrandr will display the current state of the sys‐
56 tem.
57
58 --dryrun
59 Performs all the actions specified except that no changes are
60 made.
61
62 --nograb
63 Apply the modifications without grabbing the screen. It avoids
64 to block other applications during the update but it might also
65 cause some applications that detect screen resize to receive old
66 values.
67
68 -d, --display name
69 This option selects the X display to use. Note this refers to
70 the X screen abstraction, not the monitor (or output).
71
72 --screen snum
73 This option selects which screen to manipulate. Note this refers
74 to the X screen abstraction, not the monitor (or output).
75
76 --q1 Forces the usage of the RandR version 1.1 protocol, even if a
77 higher version is available.
78
79 --q12 Forces the usage of the RandR version 1.2 protocol, even if the
80 display does not report it as supported or a higher version is
81 available.
82
84 Options for RandR 1.5 are used as a superset of the options for RandR
85 1.4.
86
87 --listmonitors
88 Report information about all defined monitors.
89
90 --listactivemonitors
91 Report information about currently active monitors.
92
93 --setmonitor name geometry outputs
94 Define a new monitor with the given geometry and associated to
95 the given outputs. The output list is either the keyword none
96 or a comma-separated list of outputs. The geometry is either
97 the keyword auto, in which case the monitor will automatically
98 track the geometry of the associated outputs, or a manual speci‐
99 fication in the form w/mmwxh/mmh+x+y where w, h, x, y are in
100 pixels and mmw, mmh are the physical dimensions of the monitor.
101
102 --delmonitor name
103 Delete the given user-defined monitor.
104
106 Options for RandR 1.4 are used as a superset of the options for RandR
107 1.3.
108
109 --listproviders
110 Report information about the providers available.
111
112 --setprovideroutputsource provider source
113 Set source as the source of display output images for provider.
114 This is only possible if source and provider have the Source
115 Output and Sink Output capabilities, respectively. If source is
116 0x0, then provider is disconnected from its current output
117 source.
118
119 --setprovideroffloadsink provider sink
120 Set provider as a render offload device for sink. This is only
121 possible if provider and sink have the Source Offload and Sink
122 Offload capabilities, respectively. If sink is 0x0, then
123 provider is disconnected from its current render offload sink.
124
126 Options for RandR 1.3 are used as a superset of the options for RandR
127 1.2.
128
129 --current
130 Return the current screen configuration, without polling for
131 hardware changes.
132
133 --noprimary
134 Don't define a primary output.
135
136 Per-output options
137
138 --panning widthxheight[+x+y[/track_widthx‐
139 track_height+track_x+track_y[/border_left/border_top/border_right/bor‐
140 der_bottom]]]
141 This option sets the panning parameters. As soon as panning is
142 enabled, the CRTC position can change with every pointer move.
143 The first four parameters specify the total panning area, the
144 next four the pointer tracking area (which defaults to the same
145 area). The last four parameters specify the border and default
146 to 0. A width or height set to zero disables panning on the ac‐
147 cording axis. You typically have to set the screen size with
148 --fb simultaneously.
149
150 --transform a,b,c,d,e,f,g,h,i
151 Specifies a transformation matrix to apply on the output. A bi‐
152 linear filter is selected automatically unless the --filter pa‐
153 rameter is also specified. The mathematical form corresponds
154 to:
155 a b c
156 d e f
157 g h i
158 The transformation is based on homogeneous coordinates. The ma‐
159 trix multiplied by the coordinate vector of a pixel of the out‐
160 put gives the transformed coordinate vector of a pixel in the
161 graphic buffer. More precisely, the vector (x y) of the output
162 pixel is extended to 3 values (x y w), with 1 as the w coordi‐
163 nate and multiplied against the matrix. The final device coordi‐
164 nates of the pixel are then calculated with the so-called ho‐
165 mogenic division by the transformed w coordinate. In other
166 words, the device coordinates (x' y') of the transformed pixel
167 are:
168 x' = (ax + by + c) / w' and
169 y' = (dx + ey + f) / w' ,
170 with w' = (gx + hy + i) .
171 Typically, a and e corresponds to the scaling on the X and Y
172 axes, c and f corresponds to the translation on those axes, and
173 g, h, and i are respectively 0, 0 and 1. The matrix can also be
174 used to express more complex transformations such as keystone
175 correction, or rotation. For a rotation of an angle T, this
176 formula can be used:
177 cos T -sin T 0
178 sin T cos T 0
179 0 0 1
180 As a special argument, instead of passing a matrix, one can pass
181 the string none, in which case the default values are used (a
182 unit matrix without filter).
183
184 --filter filtermode
185 Chooses the scaling filter method to be applied when the screen
186 is scaled or transformed. Can be either 'bilinear' or 'near‐
187 est'.
188
189 --scale x[xy]
190 Changes the dimensions of the output picture. If the y value is
191 omitted, the x value will be used for both dimensions. Values
192 larger than 1 lead to a compressed screen (screen dimension big‐
193 ger than the dimension of the output mode), and values less than
194 1 lead to a zoom in on the output. This option is actually a
195 shortcut version of the --transform option.
196
197 --scale-from wxh
198 Specifies the size in pixels of the area of the framebuffer to
199 be displayed on this output. This option is actually a shortcut
200 version of the --transform option.
201
202 --primary
203 Set the output as primary. It will be sorted first in Xinerama
204 and RANDR geometry requests.
205
207 These options are only available for X server supporting RandR version
208 1.2 or newer.
209
210 --prop, --properties
211 This option causes xrandr to display the contents of properties
212 for each output. --verbose also enables --prop.
213
214 --fb widthxheight
215 Reconfigures the screen to the specified size. All configured
216 monitors must fit within this size. When this option is not pro‐
217 vided, xrandr computes the smallest screen size that will hold
218 the set of configured outputs; this option provides a way to
219 override that behaviour.
220
221 --fbmm widthxheight
222 Sets the value reported as physical size of the X screen as a
223 whole (union of all configured monitors). In configurations with
224 multiple monitors with different DPIs, the value has no physical
225 meaning, but it may be used by some legacy clients which do not
226 support RandR version 1.2 to compute a reference font scaling.
227 Normally, xrandr resets the reported physical size values to
228 keep the DPI constant. This overrides that computation. Default
229 DPI value is 96.
230
231 --dpi dpi
232
233 --dpi from-output
234 This also sets the value reported as physical size of the X
235 screen as a whole (union of all configured monitors). In config‐
236 urations with multiple monitors with different DPIs, the value
237 has no physical meaning, but it may be used by some legacy
238 clients which do not support RandR version 1.2 to compute a ref‐
239 erence font scaling. This option uses either the specified DPI
240 value, or the DPI of the given output, to compute an appropriate
241 physical size using whatever pixel size will be set. Typical
242 values are the default (96 DPI), the DPI of the only monitor in
243 single-monitor configurations, or the DPI of the primary monitor
244 in multi-monitor configurations.
245
246 --newmode name mode
247 New modelines can be added to the server and then associated
248 with outputs. This option does the former. The mode is speci‐
249 fied using the ModeLine syntax for xorg.conf: clock hdisp hsync‐
250 start hsyncend htotal vdisp vsyncstart vsyncend vtotal flags.
251 flags can be zero or more of +HSync, -HSync, +VSync, -VSync, In‐
252 terlace, DoubleScan, CSync, +CSync, -CSync. Several tools permit
253 to compute the usual modeline from a height, width, and refresh
254 rate, for instance you can use cvt.
255
256 --rmmode name
257 This removes a mode from the server if it is otherwise unused.
258
259 --addmode output name
260 Add a mode to the set of valid modes for an output.
261
262 --delmode output name
263 Remove a mode from the set of valid modes for an output.
264
265 Per-output options
266
267 --output output
268 Selects an output to reconfigure. Use either the name of the
269 output or the XID.
270
271 --auto For connected but disabled outputs, this will enable them using
272 their first preferred mode (or, something close to 96dpi if they
273 have no preferred mode). For disconnected but enabled outputs,
274 this will disable them.
275
276 --mode mode
277 This selects a mode. Use either the name or the XID for mode
278
279 --preferred
280 This selects the same mode as --auto, but it doesn't automati‐
281 cally enable or disable the output.
282
283 --pos xxy
284 Position the output within the screen using pixel coordinates.
285 In case reflection or rotation is applied, the translation is
286 applied after the effects.
287
288 --rate rate
289 This marks a preference for refresh rates close to the specified
290 value, when multiple modes have the same name, this will select
291 the one with the nearest refresh rate.
292
293 --reflect reflection
294 Reflection can be one of 'normal' 'x', 'y' or 'xy'. This causes
295 the output contents to be reflected across the specified axes.
296
297 --rotate rotation
298 Rotation can be one of 'normal', 'left', 'right' or 'inverted'.
299 This causes the output contents to be rotated in the specified
300 direction. 'right' specifies a clockwise rotation of the picture
301 and 'left' specifies a counter-clockwise rotation.
302
303 --left-of, --right-of, --above, --below, --same-as another-output
304 Use one of these options to position the output relative to the
305 position of another output. This allows convenient tiling of
306 outputs within the screen. The position is always computed rel‐
307 ative to the new position of the other output, so it is not
308 valid to say --output a --left-of b --output b --left-of a.
309
310 --set property value
311 Sets an output property. Integer properties may be specified as
312 a valid (see --prop) comma-separated list of decimal or hexadec‐
313 imal (with a leading 0x) values. Atom properties may be set to
314 any of the valid atoms (see --prop). String properties may be
315 set to any value.
316
317 --off Disables the output.
318
319 --crtc crtc
320 Uses the specified crtc (either as an index in the list of CRTCs
321 or XID). In normal usage, this option is not required as xrandr
322 tries to make sensible choices about which crtc to use with each
323 output. When that fails for some reason, this option can over‐
324 ride the normal selection.
325
326 --gamma red[:green:blue]
327 Set the specified floating point values as gamma correction on
328 the crtc currently attached to this output. If green and blue
329 are not specified, the red value will be used for all three com‐
330 ponents. Note that you cannot get two different values for
331 cloned outputs (i.e.: which share the same crtc) and that
332 switching an output to another crtc doesn't change the crtc
333 gamma corrections at all.
334
335 --brightness brightness
336 Multiply the gamma values on the crtc currently attached to the
337 output to specified floating value. Useful for overly bright or
338 overly dim outputs. However, this is a software only modifica‐
339 tion, if your hardware has support to actually change the
340 brightness, you will probably prefer to use xbacklight.
341
343 These options are available for X servers supporting RandR version 1.1
344 or older. They are still valid for newer X servers, but they don't in‐
345 teract sensibly with version 1.2 options on the same command line.
346
347 -s, --size size-index or --size widthxheight
348 This sets the screen size, either matching by size or using the
349 index into the list of available sizes.
350
351 -r, --rate, --refresh rate
352 This sets the refresh rate closest to the specified value.
353
354 -o, --orientation rotation
355 This specifies the orientation of the screen, and can be one of
356 normal, inverted, left or right.
357
358 -x Reflect across the X axis.
359
360 -y Reflect across the Y axis.
361
363 Sets an output called LVDS to its preferred mode, and on its right put
364 an output called VGA to preferred mode of a screen which has been phys‐
365 ically rotated clockwise:
366 xrandr --output LVDS --auto --rotate normal --pos 0x0 --output
367 VGA --auto --rotate left --right-of LVDS
368
369 Forces to use a 1024x768 mode on an output called VGA:
370 xrandr --newmode "1024x768" 63.50 1024 1072 1176 1328 768 771
371 775 798 -hsync +vsync
372 xrandr --addmode VGA 1024x768
373 xrandr --output VGA --mode 1024x768
374
375 Enables panning on a 1600x768 desktop while displaying 1024x768 mode on
376 an output called VGA:
377 xrandr --fb 1600x768 --output VGA --mode 1024x768 --panning
378 1600x0
379
380 Have one small 1280x800 LVDS screen showing a small version of a huge
381 3200x2000 desktop, and have a big VGA screen display the surrounding of
382 the mouse at normal size.
383 xrandr --fb 3200x2000 --output LVDS --scale 2.5x2.5 --output VGA
384 --pos 0x0 --panning 3200x2000+0+0/3200x2000+0+0/64/64/64/64
385
386 Displays the VGA output in trapezoid shape so that it is keystone cor‐
387 rected when the projector is slightly above the screen:
388 xrandr --fb 1024x768 --output VGA --transform
389 1.24,0.16,-124,0,1.24,0,0,0.000316,1
390
392 Xrandr(3), cvt(1), xkeystone(1), xbacklight(1)
393
395 Keith Packard, Open Source Technology Center, Intel Corporation. and
396 Jim Gettys, Cambridge Research Laboratory, HP Labs, HP.
397
398
399
400X Version 11 xrandr 1.5.2 XRANDR(1)