Já zahraniční tituly z iVysílání vůbec nestahuji. Zajímají mě jen tituly, které ČT sama vyrobí a ty nemá cenu stahovat jinde, protože tam je stejně mají stažené z iVysílání.
sudo curl -L https://github.com/bashonly/yt-dlp/releases/download/2023.07.16.012858/yt-dlp_linux -o /usr/local/bin/yt-ctsudo chmod a+rx /usr/local/bin/yt-ct
yt-ct -f "bv*+mergeall[vcodec=none]" --audio-multistreams -vvvvvv -o '%(title)s-%(id)s.%(ext)s' --proxy socks5://127.0.0.1:1080 https://www.ceskatelevize.cz/porady/1001769312-dobrodruzstvi-rabina-jakoba/
udo nano /etc/yt-dlp.conf#######################-o '%(title)s.f%(format_id)s.[%(id)s].%(ext)s' #-o '%(title)s.f%(format_id)s.%(ext)s'#-o %(title)s.%(ext)s#Embed thumbnail in the video as cover art--embed-thumbnail#Embed subtitles in the video (only for mp4, webm and mkv videos)--embed-subs#Add chapter markers to the video file (Alias: --add-chapters)--embed-chapters#Embed metadata to the video file. Also embeds chapters/infojson if present unless --no-embed-chapters/--no-embed-info-json are used (Alias: --add-metadata)--embed-metadata#Embed the infojson as an attachment to mkv/mka video files--embed-info-json#Allow multiple audio streams to be merged into a single file--audio-multistreams#Languages of the subtitles to download (can' be regex) or "all" separated by commas, e.g.#--sub-langs "en.*,ja". You can prefix the language code with a "-" to exclude it from#the requested languages, e.g. --sub-langs all,-live_chat. Use --list-subs for a list#of available language tags--sub-langs all--write-subs#Use this prefix for unqualified URLs. E.g. "gvsearch2:python" downloads two videos from#google videos for the search term "python". Use the value "auto" to let yt-dlp guess#("auto_warning" to emit a warning when guessing). "error" just throws an error. The#default value "fixup_error" repairs broken URLs, but emits an error if this is not#possible instead of searching--default-search ytsearch#SponsorBlock categories to create chapters for, separated by commas. Available#categories are sponsor, intro, outro, selfpromo, preview, filler, interaction,#music_offtopic, poi_highlight, chapter, all and default (=all). You can prefix the#category with a "-" to exclude it. See [1] for description of the categories. E.g.#--sponsorblock-mark all,-preview [1] https://wiki.sponsor.ajay.app/w/Segment_Categories--sponsorblock-mark all
Citace: Standa2017 01. 02. 2023, 20:12:51Taky používám https://cdm-project.com/CDM-Tools/WKS-Keys , ale z telefonu mám dump jen L3, protože L1 se mi určitě nepodařily vytáhnout. Bylo to z šuplíkového Nexusu 6, do kterého jsem musel nahrát poslední originální ROM od Googlu (asi Android 7.1.2), ale už si nepamatuji, co jsem použil na dumpnutí, ale určitě něco z Githubu. Potom zde https://curlconverter.com konvertuji cURL do headers.py a následně stačí PSSH a licenční server.WKS repo je uz privatni Ale objevilo se tam novehttps://cdm-project.com/Decryption-Tools/TPD-Keys.gitZkousel to nekdo s ceskou verzi SST?
Taky používám https://cdm-project.com/CDM-Tools/WKS-Keys , ale z telefonu mám dump jen L3, protože L1 se mi určitě nepodařily vytáhnout. Bylo to z šuplíkového Nexusu 6, do kterého jsem musel nahrát poslední originální ROM od Googlu (asi Android 7.1.2), ale už si nepamatuji, co jsem použil na dumpnutí, ale určitě něco z Githubu. Potom zde https://curlconverter.com konvertuji cURL do headers.py a následně stačí PSSH a licenční server.
Ještě lze klíče vypreparovat pomocí Wayback Machinehttps://web.archive.org/web/20230301175904/https://cdm-project.com/CDM-Tools/WKS-Keys/commit/b53025563f154b89c50d7a97f769fab66fc1a8f2
Takze Vivaldi finguje a PSSH taky, jednalo se o zahranicni produkci, ktera nebyla heslovana .....Zkousim zive vysilani CT Sport a koukam ze to ma dokonce 12 klicu .........Zkousel to nekdo dekodovat "on the fly" ty zive streamy? A jestli ano s cim?
AAAANXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABUiBjQyMi10djiEtq4BSOPclZsGUAA=
000000357073736800000000edef8ba979d64acea3c827dcd51d21ed0000001522063432322d74763884b6ae0148e3dc959b065000
000000xx70737368 = PSSH header [SIX = ZEROS always | xx = interchangebale | 70737368]00000000 = [ 8 ZEROS]edef8ba979d64acea3c827dcd51d21ed = PSSH DRM System Id (WV)000000xx = PSSH 32 bit data | xx = interchangebale22063432322d74763884b6ae0148e3dc959b065000 = PSSH payload [could be more or less]
AAAANXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABUiBjQyMi10djjIsK4BSOPclZsGUAA=
000000357073736800000000edef8ba979d64acea3c827dcd51d21ed0000001522063432322d747638c8b0ae0148e3dc959b065000
Já zkoušel vše odchytit z jednoho momentu "tady a teď", ale žádný z těch 12ti klíčů mi nefungoval. Jestli se to vše mění během i toho stahování toho jednoho souboru, pak to asi tak jednoduché nebude. Spíš sem myslel, že je potřeba těch řetězců vyzkoušet víc po sobě, ale kombinace vícero klíčů z dvanácti... to už chce taky nějaký automatizovaný bruteforce nástroj aspoň....
const i = n.streamUrls.find(o=>!o.isLabeling) , a = JSON.stringify({ streamUrl: (i == null ? void 0 : i.main) || "", params: { id: t, idType: r === "episode" ? "idec" : r } }); try { await fetch(`${e}/shadow-call`, { method: "POST", headers: { "Content-Type": "application/json" }, body: a }) } catch {}
Aktuálně funguje tento build yt-dlp https://github.com/bashonly/yt-dlp/releases/tag/ceskatelevize - čeká se na merge viz https://github.com/yt-dlp/yt-dlp/issues/6539
sudo curl -L https://github.com/bashonly/yt-dlp/releases/download/ceskatelevize/yt-dlp_linux -o /usr/local/bin/yt-ctsudo chmod a+rx /usr/local/bin/yt-ctyt-ct -F URLyt-ct -f URL