Stream Hub (1) - Brána do světa...
Stream Hub, a ještě s douškou Brána do věta..., zní tajemně, ale žádné tajemství za tím nehledejte. Jen důsledek velmi jednoduché a v podstatě celkem logické úvahy. Ještě se k ní vrátím, protože na tento úvod by to bylo zbytečně komplikované. Jednoduše řečeno, není Stream Hub nic jiného než doplněk Kodi, který otevírá možnost použít v něm, tedy v Kodi, doplňky tolik dnes populárních mediálních aplikací jakou jsou Stremio, Nuvio a jim podobné, jakou je například právě teď vznikající, ale už také nesmírně populární, aplikace Streamlet.
Ono je to celkem logické. Kodi, letitá aplikace, si těmi roky vývoje nese celkem značnou zátěž a i když je řešena a organizována velice robustně (možná právě proto), je to už dnes něco, co se do moderního prostředí Android systémů, televizí a dalších platforem moc nehodí. Nad těmi dnes pomalu přebírá vládu jiná skupina aplikací, odvozená od populárního Stremia. Multiplatformní mediální aplikace, umožňující poměrně jednoduché rozšiřování pomocí relativně jednoduchých pravidel dobře organizovaných doplňků, která dávají příležitost ke komunitní tvorbě a sdílení. V tomto ohledu se vlastně zas tak moc od Kodi neliší, pomineme-li tedy jednak moderní koncepci a hlavně schopnost být bez problémů spouštěná na celé řadě i velmi nenáročného HW. O to se sice Kodi také snaží, ale všichni většino víme, na jaké problémy to často naráží.
![]() |
| Stream Hub jako video doplněk (zatím bez ikony) |
Nebudu tu koncepci Stremia a od něj odvozených aplikací popisovat, ale zastavím se u jednoho významného aspektu. Tím jsou jeho doplňky jejich koncepce, která umožňuje jejich napojení na vlastní aplikaci pouze na úrovni definovaného api. Doplněk, který může být umístěn kdekoliv, se s aplikací spojí prostřednictvím jejího aplikačního rozhraní (api), představí se jí prostřednictvím svého manifestu a veškerá spolupráce pak už probíhá jen prostou výměnou dat, jejichž struktura je definována pravidly pro toto api v kombinaci s konfiguračními informacemi, které doplněk aplikaci předá v rámci svého manifestu.
Kdo se dostal k vážnější práci s doplňky Kodi ví, že tohle je něco, co se občas používá i tam. Myslím tím řešení, kdy část doplňku běží jako service, tzn. ne nutně s přímou vazbou na Kodi api, a vlastním pluginem si data vyměňuje prostřednictvím nějaké datové komunikace. Používal jsme to u mých doplňků také a časem mě napadlo, že ona service doplňku nemusí běžet jen jako jeho součást, ale že ji můžu od Kodi úplně oddělit. A to dokonce i mimo stroj, na kterém Kodi běží. Myšlenkou bylo, napsat část, která se stará o sběr dat tak, aby ji mohly, společně, využívat všechny Kodi provozované v naší domácnosti. To všechno v době, kdy všeobecné povědomí o Stremio bylo ještě na velmi nízké úrovni a aplikace Streamlet ještě ani neexistovala.
![]() |
| Stream Hub a zatím tři připojené manifesty |
Není divu, že když jsem se pak se Stremio i později i se Streamlet seznámil, myšlenka, jak využít jejich existující doplňky v Kodi na sebe nenechala dlouho čekat. Úplně první byl pokus spustit v Kodi video doplněk Autosalon, který bude data čerpat ze stejnojmenného doplňku autora Sároše pro Streamlet. Podařilo se to celkem rychle, během jednoho odpoledne jsem si už videa ze Sárošova doplňku pouštěl v Kodi. Bylo jasné, že psát pro každý doplněk, původně vytvořený pro Streamlet, doplněk pro Kodi, asi nebude ta správná cesta. A tak jsme si načrtl základní design doplňku nazvaného Stream Hub, jehož ambicí bylo v Kodi vytvořit stejné rozhraní jako má pro své doplňky nejen Streamlet, ale i Stremio, Nuvio a všechny ostatní podobné aplikace a jejich deriváty, která s doplňky pracují na stejném principu.
To už nebylo tak jednoduché, a jen základní návrh struktury takového řešení a jeho první verze v kódu mě už stála celý jeden den. Začal jsme včera v poledne a dnes před polednem jsme v Kodi spustil první doplněk, již zmíněný Autosalón. A vzápětí druhý a třetí, kterými byly doplňky s adult obsahem, protože jiné vhodné jsem zatím neměl k dispozici.
![]() |
| Autosalon - seznam vysílání v jednotlivých letech |
Dal jsme si s úvodním designem trochu více práce, takže další rozšiřování by už nemělo být tak složité. Celý doplněk je rozdělen na tři hlavní části/vrstvy:
- UI vrstva - Kodi strana, ve které se odehrávají všechny aktivity spojené s Kodi a které je jediná a společná pro všechny původní aplikace (hosts) a jejich zdroje (doplňky),
- HOST vrstva - která řeší specifika původních hostitelských aplikací, tedy aplikací, pro které byly doplňky původně určeny (Stremio, Streamlet, ...),
- API vrstva - rozhraní k jednotlivým doplňkům.
Jdu cestou nejmenšího odporu, takže jsem začal jen s filmy a také s doplňky, které nemají žádnou konfigurační (zejména tedy autorizační) část. Ale ani to nepokládám za zásadní problém. Navíc, o tyhle doplňky až tak moc nestojím, protože tuhle část už mám v Kodi vyřešenou "nativně". Buď existujícími spolehlivými a ověřenými doplňky nebo těmi, které jsem si napsal sám (webshare, hellspy, fastshare a další) a jejichž používání od jisté doby preferuji.
![]() |
| Autosalon - seznam v roce 2026 |
Co bude následovat? V podstatě jde o několik paralelních a překrývajících se větví vývoje, z nich ty hlavní a důležité jsou:
- přidávání dalších doplňků a jejich odladění, které vždy začíná analýzou jejich manifestu a ověřením, že všechny kombinace parametrů v něm mám v doplňku pokrytých. Pokud ne, tak následující celkem krátké ladění a úprava kódu v jedné části, která se právě jen analýzou manifestu a jeho překlopením do obecné metastruktury doplňku zbývá. Tato část kódu je mimochodem úplně nezávislá na Kodi, takže ji lze spustit i mimo něj. Má to dva důvody. Jednak to mohu ladit prakticky kdykoliv a kdekoliv, jednak mi to v budoucnosti umožní tuto část kódu použít jako další nezávislý zdroj dat pro mou domácí backend databázi filmů a seriálů.
- ověsit UI část doplňku tím "hezkým", tzn. vytahat z doplňků texty, obrázky a další informace o jednotlivých titulech, což jsem zatím neřešil. Ale to je práce velmi příjemná a protože se týká vesměs hlavně Kodi a jeho funkcí a knihoven, s kterými jsem docela kamarád, bude to pro mně píše relaxace.
- rozjetí subsystému proprietální cache, které má (bude mít) několik rolí:
- odlehčit api rozhraní doplňků,
- zrychlit funkce zobrazení v Kodi,
- jako nutné východisko pro realizaci virtuálních lokálních katalogů (viz dále),
- jako předpoklad pro testování potenciální funkce dynamického načítání obsahu seznamů, který by (snad) mohl nahradit tolik nepopulární stránkování.
- přidat do doplňku možnost vytváření virtuálních lokálních katalogů. Základní design s tím počítá, teď jen potřebuji nějaký čas života s doplňky abych poznal a pochopil jejich životní cykly. a to, jak tvorbu takových katalogů budu řídit. Tedy se alepoň zmíním o tom, co to jsou nebo budou ony virtuální lokální katalogy:
- jsou to katalogy vytvořené jen v rámci doplňku Kodi resp. jeho runtime části,
- jejich obsahem je filtrovaný, agregovaný s setříděný seznam z jiných katalogů,
- zatím předpokládám, že bude možné agregovat katalogy vždy pouze z jednoho doplňku, ale časem k tomu přidám možnost agregovat katalogy i z více doplňků,
- typické použití takového virtuálního katalogu bude např. pro vytvoření seznamu Novinky, Naposledy přidané, zvlášť pro Filmy, Seriály, seznamy pod žánrů apod.




Komentáře
Okomentovat