为什么当我通过 CEC-Client 发送 <Active Source> 消息时,我的输入源没有改变?

Why is my input source not changing when I send the <Active Source> message via CEC-Client?

Problem/Question

当我使用 CEC-Client 发送活动源命令以将电视输入切换到特定源时,没有任何反应。我做错了什么?

环境

我有一个 Raspberry Pi 4 运行 Raspbian 插入 Vizio 电视。我已经安装了 cec-client(通过 cec-utils),并且我在 Raspberry Pi.

上的 Bash 中使用它 运行 命令

这是我设置的 CEC 总线的扫描:

CEC bus information
===================
device #0: TV
address:       0.0.0.0
active source: no
vendor:        Unknown
osd string:    TV
CEC version:   1.3a
power status:  on
language:      eng


device #1: Recorder 1
address:       4.0.0.0
active source: yes
vendor:        Pulse Eight
osd string:    CECTester
CEC version:   1.4
power status:  on
language:      eng


device #4: Playback 1
address:       1.0.0.0
active source: no
vendor:        Unknown
osd string:    Roku
CEC version:   1.4
power status:  on
language:      ???


currently active source: Recorder 1 (1)

我尝试过的:

很多东西。
更具体地说:

其他信息

我在哪里

任何 help/feedback 将不胜感激!我束手无策,想不出还有什么我还没有尝试过的。

(也欢迎对我的问题提出任何反馈;我对在 StackExchange 网络上发帖还是很陌生)

因此,事实证明在启动 cec-client 时设置类型(-t--type)对我来说是必要的。 -t t-t p 似乎是最好的选择。它仍然非常挑剔(或者我会做更多测试 post 一个更确定的答案)。

我打算将类型设置为调谐器 (t),因为它允许我切换输入,并且不会阻止我像音频一样使用遥控器更改电视音量 (a) 做了,但它仍然是一种我不会插入电视的设备类型,所以我不必担心会混淆它或其他任何东西。如果这似乎对任何事情都有帮助,我可能最终会在未来切换到播放 (p)。显式设置录音机(r)实际上也工作过一次,但我认为电视仍然认为它是一个音频设备(因为我仍然无法改变音量。我花了一段时间和很多时间来修复那...)。

(如果有人知道为什么这是必要的,即使使用内置的 as 命令也可以在启动时不指定类型或更改类型的影响的更多详细信息,我会接受他们的答案。)