ibv / YTD

Pepak YouTube Downloader for Windows
35 stars 12 forks source link

CT stale o krok pred YTD #70

Closed MyloshB closed 1 year ago

MyloshB commented 1 year ago

Mily pane Ivosi, chtel bych Vas poprosit o vylepseni YTD stran CT, kde nefunguje stahovani z "playeru", viz tyto 2 ukazky:

https://art.ceskatelevize.cz/inside/tvare-folku-jaroslav-hutka-GnHM3 https://www.ceskatelevize.cz/porady/14639544415-slysim-poprvy/bonus/42515

Dekuji Vam jiz predem za laskavost, drzim palce a zdravim, Mylosh B.

ibv commented 1 year ago

Zdravím, opraveno v dnešní (28.3.2023) verzi YTD v1.70.

Pro spávnou funkci se musí povolit MPEG-DASH stream v nastavení stahovačů (CT) . Po stažení je třeba spojit video a audio do kontejneru dle návodu zde:

Oprava: Funguje stahování HLS i MPEG-DASH, přepínač pro DASH se nemusí zapínat. Hodně webů nyní preferuje MPEG-DASH streamy, HLS pomalu ustupuje.

cerdacz commented 1 year ago

Bohuzel nefunguje, exe ma datum 28.3.2023, ale v About je verze 230317, stejne tak je tam 230317 vedena jako posledni.

"Visi" ve stavu "Pripravuje se download", bez ohledu na nastaveni MPEGDash v CT pluginu.

ibv commented 1 year ago

To je divné, verze 1.70.0.2 funguje dle požadavků. Můžete ověřit, zda používate tuto verzi (1.70.0.2) ? o-012 o-013

cerdacz commented 1 year ago

Mam stejnou verzi, nainstaloval jsem i do noveho adresare a mezi testy smazal config a pak jen zaskrtnul mpeg u ct.

image

ibv commented 1 year ago

Hmm, to jsem z toho jelen Větrník, vůbec netuším kde může být problém. Můžete zkusit, jestli se začne korektně stahovat tento odkaz, případně nějaký jiný z CT? https://www.ceskatelevize.cz/porady/10179604652-krasy-evropskeho-pobrezi/210382545670013/

cerdacz commented 1 year ago

Kdyz jsem tam dal jen odkaz vyse tak jsem skoncil na "Ceka se", po pridani dalsiho odkazu se prvni prepne do stavu "Pripravuje se download" a druhy do "Ceka se".

ibv commented 1 year ago

Nemáte v programu YTD zapnutou http(s) proxy? o-012

cerdacz commented 1 year ago

Nemam, zkousel jsem i zapnout a pak vypnout, se stejnym vysledkem.

ladis2000 commented 1 year ago

Mám úplně stejný problém. Video z České televize nejde stáhnout.

ibv commented 1 year ago

Zdravím, nějaký konkrétní link? Cvičně jsem zkusil tento odkaz https://www.ceskatelevize.cz/porady/21947-tri-veterani/ a funguje HLS i MPEG-DASH stahování. o-55 Zkuste vypnout podporu MPEG-DASH u CT a stahovat pomocí HLS (defaultní volba u CT).

cerdacz commented 1 year ago

image bez DASH

cerdacz commented 1 year ago

image MPEG Dash (umyslne jsem linky prohodil, aby bylo vydet, ze neco probehlo, ze nejde o nejaky podivny zasek na jednom souboru)

cerdacz commented 1 year ago

sys info: Win7 x64, eset, k-lite codec pack (popr. se ptej, co dalsiho by mohlo mit vliv) popr operator NetBox (je mozne, ze by o2 cloud na kterem ted ct hostuje, byl vuci nekterym sitim restriktivni ?)

ibv commented 1 year ago

Tak pokud je nasazen Eset, zaměřil bych pátrání tímto směrem. Zkusit poštelovat chování Esetu pro SSL/TLS a web nebo ho na chvilku vypnout a zkusit stahování. V práci jsme několikrát řešili podivné chování https komunikace a většinou byl problém v Esetu.

o-012

o-013

cerdacz commented 1 year ago

Dekuji za napad, ale jak pri vypnuti ochrany na 10 minut, tak jen pri vypnuti SSL / TLS a scanneru se stahovani chova porad stejne :(.

ibv commented 1 year ago

Tak ještě zkusit pár kroků.

  1. V prohlížeči přehrání videa z ČT normálně funguje?
  2. Ověřit v YTD, že funguje SSL. Jednoduchý test pro ověření fungování SSL je kliknout na ikonu About. Pokud se objeví text nenalezeno, viz obr.,tak jsou SSL knihovny nekompatibilní. 1
  3. Prozkoumat možnosti nastavení Win7 firewallu, např. zde pro YTD.exe, případně FW vypnout a zkusit stahovat pomocí YTD
ladis2000 commented 1 year ago

Zkoušel jsem ten odkaz Tři veteráni - prohlížeči se přehrává, ale stahovat nejde. Ale např. z Novy stahovat jde. Eset nemám, firewall byl vypnutý. obrazek

ibv commented 1 year ago

Zkuste předchozí verzi YTD 1.69, rozbalit YTD 1.69 a použít ytd-64.exe. Pokud stažení z CT proběhne ok, bude problém v nové verzi 1.70, jenom netuším jaký, protože u mě na Win10 verze 1.70 funguje korektně.

cerdacz commented 1 year ago

Chova se to stejne s 1.68, 1.69 i 1.70 :(.

ibv commented 1 year ago

A v prohlížeči jde ten odkaz přehrát?

cerdacz commented 1 year ago

Muzes zkusit tenhle soubor - to by mel byt podklad pro stazeni Tri veteranu - https://ivys-cdn.o2tv.cz/cdn/uri/get/?token=31a97a05b623945f1d98c1169653e24193db0d47&contentType=vod&drmOnly=false&expiry=1681403089&id=61924494877816276&playerType=dash&quality=web&region=4&skipIpAddressCheck=false&userId=cfa05850-6a73-4018-98f9-fc448ed8fe7b&encryption=wv (ikdyz on asi stihne vyprset) vygenerovano primo na webu CT, kdyz das prehravat film a ctrl+shift+i pak se objevi info o prehravaci a nekolik odkazu, tohle je odkaz "full". Me to v prohlizeci stahne a v ytd to pise nepodarilo se najit adresu

ibv commented 1 year ago

V části release je cmd verze YTD-64, odkaz zde. Zkusit pustit s parametrem: ytd-x64.exe -nd https://www.ceskatelevize.cz/porady/1050351371-utek-do-bezpeci/ v ytd.xml by mělo být toto:

o-015

Výsledek by měl být podobný jako na obr.

o-014

Toxman3 commented 1 year ago

Ahoj, mám (cca poslední 1-2 týdny) stejné popisované problémy tak, jestli můžu, upřesním: V XML u max_video_width jsem měl 0, změnil jsem na 1920, ale v obou konfiguracích CLI verze skončila vypsáním modrého řádku s linkem ...1050351371-utek-do-bezpeci/ (testovány i jiné odkazy) a čeká a čeká, dokud to nebrejknu. K vypsání Media title, File name a Content URL se nedostane ani za 15 min...

Pro upřesnění... klasickou okenní verzi jsem zkoušel na dvou různých W 10 (jedny starší, jedny aktuální) na dvou rozdílných sítích (jedna mikrovlná/bezdrátová, jedno mobilní připojení), ale obě od O2. Firewall pouze Windowsácký (a i ten jsem zkušebně vypnul - bez výsledku).

Je ale třeba dodat, že občas, výjimečně (když jsem měl ve frontě více stahování z ČT) a frontu jsem různě pausoval, odpausovával, stopnul/refreshnul, přidával a odebíral odkazy a YTD ukončoval a spouštěl, náhodně se některý z odkazů uprostřed chytil (někdy i 3 zároveň), když se stahování těch živých odkazů dokončilo, zase nic - fronta tuhá a lavírování může začít nanovo.

Odhaduji že na 1 stažený odkaz je tak 50 (ale spíš mnohem více) těch, které hlásí jen "Připravuje se download". Do toho (zvlášť po prvním smazání odkazu), pro YTD typický Acces Violation (ale takové prkotiny teď neřeším ;)

Na verzi 1.70 jsem přecházel hlavně proto, že jsem myslel, že tyhle podivnosti řeší... :)

cerdacz commented 1 year ago

image

Toxman3 commented 1 year ago

Osobně to vidím na nějaký problém v parseru (nebo jak nazvat ten "dolovač" odkazů...), který se většinou nechytá (na něčem se zasekne a stojí), protože když se to náhodou rozjede, tak to jede až do konce jako po másle.

ibv commented 1 year ago

To je zajímavá myšlenka s tím parsováním, v podstatě jde o regulární výrazy a vyzobávání z html. Bohužel se mi stále nedaří nasimulovat zmiňovaný problém. Pause/start může v některých případech zlobit, je tam rozjeto více vláken a při některých pokusech dojde k hlášce access violation.

cerdacz commented 1 year ago

Nemohli bychom Te poprosit o ladici build, kde by se vypisovaly pro Tebe citelne "znacky", ktere by pomohly identifikovat misto "zaseku" ?

ibv commented 1 year ago

Jj, zkusím něco takového vypotit.

Toxman3 commented 1 year ago

Ono s tím HTMLkem to může být dost ošemetné. Když jde o statický zdroj, tak to je pro parsování půl bídy, ale v dnešní době, kdy do toho kódu může dynamicky (za běhu) vrtat kdejaký JavaScript (a to za jistých podmínek i z jiných zdrojů - teoreticky i přímo od O2) se v podstatě asi nějak "musí" emulovat chování prohlížeče (běh toho skriptu).

Bez těch "vrtacích" scriptů takové weby nemusí vůbec fungovat (nebo za jistých okolností nemusí fungovat korektně). Ty skripty mohou ověřovat kde co (od OS a jeho verze až po prohlížeč a spoustu dalších "důležitých prkotin").

Osobně se mi vždycky líbilo, jak umí YTD většinou chytře přeskakovat předřazené "reklamy". Při parsování stránek jsem se ale dostal nejdál asi k nějakému neproniknutelnému blobu, takže mnohem rychlejší bylo sledovat stránkou skutečně načítané soubory a jejich URL, protože tu práci odtemňování jejich záměrně zatemněných odkazů už odedřely skripty. :)

alum300 commented 1 year ago

Pane ibv, dovolte mi dotaz: Používáte k testování YTD internetové připojení od O2, nebo k tomu máte jiného poskytovatele? Mám totiž dojem, že příčinou výše popisovaných problémů není tentokrát ČT, nýbrž O2. Já mám připojení od O2 s tarifem „Bronze“ (bez O2 TV), a s únorovou fakturou jsem obdržel dodatek, z něhož cituji:

„Oznámení o změně smluvních podmínek: (...) u služby Internet v pevném místě rušíme tarif Internet HD Bronzový (...) a nahradíme ho dne 1.5.2023 tarifem Internet HD Bronzový s O2 TV (...) a vy tak budete moci sledovat současně na jednom zařízení nejméně 30 televizních programů, z toho kromě volně šířených (...) i minimálně jeden dětský, jeden filmový a jeden dokumentární. (...) V případě, že se změnou nesouhlasíte, můžete službu Internet v pevném místě (...) do data 30.4.2023 bez sankce zrušit.“

Za několik dní po doručení tohoto oznámení, přesně ode dne 15.3.2023, mi přestal fungovat program YTD v1.69 x64 (fpc). Nic nepomohl ani přechod k nové verzi 1.70 (28.3.2023). YTD se v mém případě nyní chová podobně, jak to zde přede mnou popsali ostatní uživatelé. O2 tedy zřejmě nasadil nový software již v průběhu března, i když v mém případě prozatím neuvolňuje nabídku vybraného filmu ani vybraného dokumentu a vyčkává s tím asi do 1. května. Přehrávání běžného iVysílání mi v Opeře funguje.

Pokud jde o postup, který vysvětluje v komentáři cerdacz (Apr 13, 2023), použitím tak získaného odkazu lze dostat soubor „*-pc.mpd“, který obsahuje parametry pro přehrávání. Nebylo by možné naučit program YTD, aby ho dovedl přečíst a použít?

Příklad („https://www.ceskatelevize.cz/porady/10122427178-udalosti-v-regionech-brno/323281381990414/“):

image

`

ladis2000 commented 1 year ago

Já mám pevné připojeni (tj. ne O2) a mám také problémy s ČT.

Dne út 18. 4. 2023 17:09 uživatel alum300 @.***> napsal:

Pane ibv, dovolte mi dotaz: Používáte k testování YTD internetové připojení od O2, nebo k tomu máte jiného poskytovatele? Mám totiž dojem, že příčinou výše popisovaných problémů není tentokrát ČT, nýbrž O2. Já mám připojení od O2 s tarifem „Bronze“ (bez O2 TV), a s únorovou fakturou jsem obdržel dodatek, z něhož cituji:

„Oznámení o změně smluvních podmínek: (...) u služby Internet v pevném místě rušíme tarif Internet HD Bronzový (...) a nahradíme ho dne 1.5.2023 tarifem Internet HD Bronzový s O2 TV (...) a vy tak budete moci sledovat současně na jednom zařízení nejméně 30 televizních programů, z toho kromě volně šířených (...) i minimálně jeden dětský, jeden filmový a jeden dokumentární. (...) V případě, že se změnou nesouhlasíte, můžete službu Internet v pevném místě (...) do data 30.4.2023 bez sankce zrušit.“

Za několik dní po doručení tohoto oznámení, přesně ode dne 15.3.2023, mi přestal fungovat program YTD v1.69 x64 (fpc). Nic nepomohl ani přechod k nové verzi 1.70 (28.3.2023). YTD se v mém případě nyní chová podobně, jak to zde přede mnou popsali ostatní uživatelé. O2 tedy zřejmě nasadil nový software již v průběhu března, i když v mém případě prozatím neuvolňuje nabídku vybraného filmu ani vybraného dokumentu a vyčkává s tím asi do 1. května. Přehrávání běžného iVysílání mi v Opeře funguje.

Pokud jde o postup, který vysvětluje v komentáři cerdacz (Apr 13, 2023), použitím tak získaného odkazu lze dostat soubor „*-pc.mpd“, který obsahuje parametry pro přehrávání. Nebylo by možné naučit program YTD, aby ho dovedl přečíst a použít?

Příklad („ https://www.ceskatelevize.cz/porady/10122427178-udalosti-v-regionech-brno/323281381990414/“ ):

[image: image] https://user-images.githubusercontent.com/131173258/232815547-e768f02a-7af8-49ad-b289-e6c69f256a57.png

`

— Reply to this email directly, view it on GitHub https://github.com/ibv/YTD/issues/70#issuecomment-1513326875, or unsubscribe https://github.com/notifications/unsubscribe-auth/A7CIBCHSC7U6GIDQ54QCOBTXB2VBZANCNFSM6AAAAAAV7SZFEU . You are receiving this because you commented.Message ID: @.***>

cerdacz commented 1 year ago

Mam jen obavu, ze primym zpracovanim MPD bychom si pomohli, ale prisli o moznost frontovani, protoze odkazy unvnitr MPD maji omezenou platnost (pravdepodobne po dobu session s webem CT).

ibv commented 1 year ago

Zpracování manifest DASH souboru (.mpd) YTD umí, více je popsáno zde. Připojení na net máme v práci přes O2, doma mám T-Mobile LTE, na obou spojeních stahování funguje. YTD vystupuje vůči stream serveru jako obyčejný http(s) klient, používá funkce GET, POST z http(s). Takový větší rozdíl oproti prohlížeči je fitrace (vynechání) javascriptů a jiný User Agent string, jinak se v komunikaci tváří jako webový klient.

Toxman3 commented 1 year ago

@ibv je pravděpodobné, že cokoliv z uvedeného, tedy jiný User Agent, než mají běžné podporované prohlížeče, tak chybějící JavaScript, může mít vliv na funkčnost (a evidentně závisí i na poskytovateli/místě/způsobu... připojení). Mám pocit, že O2 (ale i ostatní poskytovatelé) občas leccos (někdy a někde) filtrují.

S tím .MPD mě napadá... Pokud by jej YTD uměl dostat ze zdroje, tedy počítám z čistého HTML, mohl by jej získávat na samotném začátku stahování (a případně obnovit při /delším/ přerušení), jen mám obavu že získat .MPD bez JS nepůjde. Pokud se mýlím, ?možná? by to přece jen byla cesta (před stahováním, příp. v průběhu, by se musela vytvořit nová sešna).

Během stahování a při vygenerování nového .MPD se myslím jednotlivé dílky "skládačky" ani jejich čísla nemění, mění se jen odkaz a nějaké ID (DNA nebo jak to nazývají), takže ani přegenerování .MPD by možná nemuselo správné navázání dat zhatit.

cerdacz commented 1 year ago

mpd reseni tez nefunguje :( (napr. pro vyse uvedene udalosti v regionech) image stahovane .mpd vypada takto image

Toxman3 commented 1 year ago

@cerdacz Ten požadavek GET ale vypadá trochu jinak: https://ivys-vst16-5.o2tv.cz/atip/c50d725a1e3fd147cbfebb14bc28e63f/1681909985347/61924494878125885-pc.mpd

Připomíná "skutečný" soubor, to co uvádíte je spíše Location z toho .MPD Pokud zadám do YTD přímo odkazovaný soubor, je výsledek: YTD003

Ale stejně to hned skončí a nic se nestáhne. Dají se nějak vypsat správné parametry pro CLI verzi?

Ještě doplním, že včera mi šlo jisté .MPD stáhnout snad i po několika hodinách, to výše vypršelo za pár minut (takže už nefunguje). Možná to má souvislost s kódováním některých pořadů ČT (zahraničních zvlášť).

cerdacz commented 1 year ago

@Toxman3 parametry se daji vypsat -?, ale moc jich neni ;)

pokud pouziju odkaz, co konci .mpd, tak ho sice YTD pokouse, ale nestahne - v cmd provedeni se zobrazi priblizne stejne info jako Vam.

Toxman3 commented 1 year ago

@cerdacz Jéé díky - to mě nenapadlo... A já furt /? /h /help ;)

Ftom případě ta CLI verze z .MDP (něco) skutečně stahuje...

Bez zbytečných dalších parametrů - rovnou předávám to .MPD

YTD004

Stáhnul se mi ale pouze videostream, nikoliv také audio, přestože odkaz na něj v MPD souboru je.

ibv commented 1 year ago

V release části je ke stažení dev verze pro ČT, stahujte zde. UPOZORNĚNÍ: Nepoužívat pro běžné stahování, určeno pouze k otestování funkčnosti komunikace z ČT ! Celý obsah zip souboru nakopírovat např. do C:\YTD, obsahuje knihovny OpenSSL 3.1. Spustit stahování z CT a za chvíli ho zase stopnout, aby log soubor ytd.log, ve kterém je zachycena komunikace se serverem CT, moc nenarostl. CLI verzi už nepoužívejte, moc informací nenabízí.

cerdacz commented 1 year ago

@ibv ad DEV verze, po ciste "instalaci" bez nejakeho nastavovani - vyse uvedene udalosti v regionech zadany pres GUI a stazeny, ted zkousim neco delsiho. Vse stazeno, log (pokud by byl treba) v priloze. ytd-log.7z.zip

Toxman3 commented 1 year ago

@ibv Použil jsem své nastavení z XML, na co jsem ve frontě kliknul, to se hned začalo stahovat. Abych vyloučil, že je to momentálním stavem sítě, tak jsem vyzkoušel znova "starý" (1.70) a ten i nadále hlásí "Připravuje se download"

Log zde, ale protože to nejspíš správně funguje, asi nebude moc platný: ytd.log

Zkusil jsem stáhnout tyto pořady (jako transport stream, ale stahovaly se i jako MPEG-DASH): Přikázaný směr jízdy (641 MB - CODED), Scapinova šibalství (1105 MB - CODED), Posvícení (463 MB - CODED), Jak přijít o život (3581 MB), Belphegor fantom Louvre (4380 MB - CODED), Zemřít znovu (4880 MB)

Stáhly se, zdá se celé, jen ty označené CODED nejdou přehrát (resp. přesněji řečeno zobrazí se rozkostičkovaný nerozpoznatelný obraz a pazvuky). Jetli někdo ví, jak tyto "kódované" pořady vyloučit už před stahováním anebo ještě lépe rozkódovat, radám se nebráním.

Pro Ibv zatím veliká pochvala. Tato testovací verze odstranila "zásek ve fázi parsování" - teď jen najít čím to je a přenést opravu do ostré verze :) Už teď velké DÍKY :)

Celý zazipovaný log (83,6 KB / 2,8 MB) zde: ytd.log.zip

cerdacz commented 1 year ago

@Toxman3 kodovani bylo zminovano jiz nekolikrat a je to zpusob DRM a zatim prekonatelny jednoduse neni (otazkou je, jestli pripadne prolomeni by neprineslo vic problemu nez uzitku ... zmeny na strane CT, popr neprijemnosti pro vyvojare). A co jsem se dival, tak na ulozistich takoveto porady byvaji k sehnani (jako alternativa k vlastnimu stazeni ze zdroje) ;).

Toxman3 commented 1 year ago

@cerdacz Díky Vám za info. :) Vcelku mi je jasné, že je to DRM, a že je to ze strany ČT zcela záměrný naschvál. Není mi ale jasné proč ČT (mimochodem placená z našich daní) takovéto skvělé kousky předvádí čím dál častěji a to i u docela starých českých/československých pořadů. Copak tenkrát z našich daní placená nebyla? Kdyby podobné vylomeniny (a časové omezení sledovatelnosti) pořád nevymýšleli, ani by moc nebylo potřeba stahovačů (snad jen pro off-line sledování). Těch hnusných DRM totiž, zdá se, přibývá jako hub po dešti a kdo ví, zda za chvíli nebude takto zmršeno všecko... Jinými slovy, nepříjemnosti a problémy příjdou, i když strčíme hlavu do písku a budeme si usilovně přát, aby se ČT úplně neutrhla ze řetězu.

V sektoru distribuce software, zvláště her, jsou společnosti, které si (především) na DRM postavily svůj business (jmenujme např. Steam, Epic, EA...). Ale kupodivu se prosadila i polská společnost GOG, která naopak distribuuje placené, a to dokonce i nové hry zcela bez DRM (občas s výjimkou síťových služeb, kde to technicky nemusí být jednoduše možné). A ono to funguje - a nekrachují. Ostatní SW společnosti včetně Microsoft, Adobe, Maxon... jsou typičtí tvrdí prosazovači DRM, ale přitom mnoho jejich softwaru (ne-li většina či všechen) by vůbec, nebo téměř vůbec, nefungovala, kdyby sami nepoužívali různé open-source knihovny pro kde co, které mohli použít -světě div se- jen proto, že je jejich autoři zveřejnili bez DRM a to dokonce v otevřeném kódu pro všechny bez (větších) omezení.

Ale to jsem odbočil - zpět k ČT. U typu DRM, který používají v ČT na své pořady se nemůže jednat o prolomení (v pravém slova smyslu). O prolomení by šlo, nebyly-li by k dispozici klíče (např. placené pořady u neplatícího uživatele). Zde je však DRM použito pro všechny uživatele, tudíž všichni uživatelé musí nutně mít v prohlížeči při přehrávání přítomen dekódovací klíč.

Vím, že to vůbec není jednoduchá záležitost protože, jak jsem se už zmínil, všechno končí u nějakého neproniknutelného blobu v paměti prohlížeče a u kódu, do kterého vrtá možná desítky skriptů. Bylo by nutné (ve velké míře) při stahování, a patrně i při přehrávání, emulovat prohlížeč. Při emulaci by se ale musely přesměrovat zdroje na lokální a případně i vracet nějaká stará odchycená časová razítka atp.

Je mi jasné, že pokud to bude aktivně dynamicky zašifrované "střípek po střípku", bude to nejspíš mnohem větší problém. Nemám to ověřené a možná se mýlim, ale řekl bych, že na takové šifrování nemá ČT ani zdaleka výpočetní kapacity, a že jen vrací předem staticky zakódovaný nasekaný "stream" (s jedním nebo nemnoha neměnnými klíči). Pak by každý jeden, kdekoliv stažený pořad, mělo být možné rozkódovat stejným (v určitou dobu v podstatě veřejně dostupným) dekódovacím klíčem (pro ten konkrétní pořad nebo nějaký balík pořadů).

Pokud však kódují každou instanci prohlížeče za běhu (a nepodaří se tyto klíče odchytit právě v okamžiku přehrávání), stažený soubor je jen bezcenná hromada zašifrovaných dat s dávno ztracenými klíči.

Tím jsem se spíše chtěl informovat, zda-li v dané oblasti nedošlo k nějakému novému posunu... Proti těžkým kalibrům (DRM) bude ale patrně nutné časem nasadit jiné těžké kalibry. Tím nemyslím jich skutečné "prolomení", které je mimo dnešní technické možnosti - pokud, pane cerdacz, nemáte doma pod stolem nějaký, právě nevyužitý kvantový počítač. Já jsem se pod svůj stůl díval a nemám ho tam, asi jsem ho někomu půjčil... ;)

Napadá mě, že zrovna na takové netriviální účely by možná mohla časem posloužit umělá ta... AI jaj AI - ta moje hlava - no jak se tomu jenom říká... hloupá umělá inteligence, která by ten balast regulérních dekódovacích skriptů zvládla (tedy ne ve smyslu regulárních výrazů ;).

Dá se teda dopředu nějak jednoduše zjistit, co je kódováno (a ušetřit si případné stahování)?

Omlouvám se za trochu delší a trochu off-topic.

alum300 commented 1 year ago

@Toxman3 Jeden způsob, jak předem zjistit, zda je video zašifrované, nebo ne, bych věděl:

Spusťte z adresy na ČT jeho přehrávání a po přeskočení úvodních reklam najděte odkaz na soubor MPD postupem, který popsal cerdacz v komentáři ze 13.4.2023. V onom komentáři je i jeden příklad takového odkazu a v něm najdete sekvenci „&drmOnly=false“. Takže to video nebylo chráněno šifrováním.

V opačném případě tam bude „true“. Příkladem může být „https://www.ceskatelevize.cz/porady/14928005193-zakladni-instinkt-sex-smrt-a-sharon/“. Tato adresa mi dala odkaz: „https://ivys-cdn.o2tv.cz/cdn/uri/get/?token=89ec4c408365ec4dc0bfdfd41d801f6725adf745&contentType=vod&drmOnly=true&expiry=1682040772&id=61924494877960293&playerType=dash&quality=web&region=4&skipIpAddressCheck=false&userId=190e9edf-1f65-4f6a-94b5-99ebabbb8109&encryption=wv“. Toto video tedy je bohužel zašifrované.

ibv commented 1 year ago

Hodil jsem do release části opravenou verzi YTD 1.70.0.3, ke stažení zde. Používá knihovny OpenSSL 1.1, pro eliminaci vlivu knihoven OpenSSL 3+. Při laborování s logováním jsem našel chybku ve zpracování stahování z CT, v GET funkci . Po potvrzení funkčnosti nahrám na github verzi už s knihovnami OpenSSL 3+. Je ale divné, že u mě stahování procházelo, bylo by možné v této souvislosti zjistit výrobce a model síťové karty? V linuxu mám Realtek RTL8111/8168/8411 PCI Express, na Winech používám VirtualBox, kde je nastavena karta Intel PRO/1000 82540EM.

K tématu DRM na CT doporučuji k prostudování zde a zde

cerdacz commented 1 year ago

Ja mam v pc starou USB kartu - Realtek RTL8188SU Wireless LAN 802.11n USB 2.0 Network Adapter.

Vyse uvedene zpravy z regionu stazeny pomoci nove verze.

Diky moc za bleskovou reakci ;).

Toxman3 commented 1 year ago

@alum300 Díky tohle je zatím asi nejrychlejší cesta. Já jsem ten MPD získával odchytáváním síťových požadavků přehrávače a v tom požadavku GET ten odkaz právě vypadá pouze takto: https://ivys-vst19-5.o2tv.cz/atip/2ad57029ddd19ebed3167f969146e306/1682065546589/61924494878125885-pc.mpd?userId=2b47d32f-88b2-48a5-bcc5-fd4a78ae39c6

CTRL+SHIFT+i mi po dle fokusu a polohy myšítka ukazovalo a skrývalo (ve Firefoxu) vývojářské nástroje. Takže jsem pojal podezření, že to tu asi nefunguje úplně správně. Nakonec ale jo...

Pro případné další zájemce rychlý obrázkový návod: Stažení MPD

@ibv Díky za příkladnou podporu, odkazy proštuduju. 👍 :)

Síťovku mám integrovanou na základní desce Gigabyte, tedy v mém případě: Realtek PCIe GbE Family Controller s ovladačem: Realtek 31.12.2020 (10.46.1231.2020 podepsaný Microsoft Windows Hardware Compatibility) Výrobce MB označuje ve specifikaci na webu (manuál už asi nejede stáhnout) jako: Realtek GbE LAN chip (10/100/1000 Mbit) Podle ID hardware by to měl být: Realtek RTL8168/8111 PCI-E Gigabit Ethernet NIC, takže asi něco hodně podobného jako máte Vy.

Už teď je ale leccos vidět v tom .MPD (ale teď znám o něco rychlejší způsob jak jej získat).

Ukázka .MPD nešifrovaný (Zemřít znovu): 61924494878125885-pc.mpd.txt

Ukázka .MPD šifrovaný (Belphegor: Fantom Louvru): dwv-61924494878125631-pc.mpd.txt

Za povšimnutí stojí sekce ContentProtection a cenc:pssh, která obsahuje něco, co mi připomíná dešifrovací klíč (ale nemusí to tak být).

ladis2000 commented 1 year ago

Opravená verze YTD 1.70.0.3 funguje. Zkoušeno (jako vždy) na prvním dílu https://www.ceskatelevize.cz/porady/11118197787-volha/

alum300 commented 1 year ago

@ibv Děkuji, oprava funguje v dřívějším rozsahu. Použito Realtek PCIe GBE Family Controller, ovladač 2013.