【发布时间】:2017-08-10 19:14:44
【问题描述】:
我有一台不支持 HDMI-CEC 的电视,我一直在尝试在 Raspberry Pi 和我的 ChromeCast 之间架起一座桥梁,以便 Raspberry Pi 可以通过从遥控器接收 IR 来暂停或停止播放。
使用 Pi 上的cec-client 我可以看到:
pi@raspberrypi:~/libcec/build $ echo "scan" | cec-client -s -d 1
opening a connection to the CEC adapter...
requesting CEC bus information ...
ERROR: [ 12174] failed to request the physical address
CEC bus information
===================
device #1: Recorder 1
address: 2.0.0.0
active source: no
vendor: Pulse Eight
osd string: CECTester
CEC version: 1.4
power status: on
language: eng
device #4: Playback 1
address: f.f.f.f
active source: no
vendor: Unknown
osd string: Chromecast
CEC version: 1.4
power status: on
language: ???
failure to request the physical address 消息是因为 ChromeCast。
到目前为止,我已将其设为活动源,将 Pi 设为活动源,当然这一切都没有做,因为电视不在乎,但在玩这些时,我还发送了 tx 命令应该暂停,播放或停止。 ChromeCast 均不响应。
这些是我发送的一些命令:
echo "tx 14 44 46" | cec-client -s -d 1
echo "tx 14 44 61" | cec-client -s -d 1
echo "tx 14 44 45" | cec-client -s -d 1
echo "tx 14 41 25" | cec-client -s -d 1
# etc
他们都没有任何回应。
ChromeCast 需要电视才能响应吗?我需要做什么或发送什么特定的东西来让媒体接收器做出响应吗?
编辑:进一步研究表明 Chromecast 发送:
TRAFFIC: [ 47738] >> 4e:83
TRAFFIC: [ 47811] >> 4e:9f
上电时,这是对物理地址和 CEC 版本的请求。
我真的想在我的电视周围扔一个 $CAN10 Pi Zero 和几美元的 IR 接收器并桥接 HDMI-CEC。
【问题讨论】:
-
有效!最后,无论我在哪里看到建议您应该使用上面引用的
tx格式是错误的,正确的格式是: echo "tx 14:44:44" | cec-client -s -d 1 注意分号。叹息^H^H^H^HHuzzah!
标签: raspberry-pi chromecast hdmi