Xix*_*xor 8 display bash bash-scripting
我使用 ddcutil 作为命令行替代方案,以代替物理按下显示器上的按钮将输入从 HDMI 更改为 DisplayPort,并最初将其设置为使用两个命令从一个切换到另一个 -
ddcutil -d 1 setvcp 60 0x0f告诉显示器切换到 DisplayPort(-d 1 是“显示 1”,“setvcp”是更改设置的命令,“60”是显示器的输入功能代码,“0x0f”是显示端口代码) 和
ddcutil -d 1 setvcp 60 0x11与 HDMI 代码“0x11”相同
这两个命令成功运行并且符合预期。
目前我需要帮助的是创建一个脚本来检查监视器的当前状态,并根据当前状态切换到其他输入。这样我就可以将脚本绑定到键盘上的单个“切换”按钮,而不是使用两个单独的按钮,一个用于 DP,一个用于 HDMI。
ddcutil 的手册页表明该命令ddcutil -d 1 getvcp 60 --brief将返回监视器的当前状态 - 我尝试了这个,它似乎在显示端口上工作;显示端口上的输出是:VCP 60 SNC x0f。当我切换到 HDMI 并运行相同的命令时,输出是相同的:“VCP 60 SNC x0f”。
所以这可能确实是一个双管齐下的问题:
小智 9
我是ddcutil的开发者
x60 功能(输入源)的行为方式因显示器而异。一些监视器仅接受来自当前输入源的命令,其他监视器接受来自任何源的输入。鉴于 setvcp 适用于 getvcp 失败,我怀疑这是监视器的 DDC/CI 实现中的错误。
值得尝试的一件事是在 setvcp 之后立即发出命令“ddcutil scs”(保存当前设置)。有些监视器执行此命令,有些则不执行,并且它们的解释方式也各不相同。
另一件值得注意的事情是:有些显示器仅接受来自当前所选输入的 DDC/CI 命令,而其他显示器则接受任何输入的命令。您是否测试过来自输入源的 getvcp 命令?如果HDMI输入源是Windows,则可以使用EnTech的softMccs发出任何DDC命令。
| 归档时间: |
|
| 查看次数: |
8554 次 |
| 最近记录: |