HDMI-CECのしくみ
CECは、あらゆるHDMIケーブルに通っている、映像信号とは別の共有線1本です。つながった機器は、「スタンバイ」「自分がアクティブソース」「電源の状態は?」といった短いメッセージをやり取りします。この配線はHDMIで必須ですが、機器がCECを実装する義務はありません。あるテレビでは動いても次のテレビでは動かないのは、そのためです(Wikipedia)。
サイネージで重要なメッセージは2つあります:
- One Touch Play(image view on)。プレーヤーが自分がアクティブソースだと伝えると、テレビの電源が入り、その入力に切り替わります。
- System Standby。プレーヤーがテレビにスタンバイへの移行を指示します。
HDMI-CECにはほかの呼び名があります
テレビメーカーは、メニューでCECの名称を変えています。「CEC」が見つからない場合は、メーカーごとの呼び名を探してください(Wikipedia):
| ブランド | メニューでの名称 |
|---|---|
| Samsung | Anynet+ |
| LG | SimpLink |
| Sony | BRAVIA Sync, BRAVIA Link or Control for HDMI |
| Philips | EasyLink |
| Panasonic | VIERA Link, HDAVI Control or EZ-Sync |
| Sharp | Aquos Link |
| Toshiba | CE-Link or Regza Link |
| Hisense, Vizio | CEC |
テレビの設定でオンにします。多くの場合、「一般」「外部機器」「HDMI」のいずれかの下にあります。
HDMI-CECが動かなくなる理由
「CECが動かない」という報告の大半は、次のいずれかが原因です:
- テレビ側でオフになっている。多くのテレビは出荷時にオフになっており、工場出荷時へのリセットやファームウェアの更新で再びオフに戻ることがあります。
- 間に機器が挟まっている。HDMIセレクター、分配器、エクステンダー、AVレシーバーは、CECを遮断したり書き換えたりすることがよくあります。プレーヤーはテレビに直接つないでください。
- ディープスタンバイ中のテレビが起動指示を無視する。最も消費電力の低いモードでCECを切るテレビがあります。クイックスタートやネットワークスタンバイの設定を探し、信頼する前に一晩通しての動作を試してください。
- 別のデバイスがテレビを奪っている。同じテレビにつないだサウンドバー、ゲーム機、2台目のプレーヤーが独自のCECコマンドを送り、入力を切り替えてしまうことがあります。
- プレーヤーがCECを送信できない。多くのストリーミングスティックやAndroidボックスは、アプリからCECコマンドを送ること自体を許可していません。
本当に確かめられるのは実機テストだけです。オフとオンをスケジュールして一晩置き、朝に画面を見るか、エージェントにスクリーンショットとプレーヤーが報告する電源の状態を尋ねてください。
HDMI-CECでテレビを切り替えられるプレーヤー
screenRIGでは、すべてのPlayerが使えるディスプレイ電源の方法を宣言し、エージェントは操作の前にそれを読み取ります。Playerガイドより:
| プレーヤー | ディスプレイの切り替え方法 |
|---|---|
| Raspberry PiとLinux | CECデバイスとcec-ctlを使ったHDMI-CEC、ddcutilがモニターを検出できる場合はDDC/CI、パネルのバックライト、または画面のブラックアウト |
| BrightSign | BrightSignシェル経由のHDMI-CEC、または画面のブラックアウト |
| Android(管理対象、デバイスオーナー) | バックライト、特権インストールでのHDMI-CEC、または画面のブラックアウト |
| Windows | モニターが応答する場合はDDC/CI、モニターオフ、または画面のブラックアウト |
| ChromeOSキオスク(Web Player) | USBシリアルアダプター経由のディスプレイのRS-232制御ポート(Samsung、LG、NEC、Philipsのディスプレイ向け) |
| Google PlayのAndroid、Amazon Signage Stick、Apple TV、Samsung Tizen、LG webOS | 画面のブラックアウト |
画面のブラックアウトはCECではありません。画面は黒くなりますが、パネルには電源が入ったままです。それでも営業時間外はコンテンツを隠せ、すべてのPlayerで使えます。
Playerは実際に達成した電源の状態を報告するため、「テレビがオフになっている」と「テレビにオフを要求した」を区別できます。
スクリーンのオン・オフをスケジュールする
ディスプレイスケジュールには、ディスプレイをオンにする時間帯(ウィンドウ)を、スクリーンのタイムゾーンで最大16件登録できます。どの時間帯にも当てはまらない間、ディスプレイはスタンバイになります。スケジュールはPlayerがデバイス上で評価するため、オフラインでも動作します。エージェントに一文で頼むか、CLIで設定します:
{"enabled": true, "windows": [{"days": ["mon", "tue", "wed", "thu", "fri"], "start": "07:00", "end": "19:00"}, {"days": ["sat"]}]}screenrig screen display-schedule set --tag Cafe --file hours.json遅くまで続くイベントなどの単発の場合は、screen displayで、次の区切りまで、または指定した時間だけ、スケジュールを上書きできます:
screenrig screen display --tag Lobby --power on --for 3hCLIリファレンスには、ディスプレイスケジュール、上書き、各Playerが報告するヘルス情報がまとめられています。
オン・オフにとどまらない:現地に行かずにスクリーンを直す
スクリーンの電源を切るのは、話の半分にすぎません。残りの半分は、固まったスクリーンを脚立なしで復旧させることです。その機能を宣言しているPlayerには、次の操作を指示できます:
- デバイスを再起動します。対象は、Raspberry PiとLinuxのキオスクインストール、BrightSign、Windows、管理対象のAndroidです。オフラインのスクリーンに送った再起動は、最長24時間キューに保持され、スクリーンが復帰したときに実行されます。
- デバイスを再起動せずに、Playerアプリを再起動します。
- キャッシュを消去します。ペアリングと設定は保持されたまま、コンテンツが再ダウンロードされます。
スクリーンのタイムゾーンで毎晩04:00に行うような定期的な再起動は、すべてのプランで使えます。ダッシュボードを見張らなくても、問題の発生を知ることができます。どのプロジェクトも、スクリーンが10分間オフラインになるとオーナーにメールが届く状態から始まり、通知では、ディスプレイの切断、デバイスの高温、クラッシュを繰り返すPlayer、画面のブランクやフリーズも監視できます。
よくある質問
デジタルサイネージではHDMI-CECをオンにすべきですか、オフにすべきですか?
オン。プレーヤーが対応していて、営業時間外にスクリーンの電源を切りたい場合です。同じテレビにつないだ別のデバイスが入力を切り替え続けたり、画面を起こしたりする場合は、オフにしてください。
HDMI ARCとHDMI-CECは同じものですか?
いいえ。ARC(Audio Return Channel)は、テレビの音声をサウンドバーやレシーバーに送り返す機能です。CECは制御コマンドを送る機能です。同じメニューに並んでいることが多く、ARC接続のサウンドバーは通常、音量の操作をCECで受け取りますが、別の機能です。
テレビがHDMI-CECに対応しているかどうかは、どうすればわかりますか?
テレビの設定で、CECまたはそのメーカーでの呼び名(上の表)を探します。メニューにあれば、そのテレビはCECを実装しています。そのうえで、スクリーンを設置する前にプレーヤーで試してください。
Amazon Signage Stickでテレビの電源を切れますか?
screenRIGでは、Amazon Signage Stickがデバイス上で動くスケジュールに従って映像を黒くします。オフラインでも動作します。これはCECコマンドではないため、パネルには電源が入ったままです。テレビ自体の電源を切る必要がある場合は、Raspberry Pi、Linux PC、BrightSignプレーヤーを使ってください。