https://www.raspberrypi.org/documentation/configuration/config-txt/video.md
树莓派HDMI视频端口参数英文档案
The sdtv_mode
command defines the TV standard used for composite video output. On the original Raspberry Pi, composite video is output on the RCA socket. On other Raspberry Pi's, except for Pi Zero and Compute Module, composite video is output along with sound on the 4 pole TRRS ("headphone") socket. On the Pi Zero, there is an unpopulated header labelled "TV" which outputs composite video. On the Compute Module, composite video is available via the TVDAC pin. The default value of sdtv_mode
is 0
.
sdtv_mode | result |
---|---|
0 | Normal NTSC |
1 | Japanese version of NTSC – no pedestal |
2 | Normal PAL |
3 | Brazilian version of PAL – 525/60 rather than 625/50, different subcarrier |
16 | Progressive scan NTSC |
18 | Progressive scan PAL |
The sdtv_aspect
command defines the aspect ratio for composite video output. The default value is 1
.
sdtv_aspect | result |
---|---|
1 | 4:3 |
2 | 14:9 |
3 | 16:9 |
Setting sdtv_disable_colourburst
to 1
disables colourburst on composite video output. The picture will be displayed in monochrome, but it may appear sharper.
On the Raspberry Pi 4, composite output is disabled by default, due to the way the internal clocks are interrelated and allocated. Because composite video requires a very specific clock, setting that clock to the required speed on the Pi 4 means that other clocks connected to it are detrimentally affected, which slightly slows down the entire system. Since composite video is a less commonly used function, we decided to disable it by default to prevent this system slowdown.
To enable composite output, use the enable_tvout=1
option. As described above, this will detrimentally affect performance to a small degree.
On older Pi models, the composite behaviour remains the same.
Note for Raspberry Pi4B users: Because the Raspberry Pi 4B has two HDMI ports, some HDMI commands can be applied to either port. You can use the syntax
, where port is 0 or 1, to specify which port the setting should apply to. If no port is specified, the default is 0. If you specify a port number on a command that does not require a port number, the port is ignored. Further details on the syntax and alternatives mechanisms can be found in the HDMI section on the conditionals page of the documentation.
Setting hdmi_safe
to 1
will lead to "safe mode" settings being used to try to boot with maximum HDMI compatibility. This is the same as setting the following parameters:
hdmi_force_hotplug=1
hdmi_ignore_edid=0xa5000080
config_hdmi_boost=4
hdmi_group=2
hdmi_mode=4
disable_overscan=0
overscan_left=24
overscan_right=24
overscan_top=24
overscan_bottom=24
Setting hdmi_ignore_edid
to 0xa5000080
enables the ignoring of EDID/display data if your display does not have an accurate EDID. It requires this unusual value to ensure that it is not triggered accidentally.
Setting hdmi_edid_file
to 1
will cause the GPU to read EDID data from the edid.dat
file, located in the boot partition, instead of reading it from the monitor. More information is available here.
On the Raspberry Pi 4B, you can use the hdmi_edid_filename
command to specify the filename of the EDID file to use, and also to specify which port the file is to be applied to. This also requires hdmi_edid_file=1
to enable EDID files.
For example:
hdmi_edid_file=1
hdmi_edid_filename:0=FileForPortZero.edid
hdmi_edid_filename:1=FileForPortOne.edid
Setting hdmi_force_edid_audio
to 1
pretends that all audio formats are supported by the display, allowing passthrough of DTS/AC3 even when this is not reported as supported.
Setting hdmi_ignore_edid_audio
to 1
pretends that all audio formats are unsupported by the display. This means ALSA will default to the analogue audio (headphone) jack.
Setting hdmi_force_edid_3d
to 1
pretends that all CEA modes support 3D, even when the EDID does not indicate support for this.
Setting hdmi_ignore_cec_init
to 1
will stop the initial active source message being sent during bootup. This prevents a CEC-enabled TV from coming out of standby and channel-switching when you are rebooting your Raspberry Pi.
Setting hdmi_ignore_cec
to 1
pretends that CEC is not supported at all by the TV. No CEC functions will be supported.
The cec_osd_name
command sets the initial CEC name of the device. The default is Raspberry Pi.
The hdmi_pixel_encoding
command forces the pixel encoding mode. By default, it will use the mode requested from the EDID, so you shouldn't need to change it.
hdmi_pixel_encoding | result |
---|---|
0 | default (RGB limited for CEA, RGB full for DMT) |
1 | RGB limited (16-235) |
2 | RGB full (0-255) |
3 | YCbCr limited (16-235) |
4 | YCbCr full (0-255) |
The hdmi_blanking
command controls what happens when the operating system asks for the display to be put into standby mode, using DPMS, to save power. If this option is not set or set to 0, the HDMI output is blanked but not switched off. In order to mimic the behaviour of other computers, you can set the HDMI output to switch off as well by setting this option to 1: the attached display will go into a low power standby mode.
On the Raspberry Pi 4, setting hdmi_blanking=1 will not cause the HDMI output to be switched off, since this feature has not yet been implemented.
NOTE: This feature may cause issues when using applications which don't use the framebuffer, such as omxplayer.
hdmi_blanking | result |
---|---|
0 | HDMI output will be blanked |
1 | HDMI output will be switched off and blanked |
The hdmi_drive
command allows you to choose between HDMI and DVI output modes.
hdmi_drive | result |
---|---|
1 | Normal DVI mode (no sound) |
2 | Normal HDMI mode (sound will be sent if supported and enabled) |
Configures the signal strength of the HDMI interface. The minimum value is 0
and the maximum is 11
.
The default value for the original Model B and A is 2
. The default value for the Model B+ and all later models is 5
.
If you are seeing HDMI issues (speckling, interference) then try 7
. Very long HDMI cables may need up to 11
, but values this high should not be used unless absolutely necessary.
This option is ignored on the Raspberry Pi 4.
The hdmi_group
command defines the HDMI output group to be either CEA (Consumer Electronics Association, the standard typically used by TVs) or DMT (Display Monitor Timings, the standard typically used by monitors). This setting should be used in conjunction with hdmi_mode
.
hdmi_group | result |
---|---|
0 | Auto-detect from EDID |
1 | CEA |
2 | DMT |
Together with hdmi_group
, hdmi_mode
defines the HDMI output format. Format mode numbers are derived from the CTA specification found here
To set a custom display mode not listed here, see this thread.
Note that not all modes are available on all models.
These values are valid if hdmi_group=1
(CEA):
hdmi_mode | Resolution | Frequency | Screen Aspect | Notes |
---|---|---|---|---|
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 4 |
102 | 4096x2160 | 60Hz | 256:135 | Pi 4 |
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 |
Pixel doubling and quadrupling indicates a higher clock rate, with each pixel repeated two or four times respectively.
These values are valid if hdmi_group=2
(DMT):
hdmi_mode | Resolution | Frequency | Screen Aspect | Notes |
---|---|---|---|---|
1 | 640x350 | 85Hz | ||
2 | 640x400 | 85Hz | 16:10 | |
3 | 720x400 | 85Hz | ||
4 | 640x480 | 60Hz | 4:3 | |
5 | 640x480 | 72Hz | 4:3 | |
6 | 640x480 | 75Hz | 4:3 | |
7 | 640x480 | 85Hz | 4:3 | |
8 | 800x600 | 56Hz | 4:3 | |
9 | 800x600 | 60Hz | 4:3 | |
10 | 800x600 | 72Hz | 4:3 | |
11 | 800x600 | 75Hz | 4:3 | |
12 | 800x600 | 85Hz | 4:3 | |
13 | 800x600 | 120Hz | 4:3 | |
14 | 848x480 | 60Hz | 16:9 | |
15 | 1024x768 | 43Hz | 4:3 | incompatible with the Raspberry Pi |
16 | 1024x768 | 60Hz | 4:3 | |
17 | 1024x768 | 70Hz | 4:3 | |
18 | 1024x768 | 75Hz | 4:3 | |
19 | 1024x768 | 85Hz | 4:3 | |
20 | 1024x768 | 120Hz | 4:3 | |
21 | 1152x864 | 75Hz | 4:3 | |
22 | 1280x768 | 60Hz | 15:9 | reduced blanking |
23 | 1280x768 | 60Hz | 15:9 | |
24 | 1280x768 | 75Hz | 15:9 | |
25 | 1280x768 | 85Hz | 15:9 | |
26 | 1280x768 | 120Hz | 15:9 | reduced blanking |
27 | 1280x800 | 60 | 16:10 | reduced blanking |
28 | 1280x800 | 60Hz | 16:10 | |
29 | 1280x800 | 75Hz | 16:10 | |
30 | 1280x800 | 85Hz | 16:10 | |
31 | 1280x800 | 120Hz | 16:10 | reduced blanking |
32 | 1280x960 | 60Hz | 4:3 | |
33 | 1280x960 | 85Hz | 4:3 | |
34 | 1280x960 | 120Hz | 4:3 | reduced blanking |
35 | 1280x1024 | 60Hz | 5:4 | |
36 | 1280x1024 | 75Hz | 5:4 | |
37 | 1280x1024 | 85Hz | 5:4 | |
38 | 1280x1024 | 120Hz | 5:4 | reduced blanking |
39 | 1360x768 | 60Hz | 16:9 | |
40 | 1360x768 | 120Hz | 16:9 | reduced blanking |
41 | 1400x1050 | 60Hz | 4:3 | reduced blanking |
42 | 1400x1050 | 60Hz | 4:3 | |
43 | 1400x1050 | 75Hz | 4:3 | |
44 | 1400x1050 | 85Hz | 4:3 | |
45 | 1400x1050 | 120Hz | 4:3 | reduced blanking |
46 | 1440x900 | 60Hz | 16:10 | reduced blanking |
47 | 1440x900 | 60Hz | 16:10 | |
48 | 1440x900 | 75Hz | 16:10 | |
49 | 1440x900 | 85Hz | 16:10 | |
50 | 1440x900 | 120Hz | 16:10 | reduced blanking |
51 | 1600x1200 | 60Hz | 4:3 | |
52 | 1600x1200 | 65Hz | 4:3 | |
53 | 1600x1200 | 70Hz | 4:3 | |
54 | 1600x1200 | 75Hz | 4:3 | |
55 | 1600x1200 | 85Hz | 4:3 | |
56 | 1600x1200 | 120Hz | 4:3 | reduced blanking |
57 | 1680x1050 | 60Hz | 16:10 | reduced blanking |
58 | 1680x1050 | 60Hz | 16:10 | |
59 | 1680x1050 | 75Hz | 16:10 | |
60 | 1680x1050 | 85Hz | 16:10 | |
61 | 1680x1050 | 120Hz | 16:10 | reduced blanking |
62 | 1792x1344 | 60Hz | 4:3 | |
63 | 1792x1344 | 75Hz | 4:3 | |
64 | 1792x1344 | 120Hz | 4:3 | reduced blanking |
65 | 1856x1392 | 60Hz | 4:3 | |
66 | 1856x1392 | 75Hz | 4:3 | |
67 | 1856x1392 | 120Hz | 4:3 | reduced blanking |
68 | 1920x1200 | 60Hz | 16:10 | reduced blanking |
69 | 1920x1200 | 60Hz | 16:10 | |
70 | 1920x1200 | 75Hz | 16:10 | |
71 | 1920x1200 | 85Hz | 16:10 | |
72 | 1920x1200 | 120Hz | 16:10 | reduced blanking |
73 | 1920x1440 | 60Hz | 4:3 | |
74 | 1920x1440 | 75Hz | 4:3 | |
75 | 1920x1440 | 120Hz | 4:3 | reduced blanking |
76 | 2560x1600 | 60Hz | 16:10 | reduced blanking |
77 | 2560x1600 | 60Hz | 16:10 | |
78 | 2560x1600 | 75Hz | 16:10 | |
79 | 2560x1600 | 85Hz | 16:10 | |
80 | 2560x1600 | 120Hz | 16:10 | reduced blanking |
81 | 1366x768 | 60Hz | 16:9 | |
82 | 1920x1080 | 60Hz | 16:9 | 1080p |
83 | 1600x900 | 60Hz | 16:9 | reduced blanking |
84 | 2048x1152 | 60Hz | 16:9 | reduced blanking |
85 | 1280x720 | 60Hz | 16:9 | 720p |
86 | 1366x768 | 60Hz | 16:9 | reduced blanking |
Note that there is a pixel clock limit.The highest supported mode on models prior to the Raspberry Pi 4 is 1920x1200 at 60Hz with reduced blanking, whilst the Raspberry Pi 4 can support up to 4096x2160 (known as 4k) at 60Hz. Also note that if you are using both HDMI ports of the Raspberry Pi 4 for 4k output, then you are limited to 30Hz on both.
This allows setting of raw HDMI timing values for a custom mode, selected using hdmi_group=2
and hdmi_mode=87
.
hdmi_timings=
= horizontal pixels (width)
= invert hsync polarity
= horizontal forward padding from DE acitve edge
= hsync pulse width in pixel clocks
= vertical back padding from DE active edge
= vertical pixels height (lines)
= invert vsync polarity
= vertical forward padding from DE active edge
= vsync pulse width in pixel clocks
= vertical back padding from DE active edge
= leave at zero
= leave at zero
= leave at zero
= screen refresh rate in Hz
= leave at zero
= clock frequency (width*height*framerate)
= *
*
The aspect ratio can be set to one of eight values (choose the closest for your screen):
HDMI_ASPECT_4_3 = 1
HDMI_ASPECT_14_9 = 2
HDMI_ASPECT_16_9 = 3
HDMI_ASPECT_5_4 = 4
HDMI_ASPECT_16_10 = 5
HDMI_ASPECT_15_9 = 6
HDMI_ASPECT_21_9 = 7
HDMI_ASPECT_64_27 = 8
Setting to 1
will remove all other modes except the ones specified by hdmi_mode
and hdmi_group
from the internal list, meaning they will not appear in any enumerated lists of modes. This option may help if a display seems to be ignoring the hdmi_mode
and hdmi_group
settings.
Forces the EDID content type to a specific value.
The options are:
0
= EDID_ContentType_NODATA
, content type none.1
= EDID_ContentType_Graphics
, content type graphics, ITC must be set to 12
= EDID_ContentType_Photo
, content type photo3
= EDID_ContentType_Cinema
, content type cinema4
= EDID_ContentType_Game
, content type gameBy default, when connected to a 4K monitor, the Raspberry Pi 4B will select a 30hz refresh rate. Use this option to allow selection of 60Hz refresh rates. Note, this will increase power consumption and increase the temperature of the Raspberry Pi. It is not possible to output 4Kp60 on both micro HDMI ports simultaneously.
Your HDMI monitor may only support a limited set of formats. To find out which formats are supported, use the following method:
hdmi_group=1
and hdmi_mode=1
) and boot up your Raspberry Pi/opt/vc/bin/tvservice -m CEA
/opt/vc/bin/tvservice -m DMT
/opt/vc/bin/tvservice -s
/opt/vc/bin/tvservice -d edid.dat; /opt/vc/bin/edidparser edid.dat
The edid.dat
should also be provided when troubleshooting problems with the default HDMI mode.
If your monitor requires a mode that is not in one of the tables above, then it's possible to define a custom CVT mode for it instead:
hdmi_cvt=
Value | Default | Description |
---|---|---|
width | (required) | width in pixels |
height | (required) | height in pixels |
framerate | (required) | framerate in Hz |
aspect | 3 | aspect ratio 1=4:3, 2=14:9, 3=16:9, 4=5:4, 5=16:10, 6=15:9 |
margins | 0 | 0=margins disabled, 1=margins enabled |
interlace | 0 | 0=progressive, 1=interlaced |
rb | 0 | 0=normal, 1=reduced blanking |
Fields at the end can be omitted to use the default values.
Note that this simply creates the mode (group 2 mode 87). In order to make the Pi use this by default, you must add some additional settings. For example, the following selects an 800 × 480 resolution and enables audio drive:
hdmi_cvt=800 480 60 6
hdmi_group=2
hdmi_mode=87
hdmi_drive=2
This may not work if your monitor does not support standard CVT timings.
By default the Raspberry Pi LCD display is used when it is detected on the I2C bus. ignore_lcd=1
will skip this detection phase, and therefore the LCD display will not be used.
If a Raspberry Pi DSI LCD is detected it will be used as the default display and will show the framebuffer. Setting display_default_lcd=0
will ensure the LCD is not the default display, which usually implies the HDMI output will be the default. The LCD can still be used by choosing its display number from supported applications, for example, omxplayer.
Specify the framerate of the Raspberry Pi LCD display, in Hertz/fps. Defaults to 60Hz.
This flips the display using the LCD's inbuilt flip functionality, which is a cheaper operation that using the GPU-based rotate operation.
For example, lcd_rotate=2
will compensate for an upside down display.
Enable/disable the touchscreen.
disable_touchscreen=1
will disable the touchscreen on the official Raspberry Pi LCD display.
Enable LCD displays attached to the DPI GPIOs. This is to allow the use of third-party LCD displays using the parallel display interface.
The dpi_group
and dpi_mode
config.txt parameters are used to set either predetermined modes (DMT or CEA modes as used by HDMI above). A user can generate custom modes in much the same way as for HDMI (see dpi_timings
section).
dpi_output_format
is a bitmask specifying various parameters used to set up the display format.
More details on using the DPI modes and the output format can be found here.
This allows setting of raw DPI timing values for a custom mode, selected using dpi_group=2
and dpi_mode=87
.
dpi_timings=
= horizontal pixels (width)
= invert hsync polarity
= horizontal forward padding from DE acitve edge
= hsync pulse width in pixel clocks
= vertical back padding from DE active edge
= vertical pixels height (lines)
= invert vsync polarity
= vertical forward padding from DE active edge
= vsync pulse width in pixel clocks
= vertical back padding from DE active edge
= leave at zero
= leave at zero
= leave at zero
= screen refresh rate in Hz
= leave at zero
= clock frequency (width*height*framerate)
= *
*
The aspect ratio can be set to one of eight values (choose the closest for your screen):
HDMI_ASPECT_4_3 = 1
HDMI_ASPECT_14_9 = 2
HDMI_ASPECT_16_9 = 3
HDMI_ASPECT_5_4 = 4
HDMI_ASPECT_16_10 = 5
HDMI_ASPECT_15_9 = 6
HDMI_ASPECT_21_9 = 7
HDMI_ASPECT_64_27 = 8
Setting hdmi_force_hotplug
to 1
pretends that the HDMI hotplug signal is asserted, so it appears that a HDMI display is attached. In other words, HDMI output mode will be used, even if no HDMI monitor is detected.
Setting hdmi_ignore_hotplug
to 1
pretends that the HDMI hotplug signal is not asserted, so it appears that a HDMI display is not attached. In other words, composite output mode will be used, even if an HDMI monitor is detected.
Set disable_overscan
to 1
to disable the default values of overscan that is set by the firmware. The default value of overscan for the left, right, top, and bottom edges is 48
for HD CEA modes, 32
for SD CEA modes, and 0
for DMT modes. The default value for disable_overscan
is 0
.
NOTE: any further additional overscan options such as overscan_scale
or overscan edges can still be applied after this option.
The overscan_left
command specifies the number of pixels to add to the firmware default value of overscan on the left edge of the screen. The default value is 0
.
Increase this value if the text flows off the left edge of the screen; decrease it if there is a black border between the left edge of the screen and the text.
The overscan_right
command specifies the number of pixels to add to the firmware default value of overscan on the right edge of the screen. The default value is 0
.
Increase this value if the text flows off the right edge of the screen; decrease it if there is a black border between the right edge of the screen and the text.
The overscan_top
command specifies the number of pixels to add to the firmware default value of overscan on the top edge of the screen. The default value is 0
.
Increase this value if the text flows off the top edge of the screen; decrease it if there is a black border between the top edge of the screen and the text.
The overscan_bottom
command specifies the number of pixels to add to the firmware default value of overscan on the bottom edge of the screen. The default value is 0
.
Increase this value if the text flows off the bottom edge of the screen; decrease it if there is a black border between the bottom edge of the screen and the text.
Set overscan_scale
to 1
to force any non-framebuffer layers to conform to the overscan settings. The default value is 0
.
NOTE: this feature is generally not recommended: it can reduce image quality because all layers on the display will be scaled by the GPU. Disabling overscan on the display itself is the recommended option to avoid images being scaled twice (by the GPU and the display).
The framebuffer_width
command specifies the console framebuffer width in pixels. The default is the display width minus the total horizontal overscan.
The framebuffer_height
command specifies the console framebuffer height in pixels. The default is the display height minus the total vertical overscan. C4
Specifies the maximum dimensions that the internal frame buffer is allowed to be.
Use framebuffer_depth
to specify the console framebuffer depth in bits per pixel. The default value is 16
.
framebuffer_depth | result | notes |
---|---|---|
8 | 8bit framebuffer | Default RGB palette makes screen unreadable |
16 | 16bit framebuffer | |
24 | 24bit framebuffer | May result in a corrupted display |
32 | 32bit framebuffer | May need to be used in conjunction with framebuffer_ignore_alpha=1 |
Set framebuffer_ignore_alpha
to 1
to disable the alpha channel. Can help with the display of a 32bit framebuffer_depth
.
In a system with multiple displays, using the legacy (pre-KMS) graphics driver, this forces a specific internal display device to be the first Linux framebuffer (i.e./dev/fb0).
The options that can be set are:
Display | ID |
---|---|
Main LCD | 0 |
Secondary LCD | 1 |
HDMI 0 | 2 |
Composite | 3 |
HDMI 1 | 7 |
The test_mode
command displays a test image and sound during boot (over the composite video and analogue audio outputs only) for the given number of seconds, before continuing to boot the OS as normal. This is used as a manufacturing test; the default value is 0
.
Use display_hdmi_rotate
to rotate or flip the HDMI display orientation. The default value is 0
.
display_hdmi_rotate | result |
---|---|
0 | no rotation |
1 | rotate 90 degrees clockwise |
2 | rotate 180 degrees clockwise |
3 | rotate 270 degrees clockwise |
0x10000 | horizontal flip |
0x20000 | vertical flip |
Note that the 90 and 270 degree rotation options require additional memory on the GPU, so these will not work with the 16MB GPU split.
If using the VC4 FKMS V3D driver (this is the default on the Raspberry Pi 4), then 90 and 270 degree rotations are not supported. The Screen Configuration utility provides display rotations for this driver. See this page for more information.
For the legacy graphics driver (default on models prior to the Pi4), use display_lcd_rotate
to rotate or flip the LCD orientation. Parameters are the same as display_hdmi_rotate
. See also lcd_rotate
.
display_rotate
is deprecated in the latest firmware but has been retained for backwards compatibility. Please use display_lcd_rotate
and display_hdmi_rotate
instead.
Use display_rotate
to rotate or flip the screen orientation. Parameters are the same as display_hdmi_rotate
.
By default, the firmware parses the EDID of any HDMI attached display, picks an appropriate video mode, then passes the resolution and frame rate of the mode, along with overscan parameters, to the Linux kernel via settings on the kernel command line. In rare circumstances, this can have the effect of choosing a mode that is not in the EDID, and may be incompatible with the device. You can use disable_fw_kms_setup=1
to disable the passing of these parameters and avoid this problem. The Linux video mode system (KMS) will then parse the EDID itself and pick an appropriate mode.
Forces dispmanx composition to be done offline in two offscreen framebuffers. This can allow more dispmanx elements to be composited, but is slower and may limit screen framerate to typically 30fps.
This article uses content from the eLinux wiki page RPiconfig, which is shared under the Creative Commons Attribution-ShareAlike 3.0 Unported license