有没有什么方法可以在 Windows 上以编程方式打开/关闭 HDMI 电视?
使用应用程序或脚本/编程接口。
答案1
首先检查你的显卡(硬件)是否支持 HDMI CEC。然后驱动程序也必须支持它。但根据这个审查,很少有卡支持CEC。
对于不支持 CEC 的 PC,有多种产品可以添加 CEC 支持。它们通过 HDMI 电缆和 USB 连接 PC 和电视。软件通过 USB 向适配器发送 CEC 命令。此类产品的一个例子是:USB HDMI CEC 适配器来自 Pulse-eight。
答案2
有一种解决方法可以从 PC 关闭电视(尤其是三星电视):通过 TCP/IP。
如果您的电视支持 tcp/ip 命令(几乎所有具有网络功能的三星电视都支持),您可以在电脑上安排关机脚本。当您关闭电脑时,该脚本将自动运行 python 代码,通过 TCP/IP 将“电源按钮”交互发送到电视。您只需要一些软件;
- 适用于 Windows 的 Python -https://www.python.org/downloads/windows/
- samsungctl python 库和代码 -https://github.com/Ape/samsungctl,
- Windows 组策略编辑器将脚本链接到关机事件(包含在 Windows 中)。
- 示例 Python 代码
指导:
- 安装适用于 Windows 的 Python,
- 下载 samsungctl zip,
- 按照 github 页面上的安装指南安装 samsungctl,
- 在电视菜单上为电视分配一个静态 IP,
- 将以下代码在记事本中保存为shutdown.py(不要忘记将代码中定义的IP更改为电视的静态IP->“host:xxx.xxx.xxx.xxx”):
#!/usr/bin/env python3
import samsungctl
import time
config = {
"name": "samsungctl",
"description": "PC",
"id": "",
"host": "192.168.0.10",
"port": 55000,
"method": "legacy",
"timeout": 0,
}
with samsungctl.Remote(config) as remote:
for i in range(1):
remote.control("KEY_POWEROFF")
time.sleep(0.5)
- 然后创建并保存一个批处理(BAT)文件,如下所示:
"python 安装文件夹的 PATH"\python "SHUTDOWN.PY 文件夹的 PATH"\shutdown.py
- 然后运行组策略编辑器并选择“组配置\Windows 设置\脚本\关机”并选择上面创建的 BAT 文件。
就是这样!每当您关闭 PC 时,脚本都会自动运行并通过 TCP/IP 关闭您的三星电视。