Zkuste tento formát pro fbset:
fbset -fb /dev/fb0 -g 1920 1200 1920 1200 16
A zkontrolujte, zda se opravdu díváte na fb0 a ne na fb1:
fbset -fb /dev/fb0
Znovu zkontrolujte, co bylo skutečně nastaveno:
cat /sys/class/graphics/fb0/mode
Zkuste také spustit fbi s (opět, abyste se ujistili, že používáte fb0):
fbi -d /dev/fb0 image.png
Můžete také vnutit svá nastavení do fb0 takto:
echo U:1920x1200p-0 > /sys/class/graphics/fb0/mode
Technicky to je to, co fbset stejně dělá. Jen se ujistěte, že fb1 věci nezkazí.
Nakonec se ujistěte, že vaše konzole používá fb0. Jsem si jistý, že ano.
con2fbmap 1
Můžete také chtít restartovat, takže zkontrolujte, jaké je vaše nastavení:
cat /proc/cmdline
Pokud to není 1920x1200, aktualizujte na 1920x200. Myslím, že se nachází v /boot/cmdline.txt pro raspberry pi. Pro mě je to /boot/uEnv.txt.
Mám dvoudílnou odpověď, která na Raspberry Pi dělá zázraky.
Za prvé, Pi má koncept overscan, což je černý okraj přidaný kolem celé obrazovky, aby zapadl do „trubice“ starších televizorů. A ano, je také potřeba u některých moderních plochých televizorů, které tuto funkci napodobují. Pokud je váš černý okraj kolem všech rozlišení obrazovky, změňte to. Nejjednodušší způsob je přes sudo raspi-config
. Možnosti a rozvržení se v různých verzích raspi-config
liší ale můžete začít tím, že se podíváte do Advanced Options
menu pro Overscan
. Pokud je vaším problémem overscan, ale chcete jemnější kontrolu nad velikostí černého okraje – pak existuje způsob, jak jej doladit v /boot/config.txt. Nebudu to zde rozebírat a je snadné vyhledat, jak tento soubor vyladit.
Pokud to není váš problém a hledáte lepší rozlišení, které můžete nastavit pro svůj televizor/monitor, můžete také použít raspi-config
pro výběr ze všech platných rozlišení obrazovky. Jsou ve stejném Advanced Options
menu jako bylo přeskenováno.
Pokud potřebujete zkontrolovat a nastavit rozlišení programově, pak je pro to hlavním nástrojem tvservice
. Pro program neexistuje žádná manuálová stránka, ale jeho spuštění bez argumentů poskytuje určitou pomoc. Existují velmi zajímavé schopnosti, které jdou daleko za hranice fbset
umí.
Několik krátkých příkladů:
$ sudo tvservice --status
state 0x120009 [HDMI CEA (16) RGB lim 16:9], 1920x1080 @ 60.00Hz, progressive
$
$ sudo tvservice --modes=CEA
Group CEA has 11 modes:
mode 1: 640x480 @ 60Hz 4:3, clock:25MHz progressive
mode 2: 720x480 @ 60Hz 4:3, clock:27MHz progressive
mode 3: 720x480 @ 60Hz 16:9, clock:27MHz progressive
mode 4: 1280x720 @ 60Hz 16:9, clock:74MHz progressive
(prefer) mode 16: 1920x1080 @ 60Hz 16:9, clock:148MHz progressive
mode 17: 720x576 @ 50Hz 4:3, clock:27MHz progressive
mode 18: 720x576 @ 50Hz 16:9, clock:27MHz progressive
mode 19: 1280x720 @ 50Hz 16:9, clock:74MHz progressive
mode 31: 1920x1080 @ 50Hz 16:9, clock:148MHz progressive
mode 32: 1920x1080 @ 24Hz 16:9, clock:74MHz progressive
mode 34: 1920x1080 @ 30Hz 16:9, clock:74MHz progressive
Můžete se podívat, jaké režimy televizor podporuje, a pro úplnost byste měli vyhledat skupiny DMT a CEA, abyste vše zachytili. Režimy DMT jsou více přizpůsobeny počítačovým monitorům než televizorům.
Potom váš program může vybrat z tohoto seznamu a použít tvservice -e
pro nastavení jednoho z těchto režimů.