所以,我有一个常见但特别奇怪的问题。多年来,我有一台运行 Ubuntu 18.04 LTS 的 PC Tower 连接到电视作为我的媒体计算机。我升级到更新的电视,但塔无法向新电视发送信号。以下是内幕:
- 其他电脑(运行windows)可以用相同的HDMI线和相同的端口插入电视,它在电视上显示很好(视频和音频)
- 我可以将塔插回旧电视,它显示正常
- 塔的背面有 2 个 HDMI 端口,但连接到主板的那个似乎无法正常工作 - 无论哪台电视插入该端口,都没有显示。不幸的是,这意味着我不能有“双显示器”设置,并且一次只能有 1 个视口。
- 如果我将HDMI插入旧电视,让它在那里等待10秒钟左右,然后切换到新电视,然后视频/音频转到新电视!但是,如果我重新启动,或者我做了任何会触发“查找”显示的事情(例如打开“显示”设置、
xrandr
在终端中运行或运行像 Kodi 这样的全屏应用程序),那么信号丢失了。 - 当信号丢失时,我可以再次将旧电视重新插入 10 秒钟,然后重新插入新电视,一切都恢复了。
- 如果我在连接到新电视时启动塔,我可以看到主板的启动屏幕和紫色的 Ubuntu 启动屏幕 - 然后信号丢失。
- 由于我无法运行
xrandr
或打开显示器,因此很难对新电视无法接收信号的原因进行故障排除。 - 我试过删除显示器的配置文件,但这并没有解决问题。在我这样做之后旧电视仍然可以工作(尽管我不得不重新调整一些设置),但是新电视在 boot/ 时仍然没有收到信号
xrandr
。 - 我隐约记得,在第一次设置旧电视时,我可能会遇到类似的问题(如果不完全相同的话)。显然当时我已经解决了,但也是很多很多年前的事了,所以如果我以前解决过这个问题,我已经不记得我必须做什么了。此外,它可能与旧版本的 Ubuntu(可能是 13.10)一起使用,因此旧的解决方案可能不再适用。
我只是希望能够将新电视用作这台媒体计算机的显示器。如果有人有建议,我很想听听。
编辑:
- 我可以使用启动驱动器,重新启动计算机,它会在新电视上正常显示。这告诉我当前安装的某种配置不适用于新电视,但我不知道它隐藏在哪里,或者如何调整/修复它。
- 就重要而言(可能不重要),旧电视是飞利浦 32 英寸,新电视是 Sceptre 55 英寸。两台电视都是哑电视。旧电视是 720p,60Hz 刷新。新电视是 4K (2160p),也是 60Hz 刷新。
- 塔中的显卡是 NVidia 显卡 (GeForce GT 610),使用 X.Org X Server 驱动程序。
这很有可能是 EDID 问题。Tower 和新电视未就使用的分辨率达成一致。我会尝试保存旧电视的 Edid 信息,并在连接到新电视时强制塔使用此 edid,或强制解决。此处或多或少描述了如何执行此操作:
使用保存的 EDID,以便 Ubuntu 在电视关闭时启动以纠正分辨率
好吧,这是一个奇怪的故事,我觉得它证实了oscar1919的回答(在此处记录只是为了获得更多详细信息,无法发表评论):
凭直觉,我插入了两台电视(使用旧电视主板上的旧“不工作”HDMI端口)并确保两台电视都打开(这样它们就会发送它们的 EDID)。通过该配置,我能够在新电视上打开显示设置并
xrandr
在旧电视上成功运行。显示设置甚至显示电视是 Scepter(新电视品牌)!它确实显示了错误的电视尺寸(32 英寸而不是 55 英寸),但我认为这是一个不同的 EDID 问题。走到这一步后,我重新启动,看看视频设置是否仍然存在。的确,他们做到了!新电视在启动时工作,无需拔下/重新插入。
作为最后的测试,我拔掉了旧电视并重新启动。新电视工作正常,没有插入旧电视。奇怪的是,这能奏效,因为我之前已经打开并连接了两台电视,但问题仍然存在。但是,这一次,确保两台电视在我将它们插入计算机之前都已打开 - 我认为这可能会有所不同。
还有一些奇怪的地方——比如它说显示器只有 32 英寸,并且说最高分辨率只有 1080p 而不是 4K(很烦人,但我可以忍受)。
TL;博士:
xrandr
以下是有关 nVidia 问题和解决方案的非常详尽的信息:
我将首先查找以下错误:
/var/log/Xorg.0.log
/var/log/syslog
另一个考虑因素是 Live USB 将使用nouveau驱动程序,而您安装的版本可能使用专有的 nVidia 驱动程序。您可能希望暂时将 nVidia 驱动程序列入黑名单并使用默认驱动程序,考虑到您的卡的使用年限,这些驱动程序应该可以很好地工作。很难找到有关如何将 nvidia 列入黑名单并使用 nouveau 的链接,因为 99% 的人想要相反。不过,这很接近: