簡単に解像度を変更
ラズパイで遊ぶのにどんなモニターを使おうかな
普通にラズパイを使う場合、モニターはなにしたらよいかしら。
ネットとかYoutube用途だったらテレビでもOKにゃ。プログラミングとか電子工作だったら近くで見やすいのほしいにゃねー。小さすぎるのは見た目いいけどきびしいにゃよ。
小さすぎるってどれぐらいかな
番長の購入したモニター
ちっさ!!
これはGPIOに挿すタイプだけど、延長されてGPIOがちゃんと使えるから用途によってはすごく良いんだけどにゃ。実際は10インチ以上の大きさは欲しいにゃねー。
番長の購入したモニター
どちらも10インチ、解像度1920×1200、1280×800のモニターにゃ。他にも13インチ、8インチといろいろamazonで買って試してるにゃけど、結局スーパーワイドモニターを分割という方法で番長は現在落ち着いてるにゃ。
PBPという機能で画面2分割で使ったりしてるにゃよ。もちろん片方にX68000Zやゲーム機も映せるから便利便利!
そのモニターの解像度はいくつなの?
3440×1440の二分割。1720×1440ってことになるにゃ。
このモニターの半分の状態は1720×1440なのね。さっき紹介した10インチのモニターは 1980×1200 と1280×800。全部普通のテレビのサイズのフルHD1920×1080より比率的に縦が長いね。
縦が長いモニターはゲーム機をつなげると上下に黒線がはいっちゃうけど、ラズパイではプログラミングには最適にゃよ!プログラムコードを多く表示できるからにゃ。
そっか、おっけー! ちょっと1920×1200のモニター繋いでみよう。
少し前とちがって解像度の変更が簡単になりましたー!
あれ。1920×1200のモニターをラズパイに繋いで起動すると上下に黒帯が入った状態になるよ。モニターのメーカーにもよるのかな? 1920×1080になってるみたい。 折角だから解像度を1920×1200に変更したいな。どうすればいいのかしら?
解像度の変更は、スタートメニューからScreen Configurationを起動にゃ!
ここで選べるにゃ!
ここでリフレッシュレートが選べるにゃ。1秒間に何回描画するかという設定にゃね。
ケーブル挿さずにラズパイを起動した場合に有効な解像度設定はここにゃ!
あれ?解像度一覧に1280×800 と1720×1440 が無いね。
1280×800はモニター繋いだらもしからしてこの一覧に出てくるかもにゃ。でも、1720×1440は無理にゃね。このScreen Configuration以外にも解像度を変える方法があるにゃよ。そっちも紹介するにゃ。
config.txtで解像度を変更
設定の意味と用語を調べてみる
なんだかモニターの用語が多くてよくわからないこと多いよね。
ねこっぴも番長もさっぱりにゃ。ラズパイの公式説明書ページにconfig.txt の説明があるから、モニターと解像度に必要と思われる部分を抜き出して調べていくにゃよ。
hdmi_force_hotplug=1 だタイガ。
タイガさんちーっす。hdmi_force_hotplug=1 は HDMIで出力するか、ブラウン管とかコンポジットで出力するか設定みたい。これを記述してないとHDMIケーブルが挿さってない時はコンポジット出力設定になってしまうとのことです。
一時期ブラウン管にラズパイを繋いで、Youtubeの古いCMとかかけっぱで流し見してたにゃ。ラズパイでブラウン管アリにゃよ。
ブラウン管は味があるねー。
framebuffer_width=xxx
framebuffer_height=xxx だタイガ。
フレームバッファとは コンピュータ内部で一画面分の表示内容を丸ごと記憶しておくことができるメモリ領域やメモリ装置のこと。(IT用語辞典)
フレームバッファとは UNIXでは全ての入出力装置(デバイス)は特殊なファイルとして実装されています。フレームバッファー framebuffer とは画像入出力のデバイスです。画像の出力が行え、現在表示中の画面のスクリーンショットが撮れます。OSC2019_Fukuoka_Netpbm.pdf
hdmi_group=x だタイガ。
ラズパイの公式だと hdmi_group=1 (CEA)、hdmi_group=2 (DMT)とあるにゃ。いろんなサイトによく CEAはテレビ用とあるけど、詳しく調べてみたにゃ。
CEA-861 CEA(Consumer Electronics Association:全米家電協会)が策定していた「A DTV Profile for Uncompressed High Speed Digital Interfaces(非圧縮高速デジタル通信インターフェースにおけるデジタルテレビのプロファイル)」の規格です。簡単に説明するとデジタルテレビの仕様を定めた規格書です。2015年11月にCEAはCTA(Consumer Technology Association:全米民生技術協会)へ名称を変更しました。この変更に伴い「CEA-861」は「CTA-861」となり、不定期に更新されています。
HDMI-NAVI.com
そういえばゲーム機にD端子とかついてたもんにゃ。映像音響メーカーさんの製品の説明にCEA-861D規格に準拠した720x480p(D2) 、1,280x720p(D4)、1,920×1,080i/p(D3,D5)相当のHDMI互換映像も指定可とか書いてあるの見つけたし、改めてラズパイ説明サイトの hdmi_group=1 の表見ると4:3と16:9しかないにゃ。なるほど。TVにゃ。
DMT [DMT] (独立モニタ タイミング) はあらかじめ定義された VESA タイミングのセットです。VESA はこの基準を毎年更新しています。(nvidia.com)
hdmi_group=2 (DMT) がPCモニタと思っていいみたいにゃね。
hdmi_mode=x だタイガ。
変更したい解像度の一覧の番号だにゃ。ラズパイの公式説明書ページからgroup1 と group2 を抜いて下の方に貼り付けたにゃよ。
config.txt を管理者権限で開く
ではconfig.txtを変更する準備ですよー
管理権限ファイラーをメニュー登録 の回で作ったショートカットで 管理者権限でファイルマネージャーを起動にゃ。
boot フォルダの中のconfig.txt を コピーしとくにゃ。なんかあったらこれを元に戻せば復帰できるからにゃ。
config.txt を 右クリックしてMousepadで開くにゃ。
windows からでもOK。MicroSDカードをUSBアダプタで接続。
config.txt を 開くにゃ。コピーとっとくの忘れないでにゃ。
一覧表に変更したい解像度がある場合
では一覧表に変更したい解像度がある場合の変更方法にゃ。PCモニタの場合はhdmi_group=2、テレビに接続の場合はhdmi_group=1から選ぶのがいいのかにゃ。テレビ接続したことないにゃ….。
hdmi_force_hotplug=1 ※0 コンポジット / 1 HDMI
framebuffer_width=1280 ※横の解像度
framebuffer_height=800 ※縦の解像度
hdmi_group=2 ※PCのモニタの場合は2
hdmi_mode=28 ※本ページ下の方のリスト2から選択
sambaの時のように、テキストの一番下にコピーして貼り付けて上書きね!
#-----------------------------------------
hdmi_force_hotplug=1
framebuffer_width=1280
framebuffer_height=800
hdmi_group=2
hdmi_mode=28
これで再起動すれば解像度が変わって……
再起動完了! かわってませんけどーーー!!
あわてずさわがず Screen Configurationを起動!
みっけ! 無事変更完了!
リストの下に次の項目だタイガ
一覧表に変更したい解像度が無い場合
スクロールしてリストをすっとばすタイガ
hdmi_group= 2 のリスト
1 640x350 85Hz
2 640x400 85Hz 16:10:00
3 720x400 85Hz
4 640x480 60Hz 4:03:00
5 640x480 72Hz 4:03:00
6 640x480 75Hz 4:03:00
7 640x480 85Hz 4:03:00
8 800x600 56Hz 4:03:00
9 800x600 60Hz 4:03:00
10 800x600 72Hz 4:03:00
11 800x600 75Hz 4:03:00
12 800x600 85Hz 4:03:00
13 800x600 120Hz 4:03:00
14 848x480 60Hz 16:09:00
15 1024x768 43Hz 4:03:00 incompatible with the Raspberry Pi
16 1024x768 60Hz 4:03:00
17 1024x768 70Hz 4:03:00
18 1024x768 75Hz 4:03:00
19 1024x768 85Hz 4:03:00
20 1024x768 120Hz 4:03:00
21 1152x864 75Hz 4:03:00
22 1280x768 60Hz 15:09:00 reduced blanking
23 1280x768 60Hz 15:09:00
24 1280x768 75Hz 15:09:00
25 1280x768 85Hz 15:09:00
26 1280x768 120Hz 15:09:00 reduced blanking
27 1280x800 60 16:10:00 reduced blanking
28 1280x800 60Hz 16:10:00
29 1280x800 75Hz 16:10:00
30 1280x800 85Hz 16:10:00
31 1280x800 120Hz 16:10:00 reduced blanking
32 1280x960 60Hz 4:03:00
33 1280x960 85Hz 4:03:00
34 1280x960 120Hz 4:03:00 reduced blanking
35 1280x1024 60Hz 5:04:00
36 1280x1024 75Hz 5:04:00
37 1280x1024 85Hz 5:04:00
38 1280x1024 120Hz 5:04:00 reduced blanking
39 1360x768 60Hz 16:09:00
40 1360x768 120Hz 16:09:00 reduced blanking
41 1400x1050 60Hz 4:03:00 reduced blanking
42 1400x1050 60Hz 4:03:00
43 1400x1050 75Hz 4:03:00
44 1400x1050 85Hz 4:03:00
45 1400x1050 120Hz 4:03:00 reduced blanking
46 1440x900 60Hz 16:10:00 reduced blanking
47 1440x900 60Hz 16:10:00
48 1440x900 75Hz 16:10:00
49 1440x900 85Hz 16:10:00
50 1440x900 120Hz 16:10:00 reduced blanking
51 1600x1200 60Hz 4:03:00
52 1600x1200 65Hz 4:03:00
53 1600x1200 70Hz 4:03:00
54 1600x1200 75Hz 4:03:00
55 1600x1200 85Hz 4:03:00
56 1600x1200 120Hz 4:03:00 reduced blanking
57 1680x1050 60Hz 16:10:00 reduced blanking
58 1680x1050 60Hz 16:10:00
59 1680x1050 75Hz 16:10:00
60 1680x1050 85Hz 16:10:00
61 1680x1050 120Hz 16:10:00 reduced blanking
62 1792x1344 60Hz 4:03:00
63 1792x1344 75Hz 4:03:00
64 1792x1344 120Hz 4:03:00 reduced blanking
65 1856x1392 60Hz 4:03:00
66 1856x1392 75Hz 4:03:00
67 1856x1392 120Hz 4:03:00 reduced blanking
68 1920x1200 60Hz 16:10:00 reduced blanking
69 1920x1200 60Hz 16:10:00
70 1920x1200 75Hz 16:10:00
71 1920x1200 85Hz 16:10:00
72 1920x1200 120Hz 16:10:00 reduced blanking
73 1920x1440 60Hz 4:03:00
74 1920x1440 75Hz 4:03:00
75 1920x1440 120Hz 4:03:00 reduced blanking
76 2560x1600 60Hz 16:10:00 reduced blanking
77 2560x1600 60Hz 16:10:00
78 2560x1600 75Hz 16:10:00
79 2560x1600 85Hz 16:10:00
80 2560x1600 120Hz 16:10:00 reduced blanking
81 1366x768 60Hz 16:09:00 NOT on Raspberry Pi 4
82 1920x1080 60Hz 16:09:00 1080p
83 1600x900 60Hz 16:09:00 reduced blanking
84 2048x1152 60Hz 16:09:00 reduced blanking
85 1280x720 60Hz 16:09:00 720p
86 1366x768 60Hz 16:09:00 reduced blanking
reduced blanking = ブラウン管時代に使っていた走査線の往復タイミングの戻り側をなくして効率を上げた方法で、映像信号の周波数を下げることができる技術です。(ITmedia)
hdmi_group= 1 のリスト
1 VGA (640x480) 60Hz 4:3
2 480p 60Hz 4:3
3 480p 60Hz 16:9
4 720p 60Hz 16:9
5 1080i 60Hz 16:9
6 480i 60Hz 4:3
7 480i 60Hz 16:9
8 240p 60Hz 4:3
9 240p 60Hz 16:9
10 480i 60Hz 4:3 pixel quadrupling
11 480i 60Hz 16:9 pixel quadrupling
12 240p 60Hz 4:3 pixel quadrupling
13 240p 60Hz 16:9 pixel quadrupling
14 480p 60Hz 4:3 pixel doubling
15 480p 60Hz 16:9 pixel doubling
16 1080p 60Hz 16:9
17 576p 50Hz 4:3
18 576p 50Hz 16:9
19 720p 50Hz 16:9
20 1080i 50Hz 16:9
21 576i 50Hz 4:3
22 576i 50Hz 16:9
23 288p 50Hz 4:3
24 288p 50Hz 16:9
25 576i 50Hz 4:3 pixel quadrupling
26 576i 50Hz 16:9 pixel quadrupling
27 288p 50Hz 4:3 pixel quadrupling
28 288p 50Hz 16:9 pixel quadrupling
29 576p 50Hz 4:3 pixel doubling
30 576p 50Hz 16:9 pixel doubling
31 1080p 50Hz 16:9
32 1080p 24Hz 16:9
33 1080p 25Hz 16:9
34 1080p 30Hz 16:9
35 480p 60Hz 4:3 pixel quadrupling
36 480p 60Hz 16:9 pixel quadrupling
37 576p 50Hz 4:3 pixel quadrupling
38 576p 50Hz 16:9 pixel quadrupling
39 1080i 50Hz 16:9 reduced blanking
40 1080i 100Hz 16:9
41 720p 100Hz 16:9
42 576p 100Hz 4:3
43 576p 100Hz 16:9
44 576i 100Hz 4:3
45 576i 100Hz 16:9
46 1080i 120Hz 16:9
47 720p 120Hz 16:9
48 480p 120Hz 4:3
49 480p 120Hz 16:9
50 480i 120Hz 4:3
51 480i 120Hz 16:9
52 576p 200Hz 4:3
53 576p 200Hz 16:9
54 576i 200Hz 4:3
55 576i 200Hz 16:9
56 480p 240Hz 4:3
57 480p 240Hz 16:9
58 480i 240Hz 4:3
59 480i 240Hz 16:9
60 720p 24Hz 16:9
61 720p 25Hz 16:9
62 720p 30Hz 16:9
63 1080p 120Hz 16:9
64 1080p 100Hz 16:9
65 Custom
66 720p 25Hz 64:27 Pi 4
67 720p 30Hz 64:27 Pi 4
68 720p 50Hz 64:27 Pi 4
69 720p 60Hz 64:27 Pi 4
70 720p 100Hz 64:27 Pi 4
71 720p 120Hz 64:27 Pi 4
72 1080p 24Hz 64:27 Pi 4
73 1080p 25Hz 64:27 Pi 4
74 1080p 30Hz 64:27 Pi 4
75 1080p 50Hz 64:27 Pi 4
76 1080p 60Hz 64:27 Pi 4
77 1080p 100Hz 64:27 Pi 4
78 1080p 120Hz 64:27 Pi 4
79 1680x720 24Hz 64:27 Pi 4
80 1680x720 25z 64:27 Pi 4
81 1680x720 30Hz 64:27 Pi 4
82 1680x720 50Hz 64:27 Pi 4
83 1680x720 60Hz 64:27 Pi 4
84 1680x720 100Hz 64:27 Pi 4
85 1680x720 120Hz 64:27 Pi 4
86 2560x720 24Hz 64:27 Pi 4
87 2560x720 25Hz 64:27 Pi 4
88 2560x720 30Hz 64:27 Pi 4
89 2560x720 50Hz 64:27 Pi 4
90 2560x720 60Hz 64:27 Pi 4
91 2560x720 100Hz 64:27 Pi 4
92 2560x720 120Hz 64:27 Pi 4
93 2160p 24Hz 16:9 Pi 4
94 2160p 25Hz 16:9 Pi 4
95 2160p 30Hz 16:9 Pi 4
96 2160p 50Hz 16:9 Pi 4
97 2160p 60Hz 16:9 Pi 4
98 4096x2160 24Hz 256:135 Pi 4
99 4096x2160 25Hz 256:135 Pi 4
100 4096x2160 30Hz 256:135 Pi 4
101 4096x2160 50Hz 256:135 Pi 41
102 4096x2160 60Hz 256:135 Pi 41
103 2160p 24Hz 64:27 Pi 4
104 2160p 25Hz 64:27 Pi 4
105 2160p 30Hz 64:27 Pi 4
106 2160p 50Hz 64:27 Pi 4
107 2160p 60Hz 64:27 Pi 4
一覧表に変更したい解像度が無い場合 カスタムモード
カスタムモードで、解像度を設定にゃよ!
hdmi_group=2,
hdmi_mode=87 でカスタムモードだタイガ
hdmi_group=2に 87ってないにゃね。隠しモードみたいなもの??
ラズパイの公式説明書ページに載ってて全然隠されてないです!
hdmi_cvt = 縦 横 フレーム だタイガ
hdmi=cvt の詳細については 本家のキャプチャして画像で貼ったよ。
各設定の説明です。
hdmi_force_hotplug=1 ※0 コンポジット / 1 HDMI
framebuffer_width=1720 ※横の解像度
framebuffer_height=1440 ※縦の解像度
hdmi_group=2 ※PCのモニタ
hdmi_mode=87 ※カスタム解像度は87
hdmi_cvt =1720 1440 60 (1 0 0 0) ※()内は無くてもOK。
※1720×1440の解像度はラズパイ4でないと再現できません。ラズパイ3の場合はこちらに!
テキストの一番下にコピーして貼り付けて上書きね!
#-----------------------------------------
hdmi_force_hotplug=1
framebuffer_width=1770
framebuffer_height=1440
hdmi_group=2
hdmi_mode=87
hdmi_cvt=1770 1440 60
これで再起動すれば解像度が変わって……ないので
あわてずさわがず Screen Configurationを起動!
おっけ~!
1720×1440はラズパイ3では表示出来ない…
ちなみに、この1720×1440の解像度は性能的?にラズパイ3だと、
残念ながら出てきません。仕方ないので、できる限りのサイズを試行錯誤した結果を載せておきます。同じ解像度のスーパーワイドモニターを使っていてラズパイ3の方用。
#-----------------------------------------
hdmi_force_hotplug=1
framebuffer_width=1496
framebuffer_height=1250
hdmi_group=2
hdmi_mode=87
hdmi_cvt=1496 1250 60
めっちゃくちゃニッチな話な気がしてきましたよ…..
ただ、この解像度はいいとこもあるにゃ。VNCから接続すると縦1440のサイズにいい感じオフセットされて収まるサイズ。VNCでも2画面でもどちらも使いやすいといえば使いやすいです!少し拡大されるから目に優しいし。
カスタム解像度変更できないで悩んでる方 もしかして
今回気づいたことがあるにゃ。過去のラズパイの設定活かしてそのまま一部コピペしてるけど、なんかうまく解像度が変更できないという方へ。config.txt内の「dtoverlay=vc4-」を検索してみてください。
旧:dtoverlay=vc4-fkms-v3d だタイガ fkms
新:dtoverlay=vc4-kms-v3d だタイガ kms
なんか微妙に違うね…..
どうやら新はスムーズになったものらしく、旧は廃止の方向とありました。この2つは挙動が違いました。
- 旧のfkms だと、変更して再起動だけでアスペクト比無視で縦横指定通りに変わってくれる
- 新kms表記のconfig.txtの、kmsをfkmsと書き直せば過去と同じ挙動をする
- 新kms だと、変更して再起動だけだとアスペクト比が優先されて変わらないor挙動不審なことがある
- 新kms は、変更して再起動のあとにScreen Configurationの一覧に指定解像度が現れる
DRM VC4 V3D driver ってあるから描画のドライバが変わったということなのかにゃ。
SDカードに新規インストしたあとに、kmsに気づかないで解像度の設定 hdmi_group、mode、cvt などをコピペで使いまわしてると、
あれれ..なぜ??と
まる1日悩みました
・
・
・
解像度設定の整理
設定変えて再起動しまくった結果、こんなかんじかにゃ。
VNC用(HDMIケーブルを挿さない) → ヘッドレス解像度設定が有効に。
VNC用(HDMIケーブルを挿さない&CONFIGでカスタム解像度指定) → CONFIG設定が有効に。
HDMIでモニター接続 CONFIG設定なし → モニターそのままの解像度が有効に(定番解像度の場合)
HDMIでモニター接続 CONFIG設定あり → CONFIG設定が有効に