我正在使用英特尔 620 GPU,目前正在运行 Ubuntu 19.10/Wayland。
该系统有一个 eDP 显示器和一个 HDMI 显示器。(基本笔记本电脑 + 显示器设置)。
在 Windows 上这很容易:
1) Configure full RGB range in intel graphics driver control panel.
2) Or, use YUV output because my monitor supports YUV and YUV is ambiguously limited range.
在 X.org 上这是可行的:
xrandr --output HDMI1 --set "Broadcast RGB" "Full"
在 Wayland 上这似乎根本不可能。
通过一些错误报告,我理解的情况似乎是,HDMI 针对的是电视,而电视大多接受有限的 RGB,因此 i915 默认为有限的 RGB 范围。
因此,对于这种硬件组合,我的选择似乎非常有限:
1) Run Windows and use VM if/when I need Ubuntu (high power and memory overhead)
2) Run Ubuntu with X (this will not last forever)
3) Run Ubuntu with Wayland with analog VGA(VGA for 1920x1080@60Hz is somewhat OK, but not more).
4) Run Ubuntu with Wayland with non-TV resolution
有任何想法吗?
答案1
根据快速提示:在 Wayland 中设置色彩空间值作者:Brad T. Laue,我想出了以下解决方案(有点):
- 安装
libdrm-tests
并运行proptest
。 - 对于存在此问题的显示器,请识别连接器编号以及“广播 RGB”属性的编号。
- 切换到 TTY 控制台并运行:
/usr/bin/proptest -M i915 -D /dev/dri/card0 <ID_of_connector> connector <ID_of_property> <value>
尝试<value>
1 或 2。效果立竿见影。您的屏幕应该会变黑一秒钟,然后控制台的黑色背景应该比以前更暗。
- 通过编辑 GDM3 服务配置来使此操作永久生效,以便在 GDM3 启动之前运行此命令。进行备份:
sudo cp /lib/systemd/system/gdm3.service /lib/systemd/system/gdm3.service.bak
然后使用纳米:
sudo nano /lib/systemd/system/gdm3.service
- 在该
[Service]
部分中,在任何其他条目之前添加:
ExecStartPre=-/usr/bin/proptest -M i915 -D /dev/dri/card0 74 connector 76 1
这是我的系统的命令。执行不是忘记-
命令前的。这指示systemd如果命令失败(非零返回代码)则继续。
- 保存并重新启动。
我在我的博客上发表了一篇关于这个“褪色颜色”问题的详细文章:在 Ubuntu 上将全 RGB 设置为 HDMI 显示器。我现在遇到的问题是,这个修复突然停止工作,而我没有做任何更改。该命令在启动时失败,状态为243/CREDENTIALS
,但在我登录并从终端发出 GDM3 重新启动后,它就可以正常工作了。