
最近我購買了全新的華碩 PB278Q 顯示器。
當嘗試連接到我的筆記型電腦時,一切正常,只是我無法使顯示器的原始解析度 (2560x1440) 正常工作。自動為 1920x1080。
我的顯示卡是 Nvidia GeForce 320m。這是它的
輸出:lspci
~$ lspci | grep VGA
02:00.0 VGA compatible controller: NVIDIA Corporation GT216M [GeForce GT 320M] (rev a2)
並且xrandr
:
~$ xrandr
Screen 0: minimum 8 x 8, current 3286 x 1437, maximum 8192 x 8192
VGA-0 disconnected (normal left inverted right x axis y axis)
LVDS-0 connected primary 1366x768+0+669 (normal left inverted right x axis y axis) 344mm x 193mm
1366x768 60.0*+
HDMI-0 connected 1920x1080+1366+0 (normal left inverted right x axis y axis) 600mm x 340mm
1920x1080 60.0*+ 59.9 50.0 30.0 25.0 24.0 60.0 50.0
1680x1050 60.0
1440x900 59.9
1280x1024 75.0 60.0
1280x960 60.0
1280x800 59.8
1280x720 60.0 59.9 50.0
1152x864 75.0
1024x768 75.0 70.1 60.0
800x600 75.0 72.2 60.3 56.2
720x576 50.0
720x480 59.9
640x480 75.0 59.9 59.9
480x576 50.0
480x480 59.9
我的機器上安裝了專有驅動程序,以下是有關顯示器的資訊nvidia-settings
(實際上我沒有足夠的聲譽來發布圖像,所以這裡是文字):
Chip Location: Internal
Signal: TDMS
Connection link: Single
Native resolution: 2560x1440
Refresh rate: 60.00 Hz
顯示器透過 HDMI 線連接到筆記型電腦,老實說我不知道它是什麼版本,以及我的顯示卡的 HDMI 輸出是什麼版本。我試著在網路上尋找如何解決這個問題,但沒有成功。另外,我的顯示卡只有 VGA 和 HDMI 輸出,因此我無法測試 DVI-D 電纜和 DisplayPort。
顯然,那裡有問題。至少我想確切地知道發生了什麼事。我試著看看這是否是Linux特定的問題,但Windows預設也給了我相同的解決方案。
我已經嘗試過的:
- 透過 VGA 連接(愚蠢的一個,當然它給了我 1920x1080)。
- 檢查了兩條 HDMI 電纜(不確定它們是否相同,如上所述)。
- 嘗試
xrandr
並新增自訂模式。沒有幫助。 - 在網路上搜尋了很多訊息,但無法得到合適的結果。
實際上xrandr
給了我以下內容:
~$ 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_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
~$ xrandr
Screen 0: minimum 8 x 8, current 3286 x 1437, maximum 8192 x 8192
VGA-0 disconnected (normal left inverted right x axis y axis)
LVDS-0 connected 1366x768+0+669 (normal left inverted right x axis y axis) 344mm x 193mm
1366x768 60.0*+
HDMI-0 connected primary 1920x1080+1366+0 (normal left inverted right x axis y axis) 600mm x 340mm
1920x1080 60.0*+ 59.9 50.0 30.0 25.0 24.0 60.0 50.0
1680x1050 60.0
1440x900 59.9
1280x1024 75.0 60.0
1280x960 60.0
1280x800 59.8
1280x720 60.0 59.9 50.0
1152x864 75.0
1024x768 75.0 70.1 60.0
800x600 75.0 72.2 60.3 56.2
720x576 50.0
720x480 59.9
640x480 75.0 59.9 59.9
480x576 50.0
480x480 59.9
2560x1440_60.00 (0x34f) 312.2MHz
h: width 2560 start 2752 end 3024 total 3488 skew 0 clock 89.5KHz
v: height 1440 start 1443 end 1448 total 1493 clock 60.0Hz
~$ xrandr --addmode HDMI-0 2560x1440_60.00
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 18 (RRAddOutputMode)
Serial number of failed request: 29
Current serial number in output stream: 30
我接下來打算做什麼:
- 嘗試另一條 HDMI 電纜?
- 試試 HDMI 轉 DVI-D 電纜?
- 嘗試 HDMI 轉 DisplayPort 電纜?
- 另一種類型的適配器? VGA 轉 DVI-D?
- 購買另一台有另一塊顯示卡的筆記型電腦。該死。
- 我的想法差不多到這裡就結束了。
有任何想法嗎?
任何解釋為什麼它不起作用的解釋都值得讚賞。
編輯:
透過在 nvidia 設定管理器中設定自訂分辨率,我成功地在 Windows 8 上透過 HDMI 轉 DVI-D 電纜使其工作。
雖然顯示器輸出時經常出現電纜連接不良的情況(據說需要雙鏈路),但實際上已設定了高解析度。
我嘗試設定自訂解析度xrandr
失敗,並出現與上述相同的錯誤。
答案1
這就是我讓我的 ASUS PB278Q 工作的方法:在終端機中:
$ cvt -v 2560 1440 40
2560x1440 39.96 Hz (CVT) hsync: 58.98 kHz; pclk: 201.00 MHz
Modeline "2560x1440_40.00" 201.00 2560 2720 2984 3408 1440 1443 1448 1476 -hsync +vsync
$ xrandr --newmode "2560x1440_40.00" 201.00 2560 2720 2984 3408 1440 1443 1448 1476 -hsync +vsync
$ xrandr --addmode HDMI1 "2560x1440_40.00"
答案2
我有和你一樣的顯示器,透過 HDMI 以原始解析度 (2560x144) 運作。我的 Sony Vaio S 15 筆記型電腦配備 Intel Ivy HD 4000 顯示卡。
做了以下工作:
xrandr --newmode "2560x1440" 220.812 2560 2608 2640 2720 1440 1443 1448 1478 -hsync -vsync
xrandr --addmode HDMI1 2560x1440
xrandr --output HDMI1 --mode 2560x1440
答案3
這是一個編寫的腳本,用於使用不同的刷新率並找到適合我的顯示器的腳本。
這有點奇怪,但在我輸入“40”作為第一個參數後它就起作用了。 './cv 40',然後在 Ubuntu 顯示設定中設定解析度。
如果在第二個參數 cvt 中傳遞「-i」會建立隔行掃描更新率,請將裝置 DEV 變更為您的裝置。 --hth
#!/bin/bash
DEV=HDMI1
NAME=2560x1440i
WID=2560
HIG=1440
FRQ=$1
INTERLACE=$2
MODELINE=`cvt $INTERLACE $WID $HIG $FRQ | sed "1 d" | sed 's/^.*\"//'`
echo $MODELINE
xrandr --delmode $DEV "$NAME" &2>/dev/null
xrandr --rmmode "$NAME" &2>/dev/null
echo creating new mode $NAME $MODELINE
xrandr --newmode "$NAME" $MODELINE
echo adding mode.
xrandr --addmode $DEV $NAME