4K 电视通过 HDMI 连接时刷新率错误、EDID 缺失、画面撕裂

4K 电视通过 HDMI 连接时刷新率错误、EDID 缺失、画面撕裂

我正在尝试使用一台运行 Ubuntu 22.04 的迷你电脑(带有 Intel N95 CPU 的 Trigkey G4)作为家庭影院电脑,通过 HDMI 2.1 电缆连接到我的海信 U6G 电视。它连接并能够以完整的 3840x2160 分辨率显示,但播放视频时会出现严重的屏幕撕裂(在 VLC 和 Firefox、窗口和全屏、KDE ​​Plasma 和 Gnome 中)。在尝试调试此问题时,我注意到 xrandr 提供的有关可用模式的信息不完整且不正确:

$ xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 3840 x 2160, current 3840 x 2160, maximum 3840 x 2160
default connected primary 3840x2160+0+0 (0x522) normal (normal) 0mm x 0mm
    Identifier: 0x521
    Timestamp:  19564
    Subpixel:   unknown
    Clones:    
    CRTC:       0
    CRTCs:      0
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    _MUTTER_PRESENTATION_OUTPUT: 0 
    non-desktop: 0 
        supported: 0, 1
  3840x2160 (0x522) 729.907MHz *current
        h: width  3840 start    0 end    0 total 3840 skew    0 clock 190.08KHz
        v: height 2160 start    0 end    0 total 2160           clock  88.00Hz

请注意 88.00 Hz 时钟,而这台电视仅能达到 60 Hz。在我看来,以错误的速率发送帧可能是造成撕裂的原因。还请注意缺少 EDID 信息——当我尝试运行时get-edid,它失败了Couldn't find an accessible EDID on this computer.

为了排除电视本身或电缆的问题,我将它连接到我的旧笔记本电脑(也运行 Ubuntu 22.04),这台笔记本电脑可以毫无问题地显示视频,不会出现撕裂,并且可以毫无问题地读取 EDID。我尝试复制好的 EDID 并通过命令drm.edid_firmware行选项将其提供给内核,但这并没有明显的效果。

到目前为止,我已经尝试了在网上找到的大多数建议——将 设置20-intel.confTearFreetrue 没有任何效果,设置i915.alpha_supportnomodeset或 也没有任何效果GRUB_GFXMODE,并且xrandr不允许我更改模式。

我还可以尝试什么来获得流畅的视频输出?

答案1

问题出在 22.04 附带的内核不支持英特尔 N95 等较新处理器上的集成 GPU。为了解决这个问题,我linux-generic-hwe-22.04按照建议 安装了https://askubuntu.com/a/1484943/1731290现在一切都运行良好。它甚至修复了另一个我不确定是否相关的问题,即无法检测到 HDMI 音频输出。

相关内容