Další z playlistů použitelný především v Tvheadend, který ale může být inspirací i pro jiná použití. Tradiční koncept sady souborů sh scriptů, včetně výkonného scriptu (streamer-u). Řešení je určené pro ty, kteří mají alespoň základní povědomost nejen s Tvheadend, ale také s Linuxem, či alespoň s jeho základním scriptovacím jazykem sh. Před použitím je třeba ve scriptech upravit pár údajů, respektující parametry vašeho prostředí, a také samozřejmě parametry a přihlašovací údaje služby.
Dále uvedené řešení, které původně vzniklo pro DigiTV, je možné použít i v dalších službách, které jsou postavené na základě řešení nabízené společností 4NET (4net.tv). OTT platformu této společnosti využívá řada poskytovatelů služeb, například DigiTV, Poda a další. Dále uvedený postup byl původně napsán pro službu DigiTV, ale platí samozřejmě pro všechny další služby vycházející ze 4NET OTT a na službu vašeho poskytovatele si ho můžete celkem bez problémů adaptovat sami. Protože jsou si služby využívající řešení 4NET podobné jako vejce vejci, upravil jsem scripty původně vytvořené pro konkrétní služby (DigiTV a Poda) do obecné podoby tak, aby je bylo možné po pouhým zadáním parametrů použít i v dalších službách.
Výchozí podmínky:
- instalovaný Tvheadend server
- přístup do adresáře, kam je možné umístit soubory skriptů, kde také budou vytvořeny soubory playlistu. Do tohoto adresáře musí vidět i Tvheadend
- instalovanou aplikaci jq pro práci s json daty. Pokud ve vašem systému chybí, je třeba ji nainstalovat. V případě máte-li LibreELEC, je aplikace jq součástí addon System Tools, ze sekce Doplňky programů repozitáře LibreELEC Add-ons.
- zaplacenou službu s alespoň jedním volným zařízením
- instalovanou aplikace ffmpeg. Ta je buď součástí systému, nebo si ji musíte nainstalovat. V případě máte-li LibreELEC verze 9.x, tak je třeba pro instalaci ffmpeg nainstalovat addon FFmpeg Tools, ze sekce Doplňky programů repozitáře LibreELEC Add-ons.
Scripty získáte stažením zip souboru, který je umístěn na konci postu. Rozbalíte je do vybraného adresáře splňujícího výše uvedené podmínky.
Význam a funkce jednotlivých scriptů:
- login.sh - autentizace a registrace zařízení. Před prvním použitím je třeba zadat vaše přihlašovací údaje ke službě a název vašeho zařízení. Script zaregistruje zařízení k vašemu účtu a vytvoří tzv. token, který uloží do souboru token. z něj si ho budou ostatní scripty brát, bude-li pro jejich činnost potřeba. Před prvním použití scriptu je třeba do něj doplnit:
- username - vaše přihlašovací jméno (mailová adresa) do služby DigiTV
- password - vaše heslo pro přihlášení do služby DigiTV
- device - jméno vašeho zařízení/systému, pod kterým bude viditelné ve službe DigiTV. Doporučuji něco neutrálního, nepoužívejte texty Kodi nebo Tvheadend, abychom zbytečně nedráždili.
- provider - název služby/providera, např. DigiTV, Poda, ...
- address - část webové adresy služby, např. mobile-tv.itself.cz pro službu DigiTV nebo live.poda.tv pro službu Poda
- data - plnou cestu k adresáři, do kterého jste scripty umístili (např. tedy /storage/.kodi/playlist/digitv/ nebo /storage/.kodi/playlist/poda/). V tomto adresáři budou tedy umístěny nejen vlastní scripty, ale budou se do něj vytvářet i všechny příslušné soubory
- username - vaše přihlašovací jméno (mailová adresa) do služby DigiTV
- playlist.sh - soubor, po jehož spuštění se vytvoří generický playlist. Tento soubor už můžete přímo použít v parametrech sítě Tvheadend, ale doporučuji si ho spíše zkopírovat, přejmenovat a upravit obsah podle vlastních potřeb. Před prvním použití scriptu je třeba do něj doplnit:
- address - viz výše
- data - viz výše
- address - viz výše
- streamer.sh - výkonný soubor, který spouští Tvheadned (metoda pipe://) při scanování nebo po přepnutí na daný kanál. Obsahuje volání ffmpeg, který zajistí přeposílání obsahu streamu do Tvheadend. V tomto scriptu se také pouští další script check.sh, který zajišťuje periodickou obnovu session přehrávaného kanálu. Před prvním použití scriptu je třeba do něj doplnit:
- provider - viz výše
- address - viz výše
- data - viz výše
- prog - plnou cestu k ffmpeg. V případě LibreELEC verze 9.x a instalace výše uvedeného addon, je plná cesta /storage/.kodi/addons/tools.ffmpeg-tools/bin/, (tedy prog=/storage/.kodi/addons/tools.ffmpeg-tools/bin/) ve verzi 8.x pak stačí, když obsahem prog bude prázdný řetězec (tedy ponecháte pouze prog=)
- provider - viz výše
- check.sh - script umístěný v tomto tohoto souboru provádí periodickou obnovu session. Před prvním použití scriptu je třeba do něj doplnit:
- address - viz výše
- address - viz výše
Vytvářené soubory:
- token - je do něj scriptem login.sh uložen aktuální token platný pro váš účet a zařízení
- playlist.generic.m3u8 - generický playlist, vytvářený scriptem playlist.sh. Generický proto, že je chápán jako východisko, ze kterého si každý uživatel může vytvořit vlastní playlist. Jinak seřadit kanály, některé vypustit, doplnit dalšími informacemi, atp. Pokud to chcete provádět, je to vhodné dělat na jiném souboru (kopii toho generického), protože při každém dalším spuštění scriptu playlist.sh se obsah toho generického playlistu přepíše!
Postup při zprovoznění:
- Základní podmínkou je existence funkčního Tvheadend a jeho klientů v Kodi
- Pokud není, tak nainstalovat aplikaci jq
- Pokud není, tak instalovat ffmpeg
- Vytvořit adresář, ve které budou umístěny všechny výše uvedené soubory a vytvořeny soubory další
- Do vytvořeného adresáře rozbalit obsah zip se soubory
- Upravit login.sh, playlist.sh, streamer.sh a check.sh
- Spustit postupně login.sh a playlist.sh
- Podle svých potřeb zkopírovat a upravit playlist
- Parametrovat Tvheadend - Automatick network, případně Buquet používáte-li ho, potom samozřejmě scan, EPG...
- Restartovat Kodi a užívat si...
Omezení, problémy, doporučení:
- služba nedovolí z jednoho zařízení spustit více jak 1 stream (tedy přesněji řečeno, ona to dovolí, ale streamy pak jedou bůhví jak, plno chyb, výpadky, zamrzávání, ztráta kontinuity chunků, atp.). Znamená to v parametrech sítě nastavit hodnotu Maximální počet vstupních streamů: na 1 a smířit se s tím, že více streamů na jednom zařízení spustit nebude možné.
- zatím se nepodařilo ze služby stáhnout EPG, proto doporučuji použít Webgrab++, zdroje lze nalézt zejména na sms.cz
- sada scriptů uložená níže v souboru playlist.4net je určena k použití pro libovolnou službu vycházející z řešeni 4NET. V dané chvíli ale nejsem schopen 100% zaručit, že to bude skutečně fungovat na všech službách, protože to nemohu vyzkoušet. Proto prosím o případnou reakci a informace o použití v dalších službách.
Chtěl bych tímto také poděkovat uživatelům fóra @koperfield, @Danco86 a @ericek74, kteří mě svými radami a názory pomohli. A @koperfield ještě jednou a zvlášť za to, že jako první adaptoval scripty na další službu, tedy Poda.
Soubory ke stažení:
Aktuální verze: 0.2
[attachment=5102]Ověřeno pro:
- DigiTV - parametr address=mobile-tv.itself.cz
- Poda - parametr address=live.poda.tv