如何在Ubuntu 12.04中为LCD添加显示分辨率?xrandr问题


51

我是Ubuntu新手。我已经安装了Ubuntu 12.04,但仍在尝试为LCD显示器设置正确的分辨率。

LCD的原始分辨率为1920x1080

这是来自的输出xrandr

$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 720, maximum 4096 x 4096
LVDS1 connected 1280x720+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1280x720 60.0*+
800x600 60.3 56.2 
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)

然后创建新的模型:

$ cvt 1920 1080 60
1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

到现在为止还挺好。然后,我使用xrandr以下命令创建新模式:

$ xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

但是出于某种原因,是为VGA(VGA1)输出而不是LCD输出(LVDS1)创建了新模式:

$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 720, maximum 4096 x 4096
LVDS1 connected 1280x720+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1280x720 60.0*+
800x600 60.3 56.2 
640x480 59.9 
VGA1 disconnected (normal left inverted right x axis y axis)
1920x1080_60.00 (0xbc) 173.0MHz <---------- ????!!!!!!
h: width 1920 start 2048 end 2248 total 2576 skew 0 clock 67.2KHz
v: height 1080 start 1083 end 1088 total 1120 clock 60.0Hz

因此,如果我尝试向LVDS1添加模式,则会收到错误消息:

$ xrandr --addmode LVDS1 "1920x1080_60.00"
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 149 (RANDR)
Minor opcode of failed request: 18 (RRAddOutputMode)
Serial number of failed request: 25
Current serial number in output stream: 26

将该新模式添加到VGA1可以正常工作,但我不使用该VGA1输出。


我的笔记本电脑也遇到类似的麻烦。似乎无法像预期的那样将我的分辨率提高到1440x900。
罗马

这些答案对您有用吗?如果是这样,请选择一个作为答案。谢谢!
塔斯(Tass),

Answers:


74

您可以使用xrandr将缺少的分辨率添加到Ubuntu 12.04。

首先,使用cvt创建新的分辨率模式。

sudo cvt 1920 1080 60

部分输出应与此类似:“ Modeline” 1920x1080_60.00“ 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync + vsync”(不带引号)。

接下来,声明一个新的分辨率模式。

sudo xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

接下来,找出您的视频设备的名称。

sudo xrandr -q

该矿被命名为“ Virtual1”(运行虚拟机)。知道设备名称后,您最终可以将新的分辨率模式添加到设备/系统中。

sudo xrandr --addmode Virtual1 1920x1080_60.00

在此处的“添加未检测到的分辨率”部分中查看更多信息:https : //wiki.ubuntu.com/X/Config/Resolution/#Adding_undetected_resolutions


13
在--admode X上获取错误失败的请求错误:BadMatch(无效的参数属性)失败的请求的主要操作码:141(RANDR)失败的请求的次要操作码:18(RRAddOutputMode)失败的请求的序列号:39输出中的当前序列号流:40
lenzai 2013年

我在Acer x233H上的Ubuntu 13.10上对其进行了测试,并且可以正常工作,但是一旦我重新启动,我会收到消息“无法为监视器应用存储的配置”,并且高分辨率选项不再可用。有没有办法使更改永久化?
stragu

我还收到BadMatch错误X失败请求错误:BadMatch(无效的参数属性)失败请求的主要操作码:140(RANDR)失败请求的次要操作码:18(RRAddOutputMode)失败请求的序列号:41输出中的当前序列号直播:42
菲利普·加乔德

使用“ xrandr -q”找出模式。以我
为例,

可在我的机器上运行,而无需重新启动。谢谢
Duc Tran

15

此链接对我有所帮助。

简而言之:像您一样运行xrandr和cvt,然后创建以下文件:

/usr/share/X11/xorg.conf.d/10-monitor.conf

在文件中,根据您的规范更改<>中的参数:

Section "Monitor"
  Identifier "Monitor0"
  <INSERT MODELINE HERE>
EndSection
Section "Screen"
  Identifier "Screen0"
  Device "<INSERT DEVICE HERE>"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    Depth 24
    Modes "<INSERT MODENAME HERE>"
  EndSubSection
EndSection

这是到目前为止对我来说唯一
可行的

“ MODENAME” =“ 1920x1080_60.00”吗?
蜜蜂

在Ubuntu 16.04上不起作用。我想一切都取决于显卡。如果它不支持所需的分辨率,它将无法正常工作。
Footniko
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.