ČT iVysílání: nefunguje stahování s yt-dlp ani youtube-dl

Jigdo

  • ****
  • 378
    • Zobrazit profil
Re:ČT iVysílání: nefunguje stahování s yt-dlp ani youtube-dl
« Odpověď #75 kdy: 04. 09. 2023, 12:35:10 »
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í.

Do anglofonnich zemi spousta francouzske produkce nepronikla z nejakeho zahadneho duvodu ;) takze nektere filmy od Funese atd. je prijemne shlednout po letech. To same i z nektere Italske a nemecke "pre 1989" produkce ......


Pro ty kdo by chteli i orginalni zvukovou stopu staci tohle (pro tituly co nejsou sifrovane - pro ty co jsou je treba pouzit trochu pracnejsi postup, ktery jsem popsal vyse s "N_m3u8DL-RE" ).


yt-dlp 2023.07.16.012858 (ceskatelevize)
------------------------------------------------------------------------
Kód: [Vybrat]
sudo curl -L https://github.com/bashonly/yt-dlp/releases/download/2023.07.16.012858/yt-dlp_linux -o /usr/local/bin/yt-ct
sudo chmod a+rx /usr/local/bin/yt-ct

Kód: [Vybrat]
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/

#Pokud pouzivate Proxy
--proxy socks5://127.0.0.1:1080


Muj Conf:
Kód: [Vybrat]
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


Re:ČT iVysílání: nefunguje stahování s yt-dlp ani youtube-dl
« Odpověď #76 kdy: 05. 09. 2023, 09:55:04 »
Já tomu rozumím, že si chce někdo i zahraniční tituly stáhnout z iVysílání a vůbec proti tomu nic nemám. Chápu i ten SOCKS nejspíš kvůli české IP. Jen jsem naznačil, že když si sem tam stáhnu něco vyrobené v ČT, tak prakticky nepotřebuji dešifrovat a proto se jen někdy podívám, jestli to stále jde.

Re:ČT iVysílání: nefunguje stahování s yt-dlp ani youtube-dl
« Odpověď #77 kdy: 06. 09. 2023, 13:20:05 »
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.

WKS repo je uz privatni :(

Ale objevilo se tam nove
https://cdm-project.com/Decryption-Tools/TPD-Keys.git

Zkousel to nekdo s ceskou verzi SST?

Ještě lze klíče vypreparovat pomocí Wayback Machine
https://web.archive.org/web/20230301175904/https://cdm-project.com/CDM-Tools/WKS-Keys/commit/b53025563f154b89c50d7a97f769fab66fc1a8f2


Jigdo

  • ****
  • 378
    • Zobrazit profil
Pred nedavnem se objevil zajimavy python skrip na stahovani ze stranek
ktere ho nabizi zdarma a neni treba cucat PSSH/KID/KEY v prohlizeci (F12),
ale staci mit jen svuj device_private_key/device_client_id_blob a nebo remote a spravnou IP adresu ;)
https://github.com/stabbedbybrick/freevine


V nabidce jsou v soucasnosti:

ROKU - US IP:  1080p, DD5.1
https://therokuchannel.roku.com/

CTV - CA IP:   1080p, DD5.1
https://www.ctv.ca/movies

ALL4 - UK IP:  1080p, AAC2.0
https://www.channel4.com/categories/film

UKTV - UK IP:  1080p, AAC2.0
https://uktvplay.co.uk/collections/engineering

STV - UK IP:   1080p, AAC2.0
https://player.stv.tv/categories/movies

CRKL - US IP:  1080p, AAC2.0
https://www.crackle.com/movies

ITV - UK IP:   720p,  AAC2.0
https://www.itv.com/watch/categories/films

TUBI US IP:  720p,  AAC2.0
https://tubitv.com/movies

PLUTO - US IP: 720p,  AAC2.0
https://pluto.tv/en/on-demand/movies


Neni tady nekdo zkuseny co by se mu chtelo napsat
to i pro iVysilani (tituly ktere jsou sifrovane)?


Jigdo

  • ****
  • 378
    • Zobrazit profil
Re:ČT iVysílání: nefunguje stahování s yt-dlp ani youtube-dl
« Odpověď #80 kdy: 30. 10. 2023, 17:37:37 »
YT-DLP je uz ve verzi stable@2023.10.13 a stale CT nefunguje :(


Mozna se to bude nekomu hodit, takhle to funguje mne:
--------------------------------------------------------------------------------
#NoDRM
#Only CS Audio/Subs

#Instalace
sudo curl -L https://github.com/bashonly/yt-dlp/releases/download/2023.10.03.054029/yt-dlp_linux -o /usr/local/bin/yt-ct
sudo chmod a+rx /usr/local/bin/yt-ct

yt-ct URL

#Nefunguje multistream stahovani....drive jsem pouzival tohle:
yt-ct -f "bv*+mergeall[vcodec=none]" --audio-multistreams -vvvvvv -o '%(title)s-%(id)s.%(ext)s' --proxy socks5://127.0.0.1:1080
ale v nove verzi yt-dlp 2023.10.03.054029 (ceskatelevize) uz to stahuje vsechny audio stopy :(
a navic "-S mp4 a nebo -f mp4" nefunguje a video se uklada v mkv kontejneru





--------------------------------------------------------------------------------
Alternativa k YT-DLP je N_m3u8DL-RE a tento program funguje i s Audiaem, ktere je Multistream (Dualni),
ale titulky je treba vytahnout i s MPD a manualne stahnout jednim prikazem ........
nada se to nejak automatizovat aby N_m3u8DL-RE nasel ty titulky, nevi nekdo?

#Multistream #Audio
#NoDRM - #F12 (Chrome)


#######
Filter:
/(encryption=wv)|(subti)/



######################
#Instalace N_m3u8DL-RE
curl --doh-url https://odvr.nic.cz/doh -kLO https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.2.0-beta/N_m3u8DL-RE_Beta_linux-x64_20230628.tar.gz
sudo tar xvf N_m3u8DL-RE_Beta_linux-x64_20230628.tar.gz --strip-components=1 -C /usr/local/bin/ --verbose
sudo chmod a+rx /usr/local/bin/N_m3u8DL-RE
sudo chown root:root /usr/local/bin/N_m3u8DL-RE
ls -ilha /usr/local/bin/
N_m3u8DL-RE --version


#SUB
curl --doh-url https://odvr.nic.cz/doh -o pc-sub.vtt https://imgct.ceskatelevize.cz/cache/data/ivysilani/subtitles/xxx/xxxxxxxxxxx/sub.vtt


#MP4
N_m3u8DL-RE 'https://ivys-cdn.o2tv.cz/cdn/uri/get/?token=xxxxx&contentType=vod&drmOnly=true&expiry=xxxxx&id=xxxxx&playerType=dash&quality=web&region=4&skipIpAddressCheck=false&userId=xxxx&encryption=wv' \
--save-name .iVysilani.Web-DL.AAC.LC2.0.H.264 \
--mux-import path=pc-sub.vtt:lang=cs:name="Čeština" \
-mt -M mp4 -sv best -sa all -ss all





--------------------------------------------------------------------------------
A tady pro sifrovanou verzi je to pracnejsi, ale jde to ;)

#Audio | #Multistream
#DRM - #F12 (Chrome)

#######
Filter:
/(license)|(encryption=wv)|(subti)/

########
Console:
MediaKeySession::generateRequest



#Instalce Bento4
################
curl --doh-url https://odvr.nic.cz/doh -kLO https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-640.x86_64-unknown-linux.zip
unzip -l Bento4-SDK-1-6-0-640.x86_64-unknown-linux.zip | less
sudo unzip -j Bento4-SDK-1-6-0-640.x86_64-unknown-linux.zip 'Bento4-SDK-1-6-0-640.x86_64-unknown-linux/bin/*' -d /usr/local/bin/
ls -ilha /usr/local/bin/


#Instalce PyWideVine
####################
sudo apt install python3-poetry

cd ~/git
git clone https://github.com/rlaphoenix/pywidevine.git
cd pywidevine
python3 -V
pip3 -V
poetry --version
poetry config virtualenvs.in-project true
poetry install
poetry run pywidevine -v

#Vygenerujeme si *.wvd soubor z "device_private_key" a "device_client_id_blob", ktere mame vytahnute z Audroid zarizeni a nebo Studia.
poetry run pywidevine create-device -k device_private_key -c device_client_id_blob -t ANDROID -l 3

#WVD
****_l3.wvd musi byt ve stejnem adresari a nebo s cestou k *.wvd souboru kdyz zadame o klice (KID:KEY)

#Dotaz na KID:KEY
cd ~/git/pywidevine
poetry run pywidevine license "google_aosp_on_ia_emulator_14.0.0_7a771908_4464_l3.wvd" "AAAAxxxxxZsG" "https://ivys-wvproxy.o2tv.cz/license?access_token=c3RlcGFuLWEtb25kcmEtanNvdS1wcm9zdGUtbmVqbGVwc2k="


#A NEBO (#Dotaz na KID:KEY)
pip3 install pywidevine
pywidevine -v
pywidevine create-device -k device_private_key -c device_client_id_blob -t ANDROID -l 3
pywidevine license "08_4464_l3.wvd" "AAAAxxxxxxxxZsG" "https://ivys-wvproxy.o2tv.cz/license?access_token=c3RlcGFuLWEtb25kcmEtanNvdS1wcm9zdGUtbmVqbGVwc2k="

###################
#PSSH request | 2nd KEY!!!!
###################

####
#SUB
curl --doh-url https://odvr.nic.cz/doh -o pc-sub.vtt https://imgct.ceskatelevize.cz/cache/data/ivysilani/subtitles/xxx/xxxxxxxxxxx/sub.vtt

####
#MP4
N_m3u8DL-RE 'https://ivys-cdn.o2tv.cz/cdn/uri/get/?token=xxxxx&contentType=vod&drmOnly=true&expiry=xxxxx&id=xxxxx&playerType=dash&quality=web&region=4&skipIpAddressCheck=false&userId=xxxx&encryption=wv' \
--save-name .iVysilani.Web-DL.AAC.LC2.0.H.264 \
--key  \
--key  \
--key  \
--key  \
--mux-import path=pc-sub.vtt:lang=cs:name="Čeština" \
-mt -M mp4 -sv best -sa all -ss all