我刚刚买了一台 UP2414Q,并通过运行频率为 60hz 的 DisplayPort 1.2 连接了它。问题是它最终会显示两个屏幕,所以它最终表现得好像我的一个 24 英寸框架内有两个显示器一样。
我查看了 nvidia 设置,但找不到让它们合并为单个宽屏显示器的方法。我发现了一些提示,例如
OPTION "TwinViewXineramaInfoOverride" "3840x2160+0+0"
或者
Option "NoTwinViewXineramaInfo" "1"
两种方法都不起作用。我想知道我是否遗漏了难题的另一部分。任何关于如何纠正我的配置的提示都将不胜感激。我目前正在运行新的 Trusty 每日构建版,希望更新的 X 和 nvidia 驱动程序能够提供帮助。
我已将我当前的 X 配置粘贴在下面并链接到下面的 X 日志。
这是当前双显示器设置的屏幕截图。请注意,窗口管理器就像有两个不同的显示器一样运行。
http://uploads.mitechie.com/xorg-setup.png
日志档案:http://paste.ubuntu.com/6654719/
xrandr 输出:http://paste.ubuntu.com/6669699/
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 331.20 (buildd@batsu) Mon Dec 9 17:08:08 UTC 2013
xdpyinfo-ext XINERAMA|tail-2
head #0: 1920x2160 @ 0,0
head #1: 1920x2160 @ 1920,0
xorg配置文件
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "Files"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL UP2414Q"
HorizSync 31.0 - 140.0
VertRefresh 29.0 - 75.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 660 Ti"
EndSection
Section "Screen"
# Removed Option "metamodes" "DP-1.8: 1920x2160_60 +1920+0, DP-1.9: 1920x2160_60 +0+0"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-4.8"
Option "metamodes" "DP-1.8: nvidia-auto-select +1920+0, DP-1.9: nvidia-auto-select +0+0"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
参考:
答案1
我正在处理 Panasonic TC-L65WT600 的相同问题,虽然我还没有找到完美的解决方案,但我遇到了这个对我来说有点作用的解决方法。
添加行
Option "Xinerama" "1"
添加到您的 xorg.conf Section "ServerLayout"
。
这是违反直觉的,因为这实际上会破坏 Xinerama 和 RandR。NVIDIA 驱动程序有自己的 Xinerama 和 RandR 实现,通过启用常规 Xinerama 扩展,它会与 NVIDIA 的实现相冲突,结果是两者都被禁用。
我还没有彻底测试过它是否会破坏其他任何东西,但作为临时解决方法值得一试……
答案2
所以我猜你是按照显示器的用户指南来了解如何允许 4K 分辨率的。关联第 45-46 页:
设置 DP1.2 显示屏
UP2414Q 的出厂默认设置是 DP1.1a。要启用 3840 x 2160 @ 60 Hz,请确保 DP 源的显卡经过 MST 功能认证,能够支持高达 3840 x 2160 @ 60 Hz 的分辨率,并且其驱动程序支持 DisplayID v1.3,然后通过执行以下步骤将 DP 设置更改为 DP1.2:...
阅读手册中的其余内容
我查了你的 GPU这里。据说它支持 DP1.2 MST。(如果我没记错的话)所以这应该不是问题。
我不知道这个 4K 是如何工作的,所以我寻找了更多关于这个主题的信息。所以看起来这是显示器显示为两个显示器的正常方式,你只需要为 nvidia 卡启用水平跨越。(使两个显示器成为一个大的虚拟显示器。)
我查看了 nvidia 驱动程序的自述文件,第十二章。根据那里给出的信息以及 Xorg.log 中的这些行:
[ 259.448] (II) NVIDIA(0): Virtual screen size determined to be 3840 x 2160 [ 263.248] (II) NVIDIA(0): Setting mode "DP-1.8:nvidia-auto-select+1920+0,DP-1.9:nvidia-auto-select+0+0"
我认为您的驱动程序已正确设置,可以模拟 X 服务器的联合虚拟屏幕。
日志中稍后会出现以下几行:
[ 264.017] (II) NVIDIA(0): Setting mode "DP-1.8: nvidia-auto-select @1920x2160 +1920+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}, DP-1.9: nvidia-auto-select @1920x2160 +1920+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}" [ 264.055] (II) NVIDIA(0): Setting mode "DP-1.8: nvidia-auto-select @1920x2160 +0+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}, DP-1.9: nvidia-auto-select @1920x2160 +1920+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}" [ 272.635] (II) XKB: reuse xkmfile /var/lib/xkb/server-75DD9E258FEFC19A572284D7C4A5BC6BFE771BAD.xkm [ 336.272] (II) NVIDIA(0): Setting mode "DPY-6:nvidia-auto-select+1920+0,DPY-7:nvidia-auto-select+0+0"
第一行设置了一个模式,这不是你想要的模式,因为这样会镜像两个屏幕,因为+1920+0两者的偏移。(如果我理解正确的话)但下一行立即将模式重置为正确模式。最后一行比其他行晚了一分钟,我不知道那是什么,DPY-x 屏幕从哪里来的。
我唯一的猜测是,当 nvidia 驱动程序报告正确的虚拟屏幕尺寸时,它会说:
[ 259.448] (II) NVIDIA(0): "DP-1.8:nvidia-auto-select+1920+0,DP-1.9:nvidia-auto-select+0+0"
而在结尾处(或几乎结尾处)有这样一行字:
[ 264.055] (II) NVIDIA(0): Setting mode "DP-1.8: nvidia-auto-select @1920x2160 +0+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}, DP-1.9: nvidia-auto-select @1920x2160 +1920+0 {ViewPortIn=1920x2160, ViewPortOut=1920x2160+0+0}"
这意味着这两行的偏移量是相反的。因此,在前者中,DP-1.9 显示器是第一个,DP-1.8 是第二个,但在后者中顺序发生了变化。由于您没有提供屏幕图片,因此我无法知道您的问题是,如果您将光标移到右侧,它会回到左侧。但我可能会尝试将元模式设置为前者。因此,请更改此行:
Option "metamodes" "DP-1.8: nvidia-auto-select +1920+0, DP-1.9: nvidia-auto-select +0+0"
到这个
Option "metamodes" "DP-1.8: nvidia-auto-select +0+0, DP-1.9: nvidia-auto-select +1920+0"
或者尝试使用 MetaModeOrientation 选项,例如:
Option "MetaModeOrientation" "DP-1.8 RightOf DP-1.9"
这就是我对这个问题的看法。希望这对你来说不是完全没用。
答案3
我遇到了同样的问题,并且几乎找到了解决办法。
假设您从 SST 开始,即 DisplayPort 1.2离开在显示器的 OSD 菜单中。xrandr -q
显示您处于 30Hz 模式,并且您无法强制将其设置为 60Hz,因为 SST 不支持它。
在 OSD 中将 DP 1.2 切换为开启。屏幕现在处于 MST 状态,但兰德尔不是 - 而且你仍然无法强制 60Hz。在终端写入xrandr --output DP-1 --off
(用适当的 ID 替换 DP-1)。屏幕将短暂关闭,然后重新打开。现在您处于 MST 中,检查xrandr -q
将确认您有 60Hz!
问题是您有一个重复的背景,菜单栏仅占据屏幕的一半而不是跨越整个屏幕,Youtube 和视频覆盖仅最大化到屏幕的一半。
这显然是一个缺点兰德尔以上提示来自 nVidia 的 Aaron Plattner,回答了我关于如何在 Linux 中为 4K 显示器启用 60Hz 的 MST。
问题尚未解决,他已联系兰德尔社区寻找解决方案。因此,如果有知情人士正在阅读此内容,请查看上面的帖子以获取更多信息,以便我们开始行动!
答案4
好的,我以前用带有 VGA 和 DVI 端口的双头显卡做过这个。我认为它可能适用于 DP1 端口。我认为 xrandr 是可以使用的工具。 http://www.thinkwiki.org/wiki/Xorg_RandR_1.2
运行查询来查看连接的内容。
xrandr -q
尝试测试解决方案:
xrandr --output DP1 --mode 3840x2160
创建 ModeLine。这对于获得正确的刷新率和避免过早烧坏显示器非常重要。使用 cvt:http: slashslash linux.die.net/man/1/cvt
cvt 3840 2160 30
将此 ModeLine 添加到 xorg。
阅读此页面以持久设置 xrandr 更改:
您可能需要编辑 xorg 来添加一个名为 virtual 的 SubSection。