• 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:
  • 7 Hlas(ů) - 4.71 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
iVysílání
#21
ahoj jakym zjistis pssh live  streamu . hledam v devtools ale tam je jen dotaz na licence server.  zkousel jsem vsechny ppsh co jsem odchytil doplnkem widevine l3 guessor ale ani jeden mi nefunguje  vypada to ze co session to jiny . dost neobvykke.
 
Citovat
#22
ČT používá dynamické klíče. Licenční server vrací 12 klíču(pokud si dobře pamatuji) a mění se každou minutu (přibude nový a nejstarší se odstraní). Proto je nutné načíst KID a PSSH box v jednotlivých m4s segmentech zvlášt a neustále volat licenční server.Je to situace, kdy default KID není specifikovaný.
 
Citovat
#23
mas pravdu v IS.mp4 (init.mp4) je kid same nuly coz je problem.

              [schm] size=12+8
                  scheme_type = cenc
                  scheme_version = 65536
                [schi] size=8+32
                  [tenc] size=12+20
                    default_isProtected = 1
                    default_Per_Sample_IV_Size = 8
                    default_KID = [00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]

mp4s
  [pssh] size=12+40
    system_id = [ed ef 8b a9 79 d6 4a ce a3 c8 27 dc d5 1d 21 ed]
    data_size = 20
[mdat] size=8+15494
pokazde stejne .
 
Citovat
#24
Přiznám se, že jsem s DRM nemám absolutně žádné zkušenosti, vyjma standardní dekrypce v ISA. Takže se tím postupně prokousávám. Pokud by někdo byl schopný a ochotný s tím pomoct, tak přikládám verzi, která má pro živé vysílání vynucené použití DRM. v resources/lib/stream.py se v tom případě použije funkce play_proxy_url, která provede stažení manifestu přes proxy. Kód na zjištění PSSH a úpravu manifestu je v resources/lib/web.py. Při úpravě je potřeba restartnout Kodi nebo zakázat a povolit doplněk, aby se restartoval web server.

Zatím podle manifestu stáhnu IS.mp4, ale v něm se nepodaří najít pssh. Také si nejsem jistý, jestli i po zjištění pssh to bude v ISA fungovat a celé snažení nedává smysl. Kdyby někdo měl nějaké podněty nebo nápady, prosím do SZ.

Verzi z plugin.video.ivysilani.cz-DRM.zip si opravdu nainstalujte jen v případě, že opravdu víte co děláte, protože tam nebude fungovat živé vysílání.


Přiložené soubory
.zip   plugin.video.ivysilani.cz-DRM.zip (Velikost: 60,13 KB / Stažení: 23)
 
Citovat
#25
problem je ze v IS.mp4 pssh neni....  jen KID 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 
Citovat
#26
Zde je přesný postup jak odstranit DRM u ČT. Jak jsem psal výše, klíče jsou dynamické:
- stažení příslušného m4s segmentu
- načtení KID v sekci moof/traf/sgpd[0]
- načtení PSSH v sekci moof/pssh
- dotaz na svůj seznam klíču podle načteného KID; pokud není - tak kontaktovat licenční server (to se bude dít asi každých 5-6 minut protože aktuálně použitý KID je asi uprostřed seznamu 12 klíčů a ten se mění každou minutu) a uložit si tento nový seznam
- dešifrovat m4s pomocí KID, KEY a originálního MP4 INIT souboru

To znamená, že vložení PSSH a KID do mpd manifestu je naprosto k ničemu. Pokud si cheš vytvořit vlastní http server tak se to musí udělat takhle:
- modifikovat MPD manifest tak, že se nahradí všechny URL linky na svů vlastní http server a odstraní se všechny ContentProtection sekce, takový MPD manifest se pak předává klientovi
- http server na požadavek MP4 INIT souboru od klienta provede jeho stažení a odstraní veškeré boxy týkající se šifrování, pokud se to neudělá tak některé přehrávače to pak nepřehrají (VLC), tento nový INIT soubor je pak předaný klientovi
- http server na požadavek m4s segmentu od klienta provede jeho stažení, dešifrování(podle postupu výše) a předá ho klientovi

Všechny informace ohledně šifrofrání jsou standartně obsaženy v MPEG-DASH MP4 specifikaci.
 
Citovat
#27
@martinxp: @pbk: díky oboum za informace. Nějak mi z nich vyplynulu, že kvůli mým omezeným schopnostem a technickým omezením není reálné přehrávání DRM pro živé vysílání zprovoznit. Řešit něco takového v čistém pythonu, navíc bez znalostí, jak vlastně DASH s DRM funguje, by bylo opravdu hodně velké sousto.

Omezení se týká jen živého vysílání a jen pořadů, které nejsou k dispozici bez DRM ochrany. Bude to určitě menšina. U nich se objevím informace, že je nelze na zařízení přehrát. Zkrátka to bude fungovat/nefungovat jako dosud 4
 
Citovat
#28
Ve verzi 2.1.0 jsou přidané doporučené pořady. Také jsem implementoval kešování dat o pořadech, které zrychlí načítání opakované načítání seznamů. Kešování je defaultně zapnuté. Vypnout ho můžete v nastavení, stejně jako vymazat uložená data. V doplňku jsem také vyměnil ikony, projevit se to ale nemusí hned.
 
Citovat
#29
Ahoj,
da se nejak nastavit velikost bufferu live streamu?Mam trochu trable s neustalym nacitanim obsahu.
 
Citovat
#30
@pjotruk: U těchto typů streamů Kodi data do video cache neukládá. Možná tedy sniž bitrate a v nastavení Input Stream Adaptive (ISA) si nastav nižší rozlišení. Bohužel, bude to pak omezovat rozlišení u všech doplňků, které ISA používají.
Jsem (až na výjimky) pouhým čtenářem fóra.
Nepokračuji tedy ani v tématech, která jsem založil.
To platí i pro doplňky Kodi a další aplikace, které jsou s takovými tématy spojené.
 
Citovat
#31
@pjotruk: @JiRo: Je možné. že tato rada pomůže.
Nyní popíšu neustálé načítání a záseky u SledovaniTV. Možná ten projev bude stejný jako výše myšlený. Neustálé načítání pozoruji taky, nepravidelně a jsou i časové úseky, kdy se to chová způsobně. Pokud to sleduji v Player Debug, pak vidím, řekněme jako výchozí stavu, forvard: 0,00B/100%/8,000s/13,333% Nyní se dějí tři scénáře:
1) cache klesá ze 100% na nějakou nestejnou hodnotu 0<něco<100%, ale nikdy neklesne na 0%, cache se doplní do 100%, žádný zásek, datový tok je přerušovaný

2) cache klesne až na 0%, pak začne s větším či menším zpožděním opětné plnění cache, stream se podle zpoždění zastaví

3) cache se drží trvale na 100%, datový tok je kontinuální.

Všechny tři stavy nastávají v rámci jednoho streamu v různém časovém úseku, aniž bych nějak zasahoval. Nevysledoval jsem žádnou závislost, kvalitou sítě to určitě není.
Mimo hodnoty cache jsou samozřejmě pohyblivé i ostatní položky. Jedná se o HLS stream.
Myslím, že to může být i případ v iVysílání.

Nejsem si jistý, ale stejné chování jsme zde asi probírali více než před rokem, no teď to nemůžu najít. Jen si pamatuji, že v tu dobu vyšla i nová verze ISA a zde popisované chování zmizelo. Problém je, že jsem zkoušel instalovat starší ISA, kam až si to Kodi pamatuje, ale bez úspěchu.
 

@JiRo: Zkoušel jsem ty stavy nahrát pomocí Speedmetru, ale to bych musel k datovému toku dostat do jednoho grafu i velikost cache, aby to bylo vypovídající. Změnit vzorkovací časy není problém, ale dostat tam druhý graf při výkonu mého boxu je velký špatný.
X96max plus 4/32 + CE 21 + skin Confluence DS / TV Samsung QE55Q6FNA
X96max plus 4/32 + CE 20.5 + skin Confluence DS

AVR Denon 1600H / Dali Spektor 5.1
Win10pro + Kodi19.5
NAS Synology 215j 3TB Raid1
Router Turris 1.1
 
Citovat
#32
@jkmh: Ten údaj v % má různý význam podle toho, zda je video cache aktivní nebo ne. Pokud je aktivní, tak obsahuje % zaplnění cache, pokud cache aktivní není (adaptivní protokoly a/nebo pvr), tak obsahuje % zaplnění bufferu přehrávače.

Jinak co se týče těch problémů, které popisuješ, v tom asi neporadím. Ono to bude nejspíše souviset s kvalitou sítě, resp. s nějakými kratšímy výpadky nebo prodlevami. Protože to jede bez cache, tak buffer přehrávače, co je k dispozici, neposkytuje tak velkou rezervu. Se Speed Meterem toho v tomto případě moc nenaměříš, protože ten počítá průměr rychlost za 5 vteřin, a tak tam toho moc neuvidíš. Navíc, protože to má malý buffer, jede to prakticky vždycky rychlostí streamu a ta se může, podle dynamiky scén, dost měnit a tohle tam nemáš většinou šanci vidět. Je také třeba si uvědomit, že je to stream on-line TV vysílání, takže u něj nemůžeš přednačítat nějaké velké objemy vysokou rychlostí. Ten on-line přenos ti poskytne dopředu jen velmi omezený objem dat vázaný právě na rychlost streamu, nebo-li dynamiku scény. Snad to souvisí s tím adaptivním principem přenosu a odělením proud dat na chunky. V tomhle se moc detailně nevyznám, jak vlastně ty adaptivní algoritmy sekají ten plynulý proud dat na jednotlivé chunky.

Já přijímám Sledovni v Tvheadend a z vlastní zkušenosti vím, že příjem, kde je vlastně klientem vůči serveru služby aplikace ffmpeg, když tam použiji parametr -re, což znamená, že čtu data rychlostí 1:1 k rychlosti streamu, tak to taky občas vypadává. Ale když -re odstraním, načítá se to do bufferu maximální rychlostí po velkých blocích, tak tam ty výpadky nejsou žádné nebo minimlní. Je to krásě vidět při monitorování stavu na straně Tvheadend, že v tomo případě se vždy načte velký blok dat, a pak se chvíli nekomunikuje. V tomto případě vlastně ffmpeg vytváří další buffer na cestě dat.

Jinak co si pamatuji, tak ISA by měl mít v sobě také nějaký buffer, myslím, že u starších verzí na to snad byl dokonce parametr v nastavení, ale teď už to tam nevidím. Otázkou ale je, jak se ty data ze serveru služby čtou. Jestli tou rychlostí streamu nebo se přednačítávají po bloku dat do bufferu ISA, jako to umí dělat ffmpeg do svého bufferu, pokud se nepoužije paramemetr -re.
Jsem (až na výjimky) pouhým čtenářem fóra.
Nepokračuji tedy ani v tématech, která jsem založil.
To platí i pro doplňky Kodi a další aplikace, které jsou s takovými tématy spojené.
 
Citovat
#33
(18.12.2024, 11:10)waladir Napsal(a): ... že kvůli mým omezeným schopnostem a technickým omezením není reálné přehrávání DRM pro živé vysílání zprovoznit. Řešit něco takového v čistém pythonu, navíc bez znalostí, jak vlastně DASH s DRM funguje, by bylo opravdu hodně velké sousto.

A co nová Kodi python knihovna xbmcdrm. Ta by nepomohla?
Jsem (až na výjimky) pouhým čtenářem fóra.
Nepokračuji tedy ani v tématech, která jsem založil.
To platí i pro doplňky Kodi a další aplikace, které jsou s takovými tématy spojené.
 
Citovat
#34
@JiRo: ona zas tak nová není. Našel jsem jen jeden doplněk, kde jí použily, ale k trochu jinému účelu. Zřejmě to bude nad mé síly, ale zkusím s tím během dlouhých zimních večerů trošku experimentovat. Třeba se zadaří 6
 
Citovat
#35
@waladir: Prosím, ty titulky musí být vždy zapnuté? Nešlo by to nechat vypnuté ve výchozím stavu nebo mít možnost si to vypnout v nastavení?
X96 MAX PLUS S905X3 4/32GB - CE
 
Citovat
#36
@wolfjunior: v nastavení titulků u streamu vypni titulky a měla by tam být i volba, že se má nastavení použít jako výchozí.
 
Citovat
#37
@waladir: díky. To mě nenapadlo ?
X96 MAX PLUS S905X3 4/32GB - CE
 
Citovat
#38
Ve verzi 2.1.1 jsem vyměnil API pro načítání kategorií. Vypadá to, že původní přestalo fungovat. Pokusil jsem se i nějak vyřešit chybu, která se může objevit hlavně při načítání kanálů u živého vysílání. Nevím přesně, proč k chybě dochází, snad to bude lepší.

@JiRo: máš vypnutý příjem zpráv, takže alespoň takhle :-) Když tak bych napsal i nějaké detaily.
 
Citovat
#39
V prvním příspěvku najdete skripty pro Tvheadend. Je tam také předpřiravený playlist od @100karel: , který obsahuje všechny dostupné kanály iVysílání, včetně virtuálních ČT Sport Plus.
 
Citovat
#40
Ve verzi 2.1.2 jsem předělal Živé vysílání. Nahradil jsem problémové API, které často končilo z neznámých důvodů chybou. Provedl jsem drobné optimalizace, které např. redukují počty volání API, které nebyly úplně nutné.
 
Citovat
  


Přejít na fórum:


Prochází: