ホーム » コンピュータ » Linux » Debian » cec-clientをhomebridgeから制御

システム

最近の投稿

アーカイブ

カテゴリー

cec-clientをhomebridgeから制御

今までは、iOS の HOME 機能を、linux環境で動くフリー実装の homebridge を使って、赤外線リモコンを制御していた。 しかし、AV機器のON/OFFでは、電源ボタンでON⇒OFFなのかOFF⇒ON なのか分からない。このため、ネットワーク対応の機器だし、 ping の結果に応じて 電源ボタン信号を出していた。

ただ、TVなどは、電源OFFの状態でも、EPG情報取得などのために OS が動いているため、OFF 状態の判定に失敗する。

そこで、先日見つけた HDMI 経由から制御信号を送る cec-client を試してみた。cec-client では、機器のON/OFF を判定しているので、 確実に ON/OFF できるはず。cec-client は、サーバ機では使えなかったので、 Raspberry-Pi を使ってみた。

$ echo "on 1" | cec-client -d 1 -s      # 1番機器をON
$ echo "standby 2" | cec-client -d 1 -s # 2番機器をOFF
$ echo "scan" | cec-client -d 1 -s      # 機器一覧をスキャン
device #0: TV         ← REGZA
address:       0.0.0.0
vendor:        Toshiba
osd string:    TV
power status:  on
device #1: Recorder 1 ← VARDIA
address:       2.0.0.0← HDMI入力ソース番号
vendor:        Toshiba
osd string:    RD-S502
power status:  standby ← 電源状態
device #2: Recorder 2  ← Raspberry-Pi
address:       1.0.0.0
vendor:        Toshiba
osd string:    CECTester
power status:  o
device #3: Tuner 1    ← CATV-STB
address:       1.0.0.0
vendor:        Panasonic
osd string:    Tuner 1
power status:  on
device #4: Playback 1 ← PS4
address:       3.0.0.0
vendor:        Sony
osd string:    PlayStation 4
power status:  standby

AVソースの切り替え

今までは、赤外線リモコン信号で、ON/OFF を制御していたので、 HDMI 連動設定をしているおかげで、ケーブルTVのチューナーON で、テレビの電源も ON となり、さらにビデオ入力も対象機器に 切り替わる。

ただ、cec-client に切り替えたら、機器の制御信号をだすのが、 別機器なので、TV電源連動や、ビデオ入力切替連動とならない。

しかたがないので、TVのビデオ入力切替信号も出してみる。

echo "tx 2f:82:10:00" | cec-client -d 1 -s
# 2番のHDMIデバイス(raspberry-pi)から、
# 全デバイス宛て(f番)の信号で、
# 82 映像切替コマンドを送る。(TOSHIBA REGZAの場合)
# 10:00 は、ビデオ切り替えの番号

Google 検索

My Google   Yahoo

Microsoft

ファンサイト