无法在 Ubuntu 上设置正确的屏幕分辨率

无法在 Ubuntu 上设置正确的屏幕分辨率

基本上,我已经完成了为自己制定决议的所有正确步骤......

$ xrandr --newmode "1824x1036_60.00" a bunch of number -hsync +vsync

(我在另一台电脑上,所以我无法复制和粘贴^)

一切正常,但当我实际使用 HDMI 时,它会将该特定分辨率添加到表内容“DVI-D-0”。因此,当我尝试通过 HDMI 显示器上的 xrandr 更改分辨率时,它不知道我指的“1824x1036_60.00”是什么意思。任何帮助都将不胜感激!:)

PS 分辨率很奇怪,因为它的显示器很奇怪。它没有原生分辨率。

fletcher@fletcher-desktop:~$ xrandr -q
Screen 0: minimum 8 x 8, current 1280 x 720, maximum 16384 x 16384
VGA-0 connected (normal left inverted right x axis y axis)
   1024x768       60.0 +
   1360x768       60.0     59.8  
   1152x864       60.0  
   800x600        72.2     60.3     56.2  
   680x384       119.9    119.6  
   640x480        59.9  
   512x384       120.0  
   400x300       144.4  
   320x240       120.1  
HDMI-0 connected 1280x720+0+0 (normal left inverted right x axis y axis) 708mm x 398mm
   1280x720       60.0*+   59.9     50.0  
   1920x1080      59.9     50.0     30.0     25.0     24.0     30.0     30.0     25.0  
   1024x768       60.0  
   800x600        60.3  
   720x576        50.0     25.0  
   720x480        60.0     59.9     30.0  
DVI-D-0 disconnected (normal left inverted right x axis y axis)
  1808x1036_60.00 (0x2c3)  155.8MHz
        h: width  1808 start 1920 end 2112 total 2416 skew    0 clock   64.5KHz
        v: height 1036 start 1039 end 1049 total 1075           clock   60.0Hz
  1808_1036_60.00 (0x2c4)  155.8MHz
        h: width  1808 start 1920 end 2112 total 2416 skew    0 clock   64.5KHz
        v: height 1036 start 1039 end 1049 total 1075           clock   60.0Hz
  1804_1036_60.00 (0x2c9)  155.8MHz
        h: width  1808 start 1920 end 2112 total 2416 skew    0 clock   64.5KHz
        v: height 1036 start 1039 end 1049 total 1075           clock   60.0Hz
  1920x1200_60.00 (0x2ca)  193.2MHz
        h: width  1920 start 2056 end 2256 total 2592 skew    0 clock   74.6KHz
        v: height 1200 start 1203 end 1209 total 1245           clock   59.9Hz
  1824x1036_60.00 (0x2cb)  156.8MHz
        h: width  1824 start 1936 end 2128 total 2432 skew    0 clock   64.5KHz
        v: height 1036 start 1039 end 1049 total 1075           clock   60.0Hz
  1824x1036_59.00 (0x2d2)  154.0MHz
        h: width  1824 start 1936 end 2128 total 2432 skew    0 clock   63.3KHz
        v: height 1036 start 1039 end 1049 total 1074           clock   59.0Hz
  1824x1036_30.00 (0x2d4)   72.5MHz
        h: width  1824 start 1880 end 2056 total 2288 skew    0 clock   31.7KHz
        v: height 1036 start 1039 end 1049 total 1057           clock   30.0Hz

答案1

使用一些像 arandr 这样的工具。

它允许您以图形方式定义显示器位置和分辨率(从显示器支持的模式中选择),然后它会生成一个使用这些设置调用 xrandr 的脚本。然后您可以使用生成的命令执行任何您想做的事情。

并非所有显示器都支持您创建的自定义分辨率。

答案2

前几天我的液晶电视也遇到了同样的问题。默认分辨率设置会导致过度扫描。我不得不在原始分辨率下创建一个自定义设置,但最小安装似乎不会报告该设置(尽管分辨率在 12.04 live cd 中的 xrandr 下列出)。

无论如何,您走在正确的轨道上。获取可用的自定义模式行是最困难的部分。我在 live cd 中找到了可用的分辨率设置,然后从中复制了模式行。获得模式行后,您可以使用 --newmode 标志将其添加到 xrandr,就像您所做的那样。再执行两个命令,您就可以设置了。

所有信息均可在此处找到:

https://wiki.ubuntu.com/X/Config/Resolution#Setting_xrandr_changes_persistently

首先,您需要确定要使用的显示端口。根据您的原始帖子,我猜这是 HDMI-0。您还需要尝试添加到端口的模式的名称。名称是 xrandr 中每个端口下列出的第一列数字(即 1024x768 或 1360x768 等)。如果您创建了模式行,那么它是 --newmode 命令中引号之间的部分(在您的情况下为“1824x1036_60.00”)。

现在您掌握了这些信息,您可以将新模式添加到您想要的端口......

$ xrandr --addmode HDMI-0 1824x1036_60.00

现在您应该看到 HDMI-0 端口下的 xrandr 中列出了新模式。

您可以使用这个切换到它...

$ xrandr --output HDMI-0 --mode 1824x1036_60.00

xrandr 设置(包括添加的模式)在关机/重启时会丢失。有几种不同的方法可以保留它们。我将这三个命令放入一个脚本中,并在 lightdm 启动时调用该脚本。

相关内容