Menu Home

使用modeline强制屏幕分辨率

OS:ubuntu 12.04

生成Modeline

cvt 1440 900 60  #命令格式:横向分辨率  纵向分辨率  刷新率

输出结果可能如下,其中Modeline行即是我们需要的:

# 1440x900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz
Modeline "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync

查看系统当前的屏幕输出端口

xrandr

我的输出结果如下:

HDMI-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1600x900       60.0  
   1280x1024      75.0     60.0  
   1280x800       59.8  
   1280x720       60.0  
   1024x768       75.0     60.0  
   800x600        75.0     60.3  
   640x480        75.0     59.9  

添加新的Modeline

sudo xrandr --newmode "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync #这里的参数是我们第一步中得到的

再次运行xrandr查看这个Modeline是否已经写进去了:

xrandr

输出如下:

HDMI-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1600x900       60.0  
   1280x1024      75.0     60.0  
   1280x800       59.8  
   1280x720       60.0  
   1024x768       75.0     60.0  
   800x600        75.0     60.3  
   640x480        75.0     59.9  
  1440x900_60.00 (0x298)  106.5MHz
        h: width  1440 start 1528 end 1672 total 1904 skew    0 clock   55.9KHz
        v: height  900 start  903 end  909 total  934           clock   59.9Hz

从上面的结果最后可以看到已经有了1440×900这个分辨率,刷新率是60,有的显示器可能上不去60,会黑屏,那可以适当降低刷新率,以减小带宽。

设置分辨率

sudo xrandr --addmode HDMI-1 1440x900_60.00
sudo xrandr --output HDMI-1 --mode 1440x900_60.00

查看是否设置成功

sudo xrandr

输出结果:

HDMI-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1600x900       60.0  
   1280x1024      75.0     60.0  
   1280x800       59.8  
   1280x720       60.0  
   1024x768       75.0     60.0  
   800x600        75.0     60.3  
   640x480        75.0     59.9  
  1440x900_60.00 (0x298)  106.5MHz
        h: width  1440 start 1528 end 1672 total 1904 skew    0 clock   55.9KHz
        v: height  900 start  903 end  909 total  934           clock   59.9Hz

第一行显示当前分辨率为1440×900 。

其它尝试

如果经过上面的步骤还是不成功,那么可以试试加上下面的几个选项:

Section "Device"
    Option         "UseEDID" "False"
    Option         "UseEDIDFreqs" "False"
    Option         "ExactModeTimingsDVI" "True"
    Option         "ModeValidation"  "NoTotalSizeCheck, NoDFPNativeResolutionCheck, NoEdidModes, NoMaxPClkCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoEdidMaxPClkCheck"

EndSection

这些选项的具体含义,请查看 这里

Categories: linux x11 系统管理

Tagged as:

lnmcc

1 reply

Leave a Reply

Your email address will not be published.