Espelhe monitores duplos com diferentes resoluções

21

Eu uso o seguinte comando xrandr para espelhar meu laptop de 17 "com um externo de 27"  monitor, para que eu possa usá-lo para fazer apresentações:

xrandr --output LVDS1 --mode 1600x900 --output HDMI1 --mode 1920x1080 --same-as LVDS1

No entanto, o monitor externo (HDMI1) volta para uma resolução de 1600x900 em vez de 1920x1080.

saída xrandr:

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
LVDS1 connected primary (normal left inverted right x axis y axis
   1600x900       60.0 +
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
   1920x1080      60.0*+
   1680x1050      59.9  
   1280x1024      75.0     60.0  
   1440x900       75.0     59.9  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
DP1 disconnected (normal left inverted right x axis y axis)
    
por milarepa 17.11.2013 / 11:20

5 respostas

8

Se você não se importar em fazer um pan em laptop, tente isto:

xrandr --output LVDS1 --rate 60 --mode 1920x1080 --fb 1920x1080 --panning 1920x1080* --output HDMI1 --mode 1920x1080 --same-as LVDS1
    
por 15.07.2015 / 17:26
4

Parece que xrandr não é muito bom ao manipular monitores duplos na configuração --same-as , quando os monitores não têm a mesma resolução. De volta à resolução comum mais alta de ambos os monitores (essa resolução pode não ser satisfatória ou talvez nem exista), uma solução alternativa é usar a opção --scale . Se você quiser [monitor 1] com resolução [resx1]x[resy1] e [monitor 2] com resolução [resx2]x[resy2] , você pode usar por exemplo

xrandr --output [monitor 1] --mode [resx1]x[resy1] --output [monitor 2] --same-as [monitor 1] --scale 'echo "[resx1]/[resx2]" | bc -l'x'echo "[resy1]/[resy2]" | bc -l'

em que 'echo "[res*1]/[res*2]" | bc -l' computa as proporções desejadas. Não garantindo qualidade perfeita; Além disso, tenha em mente que a qualidade das resoluções definidas acima é limitada pela resolução de [monitor 1] .

    
por 15.12.2015 / 09:29
4
xrandr --fb 1920x1080 --output LVDS1 --mode 1600x900 --scale-from 1920x1080 --output HDMI1 --mode 1920x1080 --scale 1x1 --same-as LVDS1

ou você pode fazer isso de outra maneira para usar a resolução de LVDS1 como resolução básica, mas você tem qualidade inferior em HDMI1.

    
por 19.02.2016 / 01:09
2

Definir a resolução é o que faz a fonte xrandr se você especificar o --same-as relação:

case relation_same_as:
    output->x = relation->x;
    output->y = relation->y;

você já tentou:

xrandr --output HDMI1 --mode 1920x1080 --output LSVD1 --mode 1600x900 --same-as HDMI1

?

    
por 17.11.2013 / 11:54
2

use a opção xrandr --scale-from ... .

xrandr --output LVDS1 --scale-from 1920x1080 reduzirá a imagem de alta resolução do monitor externo (HDMI1) para o monitor de laptop LVDS1 de resolução mais baixa.

    
por 26.06.2016 / 12:11

Tags