xrandr - примитивный интерфейс командной строки для расширения RandR
СИНТАКСИС
xrandr [--help] [--display display] [-q] [-v] [--verbose] [--dryrun] [--screen snum] [--q1]
[--q12] [--current] [--noprimary] [--panning widthxheight[+x+y[/track_widthxtrack_height+track_x+track_y[/border_left/border_top/border_right/border_bottom]]]] [--scale
x[xy]] [--scale-from wxh] [--transform a,b,c,d,e,f,g,h,i] [--primary] [--prop] [--fb widthxheight] [--fbmm widthxheight] [--dpi dpi] [--dpi from-output] [--newmode name mode] [--rmmode
name] [--addmode output name] [--delmode output name] [--output output] [--auto] [--mode mode]
[--preferred] [--pos xxy] [--rate rate] [--reflect reflection] [--rotate orientation] [--left-of
output] [--right-of output] [--above output] [--below output] [--same-as output] [--set property
value] [--off] [--crtc crtc] [--gamma red[:green:blue]] [--brightness brightness] [-o orientation] [-s size] [-r rate] [-x] [-y] [--listproviders] [--setprovideroutputsource provider source]
[--setprovideroffloadsink provider sink] [--listmonitors] [--listactivemonitors] [--setmonitor
name geometry outputs] [--delmonitor name]
ОПИСАНИЕ
Xrandr используется для установки размера, ориентации и/или отражения выходов для экрана. Он также может устанавливать размер экрана.
Если он вызывается без каких-либо опций, он отображает состояние выходов, показывая существующие режимы для каждого из них, с символом '+' после предпочтительных режимов и символом '*' после текущего режима.
Существует несколько глобальных опций. Другие опции изменяют последний выход, указанный в более ранних параметрах в командной строке. Несколько выходов могут быть изменены одновременно путем передачи нескольких опций --output, за которыми сразу следуют соответствующие параметры изменения.
--help Выводит сводку об использовании и завершает работу.
-v, --version
Выводит версию RandR, сообщаемую сервером X, и завершает работу.
--verbose
Приводит к тому, что xrandr становится более многословным. При использовании с -q (или без других опций), xrandr будет отображать больше информации о состоянии сервера. Обратите внимание, что информация о гамме и яркости является лишь приближением полного цветового профиля, хранящегося в сервере. При использовании вместе с опциями, которые изменяют конфигурацию системы, прогресс будет отображаться во время выполнения изменений конфигурации.
-q, --query
Если этот параметр присутствует, или когда не запрошены изменения конфигурации, xrandr будет отображать текущее состояние системы.
--dryrun
Выполняет все указанные действия, за исключением того, что никакие изменения не вносятся.
--nograb
Применить изменения без захвата экрана. Это позволяет избежать блокировки других приложений во время обновления, но также может привести к тому, что некоторые приложения, обнаруживающие изменение размера экрана, будут получать старые значения.
-d, --display name
Эта опция выбирает X-дисплей для использования. Обратите внимание, что здесь речь идет об абстракции X-экрана, а не о мониторе (или выходном устройстве).
--screen snum
Эта опция выбирает, какой экран использовать. Обратите внимание, что здесь речь идет об абстракции X-экрана, а не о мониторе (или выходном устройстве).
--q1 Принудительно использовать протокол RandR версии 1.1, даже если доступна более поздняя версия.
--q12 Принудительно использовать протокол RandR версии 1.2, даже если дисплей не сообщает о его поддержке или доступна более поздняя версия.
Опции RandR версии 1.5
Опции для RandR 1.5 используются как надмножество опций для RandR 1.4.
--listmonitors
Отображает информацию обо всех определенных мониторах.
--listactivemonitors
Отображает информацию о текущих активных мониторах.
--setmonitor name geometry outputs
Определяет новый монитор с заданной геометрией и связывает его с заданными выходными устройствами. Список выходных устройств — либо ключевое слово none, либо список выходных устройств, разделенных запятыми. Геометрия — либо ключевое слово auto, в этом случае монитор будет автоматически отслеживать геометрию связанных выходных устройств, либо ручная спецификация в форме w/mmwxh/mmh+x+y, где w, h, x, y — это значения в пикселях, а mmw, mmh — физические размеры монитора.
--delmonitor name
Удаляет заданный монитор, определенный пользователем.
Опции RandR версии 1.4
Опции для RandR 1.4 используются как надмножество опций для RandR 1.3.
--listproviders
Отображает информацию о доступных поставщиках.
--setprovideroutputsource provider source
Устанавливает source в качестве источника выходных изображений для provider. Это возможно только в том случае, если source и provider имеют соответствующие возможности Source Output и Sink Output. Если source равен 0x0, то provider отключается от текущего выходного источника.
--setprovideroffloadsink provider sink
Устанавливает provider в качестве устройства для аппаратного рендеринга для sink. Это возможно только в том случае, если provider и sink имеют соответствующие возможности Source Offload и Sink Offload. Если sink равен 0x0, то provider отключается от текущего устройства аппаратного рендеринга.
Опции RandR версии 1.3
Опции для RandR 1.3 используются как надмножество опций для RandR 1.2.
--current
Возвращает текущую конфигурацию экрана без опроса оборудования на предмет изменений.
--noprimary
Не определяет основной выход.
Опции для отдельных выходных устройств
--panning widthxheight[+x+y[/track_widthxtrack_height+track_x+track_y[/border_left/border_top/border_right/border_bottom]]]
Эта опция задает параметры панорамирования. Как только панорамирование включено, положение CRTC может меняться с каждым перемещением указателя. Первые четыре параметра задают общую область панорамирования, следующие четыре — область отслеживания указателя (которая по умолчанию совпадает с общей областью). Последние четыре параметра задают границу и по умолчанию равны 0. Если ширина или высота установлены в ноль, панорамирование отключается по соответствующей оси. Обычно вам нужно одновременно установить размер экрана с помощью --fb.
--transform a,b,c,d,e,f,g,h,i
Задает матрицу преобразования, которая применяется к выходным данным. Автоматически выбирается билинейный фильтр, если параметр --filter также не указан. Математическая форма соответствует:
a b c
d e f
g h i
Преобразование основано на однородных координатах. Матрица, умноженная на вектор координат пикселя выходного изображения, дает преобразованный вектор координат пикселя в графическом буфере. Более точно, вектор (x y) выходного пикселя расширяется до 3 значений (x y w), где w — координата 1, и умножается на матрицу. Затем окончательные координаты устройства пикселя вычисляются с помощью так называемого гомогенного деления на преобразованную координату w. Другими словами, координаты устройства (x' y') преобразованного пикселя следующие:
x' = (ax + by + c) / w' и
y' = (dx + ey + f) / w',
где w' = (gx + hy + i).
Обычно a и e соответствуют масштабированию по осям X и Y, c и f соответствуют смещению по этим осям, а g, h и i соответственно равны 0, 0 и 1. Матрицу также можно использовать для выражения более сложных преобразований, таких как коррекция трапецеидальных искажений или поворот. Для поворота на угол T можно использовать следующую формулу:
cos T -sin T 0
sin T cos T 0
0 0 1
В качестве специального аргумента вместо передачи матрицы можно передать строку "none", в этом случае используются значения по умолчанию (единичная матрица без фильтра).
--filter filtermode
Выбирает метод фильтрации масштабирования, который применяется при масштабировании или преобразовании экрана. Может быть либо "bilinear", либо "nearest".
--scale x[xy]
Изменяет размеры выходного изображения. Если значение y опущено, значение x будет использоваться для обоих измерений. Значения, превышающие 1, приводят к сжатию экрана (размер экрана больше размера выходного режима), а значения, меньшие 1, приводят к увеличению. Этот параметр на самом деле является сокращенной версией параметра --transform.
--scale-from wxh
Указывает размер в пикселях области буфера кадров, которая будет отображаться на этом выходе. Этот параметр на самом деле является сокращенной версией параметра --transform.
--primary
Устанавливает выход в качестве основного. Он будет отсортирован первым в запросах Xinerama и RANDR на геометрию.
Параметры RandR версии 1.2
Эти параметры доступны только для X-сервера, поддерживающего RandR версии 1.2 или более поздней.
--prop, --properties
Этот параметр заставляет xrandr отображать содержимое свойств для каждого выхода. --verbose также включает --prop.
--fb widthxheight
Перенастраивает экран на указанный размер. Все настроенные мониторы должны помещаться в этот размер. Когда этот параметр не указан, xrandr вычисляет наименьший размер экрана, в котором поместится набор настроенных выходов; этот параметр предоставляет возможность изменить это поведение.
--fbmm widthxheight
Задает значение, которое сообщается как физический размер X-экрана в целом (объединение всех настроенных мониторов). В конфигурациях с несколькими мониторами с разными значениями DPI это значение не имеет физического смысла, но может использоваться некоторыми устаревшими клиентами, которые не поддерживают RandR версии 1.2, для вычисления масштабирования шрифтов. Обычно xrandr сбрасывает сообщаемые значения физического размера, чтобы поддерживать постоянный DPI. Эта опция переопределяет это вычисление.
Значение DPI по умолчанию — 96.
--dpi dpi
--dpi from-output
Это также задает значение, которое сообщается как физический размер X-экрана в целом (объединение всех настроенных мониторов). В конфигурациях с несколькими мониторами с разными значениями DPI это значение не имеет физического смысла, но может использоваться некоторыми устаревшими клиентами, которые не поддерживают RandR версии 1.2, для вычисления масштабирования шрифтов. Эта опция использует либо указанное значение DPI, либо DPI данного выхода для вычисления соответствующего физического размера с использованием установленного размера в пикселях. Типичные значения — значение по умолчанию (96 DPI), DPI единственного монитора в конфигурациях с одним монитором или DPI основного монитора в конфигурациях с несколькими мониторами.
--newmode name mode
Новые строки моделей могут быть добавлены в сервер, а затем связаны с выходами. Эта опция выполняет первое. Режим указывается с использованием синтаксиса ModeLine для xorg.conf: clock hdisp hsyncstart hsyncend htotal vdisp vsyncstart vsyncend vtotal flags. Флаги могут быть ноль или более из +HSync, -HSync, +VSync, -VSync, Interlace, DoubleScan, CSync, +CSync, -CSync. Несколько инструментов позволяют вычислить обычную строку модели из высоты, ширины и частоты обновления, например, вы можете использовать cvt.
--rmmode name
Эта опция удаляет режим из сервера, если он не используется.
--addmode output name
Добавляет режим в набор допустимых режимов для выхода.
--delmode output name
Удаляет режим из набора допустимых режимов для выхода.
Опции для отдельных выходов
--output output
Выбирает выход для перенастройки. Используйте либо имя выхода, либо XID.
--auto Для подключенных, но отключенных выходов, эта опция включит их, используя их предпочтительный режим (или что-то близкое к 96 DPI, если у них нет предпочтительного режима). Для отключенных, но включенных выходов эта опция отключит их.
--mode mode
Эта опция выбирает режим. Используйте либо имя, либо XID для режима.
--preferred
Эта опция выбирает тот же режим, что и --auto, но не включает и не отключает выход автоматически.
--pos xxy
Устанавливает положение выхода на экране с использованием координат в пикселях. В случае применения отражения или поворота преобразование применяется после этих эффектов.
--rate rate
Эта опция указывает предпочтение для частот обновления, близких к указанному значению. Когда несколько режимов имеют одно и то же имя, эта опция выберет тот, у которого ближайшая частота обновления.
--reflect reflection
Reflection может быть одним из значений: 'normal', 'x', 'y' или 'xy'. Это приводит к тому, что содержимое вывода отражается относительно указанных осей.
--rotate rotation
Rotation может быть одним из значений: 'normal', 'left', 'right' или 'inverted'. Это приводит к тому, что содержимое вывода поворачивается в указанном направлении. 'right' указывает на поворот изображения по часовой стрелке, а 'left' — против часовой стрелки.
--left-of, --right-of, --above, --below, --same-as another-output
Используйте один из этих параметров, чтобы указать положение вывода относительно положения другого вывода. Это позволяет удобно размещать выводы на экране. Положение всегда вычисляется относительно нового положения другого вывода, поэтому недопустимо указывать, например, --output a --left-of b --output b --left-of a.
--set property value
Устанавливает свойство вывода. Целочисленные свойства могут быть указаны в виде допустимого (см. --prop) списка десятичных или шестнадцатеричных (с префиксом 0x) значений, разделенных запятыми. Атомные свойства могут быть установлены на любое из допустимых атомов (см. --prop). Строковые свойства могут быть установлены на любое значение.
--off Отключает вывод.
--crtc crtc
Использует указанный CRTC (либо по индексу в списке CRTC, либо по XID). В обычном режиме этот параметр не требуется, так как xrandr пытается принимать разумные решения о том, какой CRTC использовать для каждого вывода. Если это не удается по какой-либо причине, этот параметр может переопределить обычный выбор.
--gamma red[:green:blue]
Устанавливает указанные значения с плавающей точкой в качестве коррекции гаммы для CRTC, к которому в данный момент подключен этот вывод. Если зеленый и синий не указаны, значение красного будет использоваться для всех трех компонентов. Обратите внимание, что вы не можете получить два разных значения для клонированных выводов (т. е. которые используют один и тот же CRTC), и переключение вывода на другой CRTC не изменяет коррекцию гаммы CRTC.
--brightness brightness
Умножает значения гаммы на CRTC, к которому в данный момент подключен вывод, на указанное значение с плавающей точкой. Это полезно для слишком ярких или слишком тусклых выводов. Однако это программная модификация, и если ваше оборудование поддерживает возможность фактического изменения яркости, вы, вероятно, предпочтете использовать xbacklight.
Параметры версии RandR 1.1
Эти параметры доступны для X-серверов, поддерживающих RandR версии 1.1 или более ранней. Они по-прежнему действительны для более новых X-серверов, но не взаимодействуют должным образом с параметрами версии 1.2 в одной и той же командной строке.
-s, --size size-index или --size widthxheight
Это устанавливает размер экрана, либо соответствует размеру, либо использует индекс в списке доступных размеров.
-r, --rate, --refresh rate
Это устанавливает частоту обновления, наиболее близкую к указанному значению.
-o, --orientation rotation
Это указывает ориентацию экрана и может быть одним из значений: normal, inverted, left или right.
-x Отражает изображение по оси X.
-y Отражает изображение по оси Y.
ПРИМЕРЫ
Устанавливает вывод с именем LVDS в предпочтительный режим и размещает вывод с именем VGA справа от него в предпочтительном режиме экрана, который был физически повернут по часовой стрелке: xrandr --output LVDS --auto --rotate normal --pos 0x0 --output VGA --auto --rotate left --right-of LVDS
Принудительно устанавливает режим 1024x768 для выходного устройства VGA: xrandr --newmode "1024x768" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync xrandr --addmode VGA 1024x768 xrandr --output VGA --mode 1024x768
Включает панорамирование на рабочем столе 1600x768, отображая режим 1024x768 на выходном устройстве VGA: xrandr --fb 1600x768 --output VGA --mode 1024x768 --panning 1600x0
Имеет небольшой экран LVDS размером 1280x800, отображающий уменьшенную версию большого рабочего стола 3200x2000, и большой экран VGA, отображающий область вокруг курсора мыши в обычном размере. xrandr --fb 3200x2000 --output LVDS --scale 2.5x2.5 --output VGA --pos 0x0 --panning 32002000+0+0/3200x2000+0+0/64/64/64/64
Отображает выход VGA в трапециевидной форме, чтобы обеспечить коррекцию перспективы, когда проектор находится немного выше экрана: xrandr --fb 1024x768 --output VGA --transform 1.24,0.16,-124,0,1.24,0,0,0.000316,1
ССЫЛКИ
Xrandr(3), cvt(1), xkeystone(1), xbacklight(1)
АВТОРЫ
Кит Пакард, Центр технологий с открытым исходным кодом, Intel Corporation, и Джим Геттис, Кембриджская исследовательская лаборатория, HP Labs, HP.