Casto koukam na filmy z notebooku, ke kteremu mam pripojene dva 24″ FullHD monitory. Monitory mam tesne vedle sebe, aby mi tvorily sirokou plochu. Pokud na jednom pustim na fullscreen film, druhy stale zobrazuje plochu a sviti. To je obzvlast v noci protivne. Proto jsem si napsal skript na softwarove vypnuti druheho monitoru.
Archiv rubriky: xrandr
Nastaveni vetsiho, nez nativniho rozliseni v Linuxu aneb FullHD na netbooku
Nedavno jsem byl nucen pracovat na netbooku Asus EEE 1005HA. Nejvetsi problem u techto stroju je v rozliseni displeje, ktere je 1024x600px. Pokud by bylo 1024×768, jeste by to slo. Vetsina aplikaci ho bere jako minimum. Kdyz mate 1024×600, hodne programu je nepouzitelnych – nezobrazi se spodek okna a tam jsou vetsinou ok/cancel tlacitka. Existuje castecne reseni, jak i na 1024×600 muzete mit FullHD.
Reseni spociva v programu xrandr. Ten umi milion veci, mi ho pouzijeme na nastaveni virtualniho rozliseni.
Nejdriv ze vseho si musime zjistit, co nas pocitac ma za monitory a kam jsou pripojene:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
martin@martin:~$ <strong>xrandr</strong> Screen 0: minimum 320 x 200, current 3286 x 1080, maximum 32767 x 32767 <strong>LVDS1</strong> connected 1366x768+1920+0 (normal left inverted right x axis y axis) 344mm x 193mm <strong>1366x768 60.0*+</strong> 1360x768 59.8 60.0 1024x768 60.0 800x600 60.3 56.2 640x480 59.9 <strong>VGA1</strong> disconnected (normal left inverted right x axis y axis) <strong>HDMI1</strong> connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 298mm <strong>1920x1080 60.0*+ 50.0 59.9 </strong> 1920x1080i 60.1 50.0 60.0 1680x1050 59.9 1600x900 60.0 1280x1024 75.0 60.0 1280x800 59.9 1152x864 75.0 1280x720 60.0 50.0 59.9 1440x576i 50.1 1024x768 75.1 60.0 1440x480i 60.1 60.1 832x624 74.6 800x600 75.0 60.3 720x576 50.0 720x480 60.0 59.9 640x480 75.0 60.0 59.9 720x400 70.1 DP1 disconnected (normal left inverted right x axis y axis) VIRTUAL1 disconnected (normal left inverted right x axis y axis) martin@martin:~$ |
Notebook ma svuj displej LVDS (aktualne 1366×768) a dale pak konektory VGA a HDMI, pricemz do HDMI je aktualne pripojeny FullHD monitor.
Dale budu ukazovat prikazy pro 1024×600 netbook:
timto prikazem obnovite vychozi nastaveni
1 |
$ xrandr --output LVDS1 --mode 1024x600 --panning 1024x600 --scale 1.0x1.0 |
1024×768 meritko:
1 |
$ xrandr --output LVDS1 --mode 1024x600 --panning 1024x768 --scale 1.0x1.28 |
1024×768 posouvani:
1 |
$ xrandr --output LVDS1 --mode 1024x600 --panning 1024x768 --scale 1.0x1.0 |
1366×768 meritko:
1 |
$ xrandr --output LVDS1 --mode 1024x600 --panning 1366x768 --scale 1.33x1.28 |
Jak se lisi merito a posouvani? Pokud pouzijeme rezim posouvani a na 1024×600 dame FUllHD (1920×1080), uvidime vzdy jen maly vyrez monitoru. Po najeti mysi ke kraji se obraz automaticky posune. Zobrazeni je tedy 1:1 – 1 zobrazeny pixel na 1 fyzicky pixel monitoru. Blbe to vypada a pouziva se, ale neboli oci.
Metoda meritko je imho zajimavejsi. Na 1024×600 se zobrazi plnych 1920×1080 (nebo cokoliv jineho). Pokud date velke rozliseni, bude obraz temer necitelny. Linux automaticky prepocita rozliseni a zobrazi ho. Klidne muzete mit 4K 😀
A jak se to pocita? Priklad na:
1 |
$ xrandr --output LVDS1 --mode 1024x600 --panning 1024x768 --scale 1.0x1.28 |
Mode je nativni rozliseni displeje: 1024×600
Panning je rozliseni, ktere chceme: 1024×768
Scale je prepocet a pocita se nasledovne: (1024 / 1024) a (768 / 600) tedy 1024panning / 1024mode a 768panning / 600mode
Pokud chcete pohodli, udelejte si ikony na plose. Soubor 1024x768_meritko.desktop:
1 2 3 4 5 6 7 |
[Desktop Entry] Type=Application Encoding=UTF-8 Name=1024x768 meritko Exec=xrandr --output LVDS1 --mode 1024x600 --panning 1024x768 --scale 1.0x1.28 Icon=/usr/share/icons/gnome/scalable/devices/video-display-symbolic.svg Terminal=false |
Zde davam vsechny sve ikony ke stazeni. Rozbalte je do adresere Plocha, nebo Desktop ve svem domovskem adresari a nastavte jim pravo pro spusteni.