因此,我有一个惠普显示器连接到我的笔记本电脑作为外部显示器。监视器的文档显示,使用他们提供的HDMI电缆的最佳分辨率是2560x1440 @ 60 Hz。当我引导到Windows时,我可以获得这个分辨率。但是无论我怎么尝试,我都无法在Ubuntu20.04中获得这个分辨率。
我的笔记本电脑上没有DisplayPort连接,所以我使用的是提供的HDMI电缆。
我试图使用xrandr --admode
设置分辨率,但是新模式失败了:
$ cvt 2560 1440 60
# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz
Modeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
$ xrandr --newmode "2560x1440" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
$ xrandr --addmode XWAYLAND1 2560x1440
$ xrandr --output XWAYLAND1 --mode 2560x1440
xrandr: Configure crtc 1 failed
下面是xrandr --verbose
的输出:
Screen 0: minimum 16 x 16, current 3840 x 1441, maximum 32767 x 32767
XWAYLAND0 connected 1920x1080+1920+361 (0x24) normal (normal left inverted right x axis y axis) 290mm x 170mm
Identifier: 0x21
Timestamp: 20221
Subpixel: unknown
Gamma: 1.0:1.0:1.0
Brightness: 0.0
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
non-desktop: 0
supported: 0, 1
1920x1080 (0x24) 173.000MHz -HSync +VSync *current +preferred
h: width 1920 start 2048 end 2248 total 2576 skew 0 clock 67.16KHz
v: height 1080 start 1083 end 1088 total 1120 clock 59.96Hz
XWAYLAND1 connected 1920x1200+0+0 (0x25) normal (normal left inverted right x axis y axis) 600mm x 340mm
Identifier: 0x23
Timestamp: 20221
Subpixel: unknown
Gamma: 1.0:1.0:1.0
Brightness: 0.0
Clones:
CRTC: 1
CRTCs: 1
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
non-desktop: 0
supported: 0, 1
1920x1200 (0x25) 193.250MHz -HSync +VSync *current +preferred
h: width 1920 start 2056 end 2256 total 2592 skew 0 clock 74.56KHz
v: height 1200 start 1203 end 1209 total 1245 clock 59.88Hz
这是lspci -k | grep -EA3 'VGA|3D|Display'
的输出
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 620 (rev 02)
DeviceName: Onboard IGD
Subsystem: Dell HD Graphics 620
Kernel driver in use: i915
--
00:13.0 Non-VGA unclassified device: Intel Corporation Sunrise Point-LP Integrated Sensor Hub (rev 21)
Subsystem: Dell Sunrise Point-LP Integrated Sensor Hub
Kernel driver in use: intel_ish_ipc
Kernel modules: intel_ish_ipc
和glxinfo | grep -i vendor
:
server glx vendor string: SGI
client glx vendor string: Mesa Project and SGI
Vendor: Intel (0x8086)
OpenGL vendor string: Intel
我使用Mesa 620 (KBL GT2)卡运行Ubuntu20.04.1LTS。Gnome版本为3.35.3,Wayland作为窗口系统。
对于如何让显示器显示最佳分辨率,有什么建议吗?
我尝试转到Xorg,而不是Wayland。我还是有同样的问题。如果我引导到Xorg,下面是来自xrandr --verbose
的相关行:
HDMI-1 connected 1920x1200+1920+0 (0xa1) normal (normal left inverted right x axis y axis) 597mm x 336mm
Identifier: 0x43
Timestamp: 76498
Subpixel: unknown
Gamma: 1.0:1.0:1.0
Brightness: 1.0
Clones:
CRTC: 1
CRTCs: 0 1 2
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
EDID:
00ffffffffffff00220e753401010101
091e0103803c22782a9325a9544d9e25
0c5054a10800d1c081c081809500a9c0
a940b300d100565e00a0a0a029503020
350055502100001a000000fd00323c1e
5a19000a202020202020000000fc0048
502045323733710a20202020000000ff
0036434d303039303939430a202001cc
020319b149101f041303120211016703
0c0010000032e2002b023a801871382d
40582c450055502100001e023a80d072
382d40102c458055502100001e565e00
a0a0a029503020350055502100001a00
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000023
_MUTTER_PRESENTATION_OUTPUT: 0
HDCP Content Type: HDCP Type0
supported: HDCP Type0, HDCP Type1
Content Protection: Undesired
supported: Undesired, Desired, Enabled
max bpc: 12
range: (8, 12)
content type: No Data
supported: No Data, Graphics, Photo, Cinema, Game
Colorspace: Default
supported: Default, SMPTE_170M_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, opRGB, BT2020_CYCC, BT2020_RGB, BT2020_YCC, DCI-P3_RGB_D65, DCI-P3_RGB_Theater
aspect ratio: Automatic
supported: Automatic, 4:3, 16:9
Broadcast RGB: Automatic
supported: Automatic, Full, Limited 16:235
audio: auto
supported: force-dvi, off, auto, on
link-status: Good
supported: Good, Bad
CONNECTOR_ID: 92
supported: 92
non-desktop: 0
range: (0, 1)
1920x1200 (0xa1) 154.000MHz +HSync -VSync *current
h: width 1920 start 1968 end 2000 total 2080 skew 0 clock 74.04KHz
v: height 1200 start 1203 end 1209 total 1235 clock 59.95Hz
1920x1080 (0xa2) 148.500MHz +HSync +VSync
h: width 1920 start 2008 end 2052 total 2200 skew 0 clock 67.50KHz
v: height 1080 start 1084 end 1089 total 1125 clock 60.00Hz
1920x1080 (0xa3) 148.500MHz +HSync +VSync
h: width 1920 start 2448 end 2492 total 2640 skew 0 clock 56.25KHz
v: height 1080 start 1084 end 1089 total 1125 clock 50.00Hz
1920x1080 (0xa4) 148.352MHz +HSync +VSync
h: width 1920 start 2008 end 2052 total 2200 skew 0 clock 67.43KHz
v: height 1080 start 1084 end 1089 total 1125 clock 59.94Hz
1600x1200 (0xa5) 162.000MHz +HSync +VSync
h: width 1600 start 1664 end 1856 total 2160 skew 0 clock 75.00KHz
v: height 1200 start 1201 end 1204 total 1250 clock 60.00Hz
1680x1050 (0x4b) 119.000MHz +HSync -VSync
h: width 1680 start 1728 end 1760 total 1840 skew 0 clock 64.67KHz
v: height 1050 start 1053 end 1059 total 1080 clock 59.88Hz
1600x900 (0xa6) 108.000MHz +HSync +VSync
h: width 1600 start 1624 end 1704 total 1800 skew 0 clock 60.00KHz
v: height 900 start 901 end 904 total 1000 clock 60.00Hz
1280x1024 (0x52) 108.000MHz +HSync +VSync
h: width 1280 start 1328 end 1440 total 1688 skew 0 clock 63.98KHz
v: height 1024 start 1025 end 1028 total 1066 clock 60.02Hz
1440x900 (0xa7) 88.750MHz +HSync -VSync
h: width 1440 start 1488 end 1520 total 1600 skew 0 clock 55.47KHz
v: height 900 start 903 end 909 total 926 clock 59.90Hz
1280x720 (0xa8) 74.250MHz +HSync +VSync
h: width 1280 start 1390 end 1430 total 1650 skew 0 clock 45.00KHz
v: height 720 start 725 end 730 total 750 clock 60.00Hz
1280x720 (0xa9) 74.250MHz +HSync +VSync
h: width 1280 start 1720 end 1760 total 1980 skew 0 clock 37.50KHz
v: height 720 start 725 end 730 total 750 clock 50.00Hz
1280x720 (0xaa) 74.176MHz +HSync +VSync
h: width 1280 start 1390 end 1430 total 1650 skew 0 clock 44.96KHz
v: height 720 start 725 end 730 total 750 clock 59.94Hz
1024x768 (0x67) 65.000MHz -HSync -VSync
h: width 1024 start 1048 end 1184 total 1344 skew 0 clock 48.36KHz
v: height 768 start 771 end 777 total 806 clock 60.00Hz
800x600 (0x76) 40.000MHz +HSync +VSync
h: width 800 start 840 end 968 total 1056 skew 0 clock 37.88KHz
v: height 600 start 601 end 605 total 628 clock 60.32Hz
720x576 (0xab) 27.000MHz -HSync -VSync
h: width 720 start 732 end 796 total 864 skew 0 clock 31.25KHz
v: height 576 start 581 end 586 total 625 clock 50.00Hz
720x480 (0xac) 27.027MHz -HSync -VSync
h: width 720 start 736 end 798 total 858 skew 0 clock 31.50KHz
v: height 480 start 489 end 495 total 525 clock 60.00Hz
720x480 (0xad) 27.000MHz -HSync -VSync
h: width 720 start 736 end 798 total 858 skew 0 clock 31.47KHz
v: height 480 start 489 end 495 total 525 clock 59.94Hz
640x480 (0xae) 25.200MHz -HSync -VSync
h: width 640 start 656 end 752 total 800 skew 0 clock 31.50KHz
v: height 480 start 490 end 492 total 525 clock 60.00Hz
640x480 (0x85) 25.175MHz -HSync -VSync
h: width 640 start 656 end 752 total 800 skew 0 clock 31.47KHz
v: height 480 start 490 end 492 total 525 clock 59.94Hz
720x400 (0xaf) 28.320MHz -HSync +VSync
h: width 720 start 738 end 846 total 900 skew 0 clock 31.47KHz
v: height 400 start 412 end 414 total 449 clock 70.08Hz
在日志中出现grep 2560
之后,我查看了/var/log/syslog
并发现了以下几行:
Nov 25 13:57:04 laptop systemd[1606]: Starting GNOME Shell on X11...
Nov 25 13:57:04 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): EDID vendor "BOE"
Nov 25 13:57:04 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Printing DDC gath
Nov 25 13:57:04 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Modeline "1920x10
Nov 25 13:57:04 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Modeline "1920x10
Nov 25 13:57:04 laptop /usr/lib/gdm3/gdm-x-session[1696]: (--) modeset(0): HDMI max TMDS fre
Nov 25 13:57:04 laptop gnome-shell[1853]: Failed to use stored monitor configuration: Invalid mode 2560x1440 (59.864616) for monitor 'HPN HP E273q'
这就是在靴子上发生的事。如果我试图通过xrandr
更改决议,我会得到:
Nov 25 13:09:47 laptop gnome-shell[1853]: Failed to use stored monitor configuration: Invalid mode 2560x1440 (59.864616) for monitor 'HPN HP E273q'
Nov 25 13:09:53 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Allocate new frame buffer 4480x1440 stride
Nov 25 13:09:53 laptop /usr/lib/gdm3/gdm-x-session[1696]: (EE) modeset(0): failed to set mode: Invalid argument
Nov 25 13:09:53 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Allocate new frame buffer 3840x1200 stride
Nov 25 13:09:54 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): EDID vendor "BOE", prod id 1703
Nov 25 13:09:54 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Printing DDC gathered Modelines:
Nov 25 13:09:54 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Modeline "1920x1080"x0.0 138.78 1920 1968 2000 2080 1080 1083 1088 1112 +hsync -vsync (66.7 kHz eP)
Nov 25 13:09:54 laptop /usr/lib/gdm3/gdm-x-session[1696]: (II) modeset(0): Modeline "1920x1080"x0.0 111.02 1920 1968 2000 2080 1080 1083 1088 1112 +hsync -vsync (53.4 kHz e)
Nov 25 13:09:54 laptop /usr/lib/gdm3/gdm-x-session[1696]: (--) modeset(0): HDMI max TMDS frequency 250000KHz
我可以得到2560x1440在30赫兹的工作使用xrandr
。只有60.00 (或55,59.9,等等)那不起作用。
发布于 2020-11-25 19:17:21
根据您发布的日志,您的HDMI输出仅限于250个MHz像素时钟:
(--) modeset(0): HDMI max TMDS frequency 250000KHz
这可能是您的屏幕、电缆和/或视频芯片的限制。无论如何,你必须在这个限度内工作。
cvt
工具在没有特定选项的情况下使用,生成标准VESA模型,具有“舒适”的消隐时间,适用于标准创建时的大多数显示。
以所需的分辨率和刷新速率运行它(就像您所做的那样)提供了以下modeline:
# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz
Modeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
此模型需要一个312.25 MHz像素时钟,这比您的HDMI输出所能提供的更多。
有“舒适”的消隐时间是不必要的,也不是与HDMI输出相关的,因此可以使用“减少”的消隐时间。为此,cvt
有一个--reduced
选项。运行cvt --reduced 2560 1440 60
提供了以下modeline:
# 2560x1440 59.95 Hz (CVT 3.69M9-R) hsync: 88.79 kHz; pclk: 241.50 MHz
Modeline "2560x1440R" 241.50 2560 2608 2640 2720 1440 1443 1448 1481 +hsync -vsync
这一个有一个241.50 MHz像素时钟,它应该与您的HDMI输出。
实际上,在http://www.edidreader.com/上解码您的EDID输出会给出cvt --reduced
命令所给出的精确时间。由于EDID中的信息是屏幕认为应该使用的信息,所以上面生成的modeline有在您的系统上工作的所有机会。
一个谜团仍然存在:为什么它不能从盒子里直接运行。我使用的是2560x1440显示器,没有这样的问题。
发布于 2020-11-25 15:20:40
你有第二个HDMI电缆可以试试吗?我知道这听起来很傻,但我在过去遇到了一个非常类似的问题(显示器只执行1920x1080而不是2560x1080),解决方案就是简单地更换电缆。
发布于 2021-08-21 05:27:03
我也有同样的问题,在Windows中,它使用2k分辨率,但在PopOs中不起作用。
你也可以以60赫兹的频率运行,你可以这样做:
在Windows中,使用“监视资产管理器”软件获取EDID。从此副本中,Modelinefor2560x1440分辨率( Windows中的首选分辨率)、实时EDID或Windows注册表选项选择(两者将基本相同)。
然后,您可以在xrandr --newmode
中使用这些modeline值,然后在xrandr --addmode
中使用这些模型值(通过xrandr
检查名称)。
这种方法对我有效。我尝试过使用cvt
工具来生成modeline,但这是行不通的。在这里,由于Windows可以使用这些模型,所以Linux也有可能工作,因为监视器是相同的。
https://askubuntu.com/questions/1294846
复制相似问题