Hrátky s HDMI-CEC - Verze k tisku +- XBMC-Kodi.cz (https://www.xbmc-kodi.cz) +-- Fórum: Obecná diskuse (https://www.xbmc-kodi.cz/forum-obecna-diskuse) +--- Fórum: Tipy, triky a návody (https://www.xbmc-kodi.cz/forum-tipy-triky-a-navody) +--- Téma: Hrátky s HDMI-CEC (/prispevek-hratky-s-hdmi-cec) |
Hrátky s HDMI-CEC - JiRo - 13.7.2021 K založení tématu Hrátky s HDMI-CEC mě přivedla potřeba mít možnost z Kodi aktivně ovládat zařízení připojená přes HDMI-CEC rozhraní. Tu potřebu mám zejména proto, že chci ovládat zapínání a vypínání TV připojené ke Kodi boxu, na kterém je instalován nějaký *ELEC a kromě Kodi tam běží i další, na něm nezávislé, aplikace. Např. Tvheadend nebo Webgrab++. Měl jsem toto řešení v době, kdy jsem Kodi a ostatní zařízení ovládal přes DO Logitech Harmony One, a tam jsem si dokázal poměrně dobře poradit s tím, když se box spustil na základě požadavku zahájit nahrávání v Tvheadend a přitom nebylo třeba pouštět TV. A naopak, když jsem chtěl ukončit Kodi, ale stále ještě běželo nahrávání v Tvheadend nebo právě běželo grabování EPG aplikací Webgrab++. V takovém případě jsem stiskl tlačítko na DO, vypnula se televize, ale Kodi box běžel dál a vypnul se až tehdy, když skončilo nahrávání TV nebo grabování EPG. Nyní, když používám pouze DO připojené k boxu s *ELEC, potřebuji něco podobného. Potíž je v tom, že pokud nastavím HDMI-CEC v Kodi tak, aby se TV zapínala spolu s boxem, tak pokaždé, když se například spustí automaticky nahrávání v Tvheadend, tzn. že se probudí box ze standby, zapne se i TV, což samozřejmě nechci. Zapnutí TV potřebuji provést až ve chvíli, kdy stisknu tlačítko POWER na DO. A naopak. Pokud běží Kodi a zároveň se nahrává nebo grabuje, chci aby se při stisku POWER na DO vypnula TV, ale box běžel dále a vypnul/uspal se, až když skončí nahrávání a grabování. Samozřejmě je tohle možné řešit tak, že bych si pořídil DO, které má jedno POWER tlačítko na box, tak druhé na TV. Takhle to ale řešit nechci. Chci zachovat logiku starého dobrého Logitech Harmony One. Pouze jedno POWER pro všechno. A taky nechci být při výběru DO omezen pouze na typ se dvěmi POWER tlačítky. Řešeni existuje, i když není úplně jednoduché a nepatří k těm out-of-box. A když už to studuji a hraji si stím, bude určitě užitečné s tím seznámit i komunitu. Chtěll bych se v tomto tématu této problematice věnovat a budu rád, pokud někdo má zkušenosti, aby se přidal. Pro začátek tedy několik klíčových bodů popisující, jak mám v plánu postupovat a čím chci začít. 1. Většina toho, o čem budu psát, se týká *ELEC instalací. V mém případě hlavně CoreELEC, které je teď mým nejčastěji používaným systémem 2. Budeme potřebovat nějaké základní informace a znalosti o Kodi, Linux a také některých aplikacích, které jsou součástí *ELEC 3. Chceme-li dosáhnout toho, o čem píši v úvodu, je třeba v nastavení Kodi, případně systému, vypnout většinu automatických operací souvisejících s HDMI-CEC. Budeme totiž potřebovat zařízení připojení na HDMI-CEC ovládat na základě vlastních rozhodnutí, resp. skriptů, které budou spouštěny. Ať už automaticky nebo právě stiskem některých tlačítek na DO (třeba právě toho již zmiňovaného POWER tlačítka). 4. Pro začátek se budu věnovat Kodi built-in příkazům, které se týkají HDMI-CEC, v dalším kroku přejdu na, pro mnohé jistě známou, linux aplikaci cec-client. 6. Důležité asi také bude věnovat, se tématu HDMI-CEC s ohledem na výrobce a jejich jednotlivé modely TV. V tomto směru očekávám i některá omezení. Všichni asi tušíme nebo jsme se s tím setkali, že ne všichni výrobci se k problematice HDMI-CEC staví stejně a co platí o této kategorii funkcí na jedné TV nemusí platit na jiných. Proto bude určitě užitečné, pokud se v tomto tématu sejdou názory a zkušenosti s HDMI-CEC různých výrobců i jednotlivý modelů TV. A podobné to asi bude i co se týče HW boxů/PC, na kterých běží Kodi. A nakonec tohoto úvodního příspěvku poznámka. Pamatujte, že jsem s poznáním této problematiky vždy jen o pár kroků před tím, co tu o ní zveřejňuji a že je také možné, že ke konečnému řešení nakonec 100% nedospěji. Mějte tedy se mnou trpělivost... Díky. Doporučené odkazy: Kodi Wiki List of built-in functions RE: Hrátky s HDMI-CEC - JiRo - 14.7.2021 Rezerva pro pozdější použití... RE: Hrátky s HDMI-CEC - jkmh - 14.7.2021 @JiRo: Předem díky za tvá polopaticky vysvětlená řešení (i ohledně skinu). Zatím sice z tohoto tématu nic nepotřebuji, ale co není teď, může být později. V souvislosti s HDMI-CEC bych rád znal funkci v Kodi adapteru pod názvem "Device to also put in standby mode" V Kodi análech jsem k tomu nic nenašel. Dokonce ani podle Googlu se o této funkci nemluví,vyjma jedné zmínky v OSMC. Na rozdíl od tebe ovládám Kodi přes HDMI pomocí DO od TV a při aktivaci/deaktivaci té volby jsem v chování boxu nebo TV nenašel rozdíl. RE: Hrátky s HDMI-CEC - meda - 14.7.2021 @jkmh: Při nastavování CEC jsem o tom také přemýšlel a myslím si bez ověření (nemám další připojená HDMI zařízení jako AV receiver atd.), že by to mohlo znamenat: Přepnout i ostatní zařízení (nejen TV) do Standby. To má samozřejmě účel, jen pokud ovládáme Kodi vlastním D.O. (ne od TV a podobně). RE: Hrátky s HDMI-CEC - jkmh - 14.7.2021 @meda: Možné to je. Ale mě to chodí i bez toho. Mám zapojení Box-AVR-TV. AVR se mi tak jako tak přepne do Standby, pokud TV vypnu. A AVR je pak jen signálově průchozí z HDMI In do HDMI Out. Pro obojí mám v AVR možnost volby. RE: Hrátky s HDMI-CEC - meda - 14.7.2021 @jkmh: Mám tu představu funkce opačně. Vypneš Kodi pomocí jeho D.O. a Kodi/zařízení odešle povel do AVR (ostatní zařízení) a do TV k uspání. Ale také ovládám vše z TV a jsem s funkcí spokojený, Kodi/RPi4/3 nevypínám - asi usne. RE: Hrátky s HDMI-CEC - jkmh - 14.7.2021 @meda: Jasně. Uvidíme, zda k tomu dá komentář @JiRo: Ten to má určitě zmapovaný. RE: Hrátky s HDMI-CEC - JiRo - 15.7.2021 Tak vidím, že jsem si s tímhle tématem pěkně naběhl... S "Device to also put in standby mode" nastavením se také trápím. Nemyslím, že je o tak, jak píšete, ale 100% to zatím nemohu prokázat. Potvrzuje se to, co jsem čekal, že HDMI-CEC pokaždé funguje trochu jinak. A nejen co se týče typů/výrobců zařízení. Ale i v rámci jednoho zařízení:
Aplikace cec-client přidává další bonus, dokáže on-line monitorovat to, co se na HDMI-CEC komunikaci děje. Až budu mít nějaká reprodukovatelné výsledky vedoucí k jasnějším závěrům, popíši to detailně. Předpokládám, že mi to snad umožní zjistit i to, co se děje při zapnutí nastavení "Device to also put in standby mode". Zatím tedy trpělivost. *) Moje hloupost, zapomněl jsem, že jsem měl aktivní probouzení TV pře WOL, po jeho zrušení už to funguje správně. RE: Hrátky s HDMI-CEC - jkmh - 15.7.2021 @JiRo: V pohodě. Rád jsem ti nasadil brouka do hlavy. Když už máš tak zmáknutý skinning, zmákneš i tohle. Mimochodem, ten český překlad té fce je asi dost nešťastný. RE: Hrátky s HDMI-CEC - JiRo - 15.7.2021 @jkmh Ano, některé překlady v Kodi jsou opravdu šílené. RE: Hrátky s HDMI-CEC - JiRo - 22.8.2021 Cec-client aplikace Tak jak jsme slíbil, pár úvodních slov k této aplikaci. Do řady systémů se dá nainstalovat, tady doporučuji obligátní https://command-not-found.com/cec-client. Pro ty, kdo své Kodi provozuje na *ELEC aplikacích dobrá zpráva, aplikace už je součástí běžné instalace. Cec-client umožňuje poměrně zásadně pracovat se zařízeními, které spolu v rámci dané konfigurace komunikují po HDMI-CEC sběrnici (propojení). Typicky jde tedy o dvě (tři) zařízení:
Cec-client má samozřejmě svůj help, Kód: cec-client -h Kód: Aktuální seznam vnitřních příkazů aplikace, které je instalována na CoreELEC 9.2.5, vypadá následovně: Kód: [tx] {bytes} transfer bytes over the CEC line. V dané chvíli jsou pro nás klíčové příkazy: scan - vypíší co na HDMI-CEC sběrnici spolu komunikuje a klíčové parametry všech zjištěných zařízení Já například ve své testovací konfiguraci po zadání tohoto příkazu dostanu: Kód: STREAM:~ # echo "scan" | cec-client -s -d 1 standby, on - chci-li tedy z prostředí CE vypínat (uspávat) a zapínat TV, používám dvojici příkazů: Kód: echo 'standby 0' | cec-client -s -d 1 Tohle se zdá být celkem jednoduché. Pravá alchymie ale přijde v případě, chcete-li jít ve strukturře příkazů ještě dále. Cec-client umožnuje nejen posílat na definované adresy výše uvedené příkazy, které jsou více či méně standardní pro všechny zařízení (pozor ale, ne všechny typy akceptují všechny příkazy), ale také řetězce byte, které pak jednotlivá zařízení interpretují různě. V tomto ohledu jsem zatím na začátku, ani ne tak pokusů, jako spíše hledání po internetu, kde se dá většina informací najít. Vždy je ale třeba ověřovat, protože (a to asi není v oblasti HDMI-CEC nic nového), každý výrobce se k uvedené problematice staví po svém. Tohle si ale nechám zase napříště. RE: Hrátky s HDMI-CEC - Beam - 25.8.2021 Tak ja bych si dovolil taky prispet k HDMI-CEC, treba to nekdo vyuzitjete 1] https://github.com/beam-kodi-addons-repository/script.tvpower.screensaver.control Zapina nebo vypina TV podle screensaveru Kodi, mel jsem problem s tim, ze mi deti prehravani pauznuli nebo stopli, ale uz nevypnuli TV. Tak tohle po X minutach co se pustil sporic vypne TV. 2] po pouziti cec-clienta prestane fungovat ovladani pres HDMI-CEC v Kodi, je treba Kodi restartovat. Mozna by slo povolit a zakazat v periferiich HDMI-CEC ale to jsem zatim nezkousel protoze nevim jestli bych byl schopnej to zavolat pres JSON-RPC RE: Hrátky s HDMI-CEC - JiRo - 26.8.2021 @Beam ad. 1 Tuto funkce ale HDMI-CEC implementce v Kodi (tedy alespoň v CE 9.2.5) standardně má. Co tvůj addon přináší navíc? RE: Hrátky s HDMI-CEC - Saxel - 26.8.2021 @JiRo: Já tedy nevím o takové funkci ve standardním nastavení CEC adaptéru v Kodi. Kde tam je? RE: Hrátky s HDMI-CEC - JiRo - 26.8.2021 @Saxel V nastavení CEC adapter, tedy Nastavení > System > Vstup > Periferie. U mě v CE 9.2.5, kde CEC adapter je verze libCEC 4.0.4 - firmware v5 jsou na to následující položky: Já to tedy nepoužívám, teď jsme si to jenom na mém CE ověřil, že to funguje. Ale nedávno mě o to požádal jeden známý, přesně z těch samých důvodů o kterých psal @Beam. Proto jsem také na jeho popis addon-u reagoval. RE: Hrátky s HDMI-CEC - Saxel - 26.8.2021 @JiRo: Máš pravdu, je to tam. Té volby nastavení zpoždění jsem si nikdy nevšiml. Díky za tip a palec nahoru. RE: Hrátky s HDMI-CEC - JiRo - 26.8.2021 @Saxel Teď jsem aktualizoval na poslední verzi CE 9.2.7 a tam už je to nastavení zpoždění přesunuto do houfu s ostatními nastaveními této skupiny. RE: Hrátky s HDMI-CEC - Beam - 27.8.2021 @JiRo: tak musim se priznat, ze mi taky tohle nastaveni uniklo, mozna jeste nebylo tak jsem si udelal svoje. A pak jsem mel problem, ze pres CECStandby() mi TV vypnout nesla a pres jo cec-clienta jo, ted ji vypinam pres API televize ale zas jen kdyz na TV nebezi treba Netflix/HBO/Youtube.. Ale ano, s timhle nastavenim v Kodi uz tak moc potreba neni. RE: Hrátky s HDMI-CEC - JiRo - 27.8.2021 @Beam Jo, je to možné, tedy skoro jisté. Už jen to, že tam např. to zpoždění vypnutí TV evidentně dodělávali později, když bylo ve starších verzích nastavení úplně jinde, než ostatní parametry. |