背景

买的 Soundbar HDMI 输出最高到 60hz, 可是我是 165hz 的显示器。打游戏的时候可就出大问题了,要么忍受 60hz 惨痛体验,那我买 165hz 的显示器干啥呢;要么每次打游戏都手动插线拔线调整。解决方案是有的,但是需要 Soundbar 有 HDMI IN + OUT 两个输出,外加显示器有两个信号输入(可以是 DP + HDMI)。我的电脑使用的是 Windows 10,Windows 11 不知道会不会有效。

我打赌有人看到这个标题,绝对会说 “为什么不用 Digital Optical Cable?”。答案很简单:受限于带宽,它不支持多 channel 的 LPCM 协议。比如 Dolby Digital Plus, Dolby Atmos, DTS Master, DTS:X 等等。我觉得要是输出 Stereo PCM 到 soundbar 的话的话,还不如去买个音响连 3.5,完全避免这种烦恼。

解决方案

我现在是 DP 传输画面,HDMI 传输声音。理论上来说两个 HDMI 分别传输画面和声音也是可以的,但是我懒得试了。我的实现步骤如下:

  1. 分别连接好显示器到显卡,soundbar 到显卡,soundbar 到显示器。
  2. 在 Windows 声音控制中选择输出为 soundbar,这个时候 soundbar 应该可以正常输出声音了。如果在声音输出设备中找不到 soundbar 的话,可能需要把显示器的信号输入源改为 HDMI(连接 Soundbar 的那个)。
  3. 拔掉连接显示器到 soundbar 的 HDMI 线缆。这个时候应该还是可以输出声音到 soundbar 的。并且重启有效。

这个时候还没有完。如果你打开 Windows 显示设置的话,你会发现 Windows 设置里面是双显示器的一个操作。
https://i.imgur.com/GjiDKKf.png

这是因为 Nvidia 显卡只有检测到它的一个输出端口连接到了一个显示器才会传输数据。所以如果只连接 soundbar 的话会因为没有可以输出的设备导致不输出声音. 至于为什么拔掉那条连接 soundbar 和显示器的线之后它还认为自己连着个显示器,我就不知道了。
话说回来,我们的出发点是要打游戏的时候能打到 165hz。你以为这就完美了?把你的鼠标往显示器的边缘使劲拉,然后再尝试来回来试试。虽然我们没有两台显示器,但是 Windows 认为我们有两台显示器。所以当鼠标被挪到了一台显示器的边缘的时候,Windows 会判断它被移动到了另一台显示器的显示领域。虽然我们压根没有第二台显示器。
这个行为会导致在例如 CSGO 等游戏中,如果往一个方向快速拉枪,你的鼠标会被判断飞出这个显示器。然后恭喜你,你在 CSGO 中站着不动了。等待接受队友的压力吧。
解决方法其实也很简单,装个叫 Dual Monitor Tools 的软件,限制鼠标区域在当前显示器就可以了。

https://i.imgur.com/iT4LUlE.png

除另有声明外,本博客文章均采用 知识共享(Creative Commons) 署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。