• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 0 Hlas(ů) - 0 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
RDS (Radio Data System)
#4
Využiji tohoto opouštěného vlákna, které založil "vyštvaný" @Client, abych pokračoval s ideou řešení, které jsem nazval RDS Client. O co jde.

V PVR Kodi přehrávaná rádia nedokáží přijmout a zpracovat RDS infromace, byť Kodi pro jejich zobrazení podporu evidentně nabízí (viz předchozí příspěvky od @Client). Inspirován řešením @Saros pro příjem stanice Evropa2 (viz Evropa 2 (1.1.0)) jsem se rozhodl navrhnout řešení, které by RDS (s jistou omezenou funkčností) bylo možné do Kodi dostat. Předpokládám, že řešení by obešlo funkce Live TV & PVR a stalo se tak víceméně jejich nezávislou nadstavbou, ale pokud možno co nejtěsněji integrovanou, volitelně i cestou úpravy skinu.

Idea je následující
  • realizačně by šlo o nový addon, typu service & script
  • část service bude zajišťovat funkce:
    • monitorování zda je v PVR spuštěno přehrávání rádia
    • pro právě přehrávanou stanici najít zdroj RDS
    • pro právě přehrávanou skladbu stáhnout její RDS data
    • po dobu přehrávání stanice monitorovat zdroj RDS a při změně skladby načíst nová data
    • načtená data RDS budou ukládána do proměnných Kodi (tzv. properties) k dalšímu použití, typicky budou ukládána data (případně pouze pro některé zdroje):
      • název sklady
      • jméno interpreta
      • obrázek (cover alba/singlu)
      • čas začátku a konce skladby
      • délka skladby
      • slova (lyrics)
      • název pořadu
      • čas začátku a konce pořadu
      • jména moderátorů
      • fotografie moderátor
  • část script bude  zajišťovat funkce
    • po spuštění zobrazí okno a v něm informace z výše uvedených proměnných Kodi
    • parametrizací scriptu bude možné vybrat, zda se okno zobrazí trvale nebo jen po zvolený čas
    • použití scriptu bude možné v každém skinu bez nutnosti jeho úprav. Zobrazení by mělo být univerzální (default), případně odpovídající výchozímu skinu (Estuary). Bude ale samozřejmě možné, jako u každého addon tohoto typu, tam zobrazení odpovídající přesně danému skinu, vytvořit.
  • kromě toho by, díky tomu, že RDS data by byla dostupná v proměnných Kodi, bude možné, po příslušné úpravě skinu, zaintegrovat je do zobrazení odpovídjících funkcí PVR daleko těsněji a přirozeněji. Toto je část, kterou já osobně, protože skiny upravuji, budu preferovat.
Zdroje RDS

Zdroje RDS, to jsou v tomto případě web-y a jejich API, které takové informace v reálném čase nabízí. Kupodivu je jich pro české stanice poměrně dost. Až se ale řešení dostane do produkční fáze, nebude smaopzřejěm porblém doplnit i zdroje jiné, primárně samozřejěm slovenské. Ať už @Saros nebo @martinchromy mě ve výše zmíněném tématu navedli na několik z nich. Ne všechny zdroje mají shodnou kvalitu informací, ale to, co je podstatné, tzn. název přehrávané skladby, jejího interpreta a obrázek (většinou cover alba/singlu) nabízí snad všechny. Některé navíc ještě další příjemné bonusy, které mohou realizaci zjednodušit, to je například čas začátku a konce přehrávané skladby, případně zlepšit potenciálně informační i vizuální dojem, to jsou například informace o moderátorech aktuálního pořadu nebo jejich fotografie nebo v jiném případě i slova přehrávané skladby (lyrics).

Dosavadní pokusy

Protože nejsem zručný programátor (či spíše nejsem programátor vůbec), začal jsem pro mne tím jednodušším. Jednak testem zdrojů RDS a pokusy o načtení odpovídajících dat. Naštěstí jsou data vesměs poskytována ve formě json, takže zpracovat je jednoduchým sh scriptem bylo záležitostí pár minut. Druhou částí mých pokusů byla úprava skinu tak, abych si mohl odzkoušet, co, jak a kde by bylo možné z RDS dat zobrazit. Všechno ostatní, tzn. jak vlastní addon je zatím tedy pouze ve stadiu úvah.

Abych vás trochu navnadil, zopakuji tady to, co jsme už prezentoval ve výše zmíněném tématu. Je to výsledek pokusů jednoho sobotního odpoledne. Trvale běžící sh script po svém spuštění načítá RDS data pro stanici Evropa 2 a ukládá je do příslušných proměnných. Ve skinu Estuary jsem upravil jak stránku full screen přehrávání hudby (MusicVisualisation.xml), tak zobrazení na Home stránce (include.xml, tam konkrétně v definici include name="TopBar"). První pokusy dopadly takto:
       
Výsledek není špatný, a protože Evropu 2 poslouchám často, tak nechávám script, který data RDS načítá, běžet  trvale (spouštím ho po startu mého CoreELEC) a budu dlouhodobě sledovat, zda opravdu stojí za to se tím zabývat.

Mezitím mi @martinchromy poslal další možné zdroje RDS a zdá se, po ověření jejich dlouhodobé stability, že by se asi výše uvedená idea skutečně vyplatila realizovat.

Právě teď jsem získal i názor jednoho kamaráda, který si toto testovací řešení implementoval také (včetně úpravy skinu Estuary), že by se mu líbilo, kdyby stránka s RDS daty zobrazená při přehrávání, odpovídala svým rozložením stránce zobrazené při přehrávánmí hudby. Protože si myslím, že je to správný názor, přidal jsme novou verzi tohoto zobrazení. Je vidět, že tady asi bude ještě velké pole působnosti a tvořivosti, už jenom proto, že jsou zdroje RDS, které nabízí i další informace. Zobrazit je vhodným způsobem, to už bude jen taková třešnička na dortu.
   

Edit 2021-12-06
Další drobná úprava zadání, ověřená na zárodku service addon service.rds už přímo v Kodi. Stav služby může nabývat 5 hodnot:
  1. služba neběží
  2. služba běží, není spuštěno rádio
  3. služba běží, rádio přehrává stanici, není nalezen zdroj RDS nebo zdroj nemá platná data
  4. služba běží, rádio přehrává stanici, je nalezen zdroj RDS, čeká se na načetní dat
  5. služba běží, rádio přehrává stanici, jsou k dipsozici platná data RDS
Doplnil jsme si stavový řádek skinu informací o výše uvedených stavech RDS. Počínaje stavem 2 se zobrazí text RDS, s barvou postupně pro stavy 2, 3, 4 a 5 - bílá, červená, žlutá a zelená. Pro ladicí a testovací účely se ještě pro stavy 4 a 5 zobrazuji text názvu stanice + volitelně kód služby a kód stanice, pod kterými se RDS data hledají.
       
 
Citovat
  


Příspěvků v tématu
RDS (Radio Data System) - od Client - 23.1.2019, 14:26
RE: RDS (Radio Data System) - od Client - 23.1.2019, 22:39
RE: RDS (Radio Data System) - od Client - 25.1.2019, 16:13
RE: RDS (Radio Data System) - od JiRo - 05.12.2021, 11:52
RE: RDS (Radio Data System) - od martinchromy - 08.12.2021, 19:15
RE: RDS (Radio Data System) - od JiRo - 08.12.2021, 23:01
RE: RDS (Radio Data System) - od JiRo - 10.12.2021, 12:13
RE: RDS (Radio Data System) - od JiRo - 11.12.2021, 10:57
RE: RDS (Radio Data System) - od meda - 14.1.2022, 15:39

Přejít na fórum:


Prochází: 1 host(ů)