Hello, would a kind soul be able to download this Helene Rolles concert for me?
https://www.tf1.fr/tmc/helene-en-concert/videos/helene-le-concert-evenement-au-theatre...-04996022.html
+ Reply to Thread
Results 1 to 23 of 23
-
-
Here is the link to the video on TF1 for the song: Hélène, the event concert at the Théâtre Marigny
https://www.swisstransfer.com/d/9f541ed8-2c85-4346-9904-f9d2628e28f7
The link is only available for 30 days : Ce lien expirera le 28/01/2026 à 12:35 -
-
Hi Gauthey, I created a program in Python to directly download the video from TF1, M6, FranceTV.
[Attachment 90499 - Click to enlarge]
If you want to know, I can help privately with how I did it, but I also speak French. -
To download from TF1 with Tampermonkey, I used a panel to get the video title, MPD, PSSH, and license URL.
1- Download Tampermonkey: https://www.tampermonkey.net/
2 - Here is my script for TF1:
It looks like this:Code:// ==UserScript== // @name TF1 DRM // @namespace http://greasyfork.org/ // @version 1.0 // @description Panel Widevine : titre de video + MPD + Licence + PSSH // @run-at document-start // @match *://*.tf1.fr/* // ==/UserScript== (function () { 'use strict'; const seen = { url: new Set(), mpd: new Set(), licence: new Set(), pssh: new Set() }; const pendingLines = []; let panelVisible = false; // Supprime les accents d'une chaîne function removeAccents(str) { return str.normalize("NFD").replace(/[\u0300-\u036f]/g, ""); // Supprime les accents } // Nettoie la chaîne pour un nom de fichier function sanitizeFilename(str) { return removeAccents(str) .replace(/[\\\/:*?"<>|]/g, " - ") // Remplace les caractères interdits par " - " .replace(/\s+/g, " ") // Remplace les espaces multiples par un seul espace .replace(/-+/g, "-") // Remplace les tirets multiples par un seul tiret .trim(); // Supprime les espaces au début et à la fin } function addLine(label, value) { pendingLines.push({ label, value }); if (panelVisible) renderPending(); } function renderPending() { const box = document.getElementById("wv-content"); if (!box) return; while (pendingLines.length) { const { label, value } = pendingLines.shift(); const line = document.createElement("div"); line.style.cssText = "display:flex;gap:6px;margin-bottom:6px;border-bottom:1px solid #333;padding-bottom:4px;"; const textWrap = document.createElement("div"); textWrap.style.cssText = "flex:1;word-break:break-all;"; textWrap.innerHTML = `<span style="color:red;font-weight:bold;">${label}:</span> <span style="color:yellow;">${value}</span>`; const btn = document.createElement("button"); btn.textContent = "📋"; // ✅ agrandir l'emoji btn.style.fontSize = "20px"; // tu peux mettre 24px, 30px selon ce que tu veux btn.style.padding = "2px 6px"; // ajuster le padding si besoin btn.style.cursor = "pointer"; // joli curseur au survol btn.style.alignSelf = "flex-start"; // aligne le bouton en haut du container btn.style.marginTop = "-10px"; // ajustement fin si besoin btn.onclick = () => { navigator.clipboard.writeText(value); // copie dans le presse-papier // affiche temporairement "copié ✅" textWrap.innerHTML = `<span style="color:red;font-weight:bold;">${label}:</span> <span style="color:cyan;">${value} (copié ✅)</span>`; setTimeout(() => { textWrap.innerHTML = `<span style="color:red;font-weight:bold;">${label}:</span> <span style="color:yellow;">${value}</span>`; }, 2000); // revient au texte normal après 2 secondes }; line.append(textWrap, btn); box.appendChild(line); } } function createPanel() { if (document.getElementById("wv-panel")) return; const dlg = document.createElement("dialog"); dlg.id = "wv-panel"; dlg.open = true; dlg.style.cssText = "position:fixed;top:0px;left:-450px;width:500px;max-height:600px;padding:8px;background:#0b0b0b;color:#0f0;font-family:monospace;font-size:12px;border:3px solid #00f;z-index:2147483647;overflow-y:auto;"; dlg.innerHTML = ` <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:18px"> <b style="color:red;font-size:18px">Widevine Information</b> <button id="wv-clear">Clear</button> </div> <div id="wv-content"></div> `; document.documentElement.appendChild(dlg); panelVisible = true; renderPending(); document.getElementById("wv-clear").onclick = () => { const box = document.getElementById("wv-content"); if (box) box.innerHTML = ""; Object.values(seen).forEach(s => s.clear()); panelVisible = false; pendingLines.length = 0; }; } // ------------------- DETECTION AUTOMATIQUE Mediainfo pour le titre, MPD & LICENCE ------------------- setInterval(async () => { for (const r of performance.getEntriesByType("resource")) { // ---- TITLE (mediainfo) ---- if (r.name.includes("mediainfo") && !seen.url.has(r.name)) { seen.url.add(r.name); try { const data = await (await fetch(r.name)).json(); const title = data?.media?.title; if (title) { addLine("Titre", sanitizeFilename(title)); } } catch {} } // ---- MPD ---- if (r.name.includes(".mpd") && !seen.mpd.has(r.name)) { seen.mpd.add(r.name); addLine("MPD", r.name); } // ---- lICENCE ---- if (r.name.includes("acquire") && !seen.licence.has(r.name)) { seen.licence.add(r.name); createPanel(); addLine("Licence", r.name); } } }, 500); // ------------------- PSSH ------------------- const orig = MediaKeySession.prototype.generateRequest; MediaKeySession.prototype.generateRequest = function (type, data) { if (type === "cenc") { try { const p = btoa(String.fromCharCode(...new Uint8Array(data))); if (!seen.pssh.has(p)) { seen.pssh.add(p); addLine("PSSH", p); } } catch {} } return orig.call(this, type, data); }; })();
[Attachment 90500 - Click to enlarge]
Here is my script to get the keys on TF1:
results :Code:import base64, requests, sys, xmltodict, os, pyfiglet from pywidevine.L3.cdm import cdm, deviceconfig from base64 import b64encode, b64decode from pywidevine.L3.getPSSH import get_pssh from pywidevine.L3.decrypt.wvdecryptcustom import WvDecrypt RED = '\x1b[38;5;160m' GREEN = '\x1b[38;5;46m' CYAN = '\x1b[38;5;14m' YELLOW = '\x1b[38;5;226m' END = '\x1b[0;0m' title = pyfiglet.figlet_format('Widevine Decryptor Keys', font='slant', width=150) print(f'{CYAN}{title}{END}') def psshLength(num): if len(num) >= 150: print(f"{RED}Le code PSSH est incorrect : {num}{END}") else: return num pssh = input(f"{RED}PUSSH:{END} {YELLOW}") if not psshLength(pssh): print(f"{RED}❌ PSSH trop long{END}") exit() lic_url = input(f'{RED}Licence URL:{END} {YELLOW}') if not lic_url: print(f"{RED}❌ La Licence est invalide{END}") exit() headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0'} def WV_Function(pssh, lic_url, cert_b64=None): wvdecrypt = WvDecrypt(init_data_b64=pssh, cert_data_b64=cert_b64, device=deviceconfig.device_android_generic) widevine_license = requests.post(url=lic_url, data=wvdecrypt.get_challenge(), headers=headers) license_b64 = b64encode(widevine_license.content) wvdecrypt.update_license(license_b64) Correct, keyswvdecrypt = wvdecrypt.start_process() if Correct: return Correct, keyswvdecrypt correct, keys = WV_Function(pssh, lic_url) if correct: print(f"\n🧩 {CYAN}KID:KEY trouvés :{END} {GREEN}{len(keys)}{END}\n") for key in keys: print(f'{GREEN}--key :{END} {RED}{key}{END}') else: print(f"{RED}❌ Aucune clé trouvée{END}") input(f"\n{CYAN}Appuier sur Entrée pour sortir...{END}")
[Attachment 90501 - Click to enlarge] -
A script update:
Code:import base64, requests, sys, xmltodict, os, pyfiglet from pywidevine.L3.cdm import cdm, deviceconfig from base64 import b64encode, b64decode from pywidevine.L3.getPSSH import get_pssh from pywidevine.L3.decrypt.wvdecryptcustom import WvDecrypt # ======================= # ANSI Colors # ======================= RED = '\x1b[38;5;160m' GREEN = '\x1b[38;5;46m' CYAN = '\x1b[38;5;14m' YELLOW = '\x1b[38;5;226m' END = '\x1b[0;0m' # ======================= # Title # ======================= def print_title(): title = pyfiglet.figlet_format('Widevine Decryptor Keys', font='slant', width=150) print(f'{CYAN}{title}{END}') # ======================= # Validation des entrées # ======================= def is_valid_pssh(pssh: str, max_len: int = 150) -> bool: if not pssh.strip(): print(f"{RED}❌ PSSH vide{END}") return False if len(pssh) > max_len: print(f"{RED}❌ PSSH trop long ({len(pssh)} caractères){END}") return False return True def is_valid_url(url: str) -> bool: if not url.strip(): print(f"{RED}❌ URL de licence invalide{END}") return False if not url.startswith(("http://", "https://")): print(f"{RED}❌ L’URL doit commencer par http:// ou https://{END}") return False return True def get_widevine_keys(pssh, licence_url, headers): wv = WvDecrypt(init_data_b64=pssh, cert_data_b64=None, device=deviceconfig.device_android_generic) try: response = requests.post(licence_url, data=wv.get_challenge(), headers=headers, timeout=10) response.raise_for_status() except Exception as e: print(f"{RED}❌ Erreur licence : {e}{END}") return False, [] wv.update_license(b64encode(response.content)) success, keys = wv.start_process() return success, keys if success else [] # ======================= # Main program # ======================= def main(): print_title() pssh = input(f"{RED}PUSSH:{END} {YELLOW}") if not is_valid_pssh(pssh): sys.exit(1) licence_url = input(f'{RED}Licence URL:{END} {YELLOW}') if not is_valid_url(licence_url): sys.exit(1) headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0'} success, keys = get_widevine_keys(pssh, licence_url, headers) if success and keys: print(f"\n🧩 {CYAN}Keys found:{END} {GREEN}{len(keys)}{END}\n") for key in keys: print(f"{GREEN}-- key:{END} {RED}{key}{END}") else: print(f"{RED}❌ No keys found{END}") input(f"\n{CYAN}Press Enter to exit...{END}") # ======================= # Entry point # ======================= if __name__ == "__main__": main() -
-
Yes, the video is 59 minutes and 53 seconds long, according to the link in my data.
-
Possible de me télécharger aussi cette video https://www.rts.ch/play/tv/des-trains-pas-comme-les-autres/video/norvege-du-nord-episo...2-af3d11cfad02
-
salut cgauthey, j'ai essayer avec un urbanvpn mais j'arrive a acceder a la video : La RTS ne dispose pas des droits de diffusion en dehors de la Suisse.
si vous avez un vpn qui est gartuit qui fonctionne dite le moi. je pourais vous aidez. -
@cgauthey.
You can do it by yourself
[Attachment 90517 - Click to enlarge]
WidevineProxy2
Code:N_m3u8DL-RE "https://rtsvod-drm-b.akamaized.net/out/v1/d5c5ec44f9b5499bab359efd76e92fd6/28f7fa5ba0d74bc284b9c3c30483e3f5/079ab81b5a29436a8858584d322802e1/index.mpd?sdh=true&caption=trpaa_20250927_full_vtt.b6ff517892c4c782a5f91cb3e58885bf.vtt:fr:Fran%C3%A7ais%20(SDH):sdh&webvttbaseurl=https://vod-subtitles.akamaized.net/assets/rts/rts-playrts-service-7400519624668-20251004124801169-drm" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:146.0) Gecko/20100101 Firefox/146.0" -H "Accept: */*" -H "Referer: https://www.rts.ch/" -H "Origin: https://www.rts.ch" --key 00888f2f07f74cdab93c7d6fb6352ee6:85ceb68e503f9f6dfc05c5dac9f88ec3 --key b15834f163cb4c50b82b566749135cbf:d328d75b0a03169570302107f40000f0 -M format=mkv
Anyway...
https://gofile.io/d/bM8pg7Last edited by cedric8528; 30th Dec 2025 at 04:20.
-
hey cedric8528, I tried using widevineproxy2 and I got the command with keys and headers but the final output didnt work
[Attachment 90532 - Click to enlarge]
the command I used from widevineproxy2 was this
and the error I got in the terminal was thisCode:N_m3u8DL-RE "https://rtsvod-drm-b.akamaized.net/out/v1/d5c5ec44f9b5499bab359efd76e92fd6/28f7fa5ba0d74bc284b9c3c30483e3f5/079ab81b5a29436a8858584d322802e1/index.mpd?sdh=true&caption=trpaa_20250927_full_vtt.b6ff517892c4c782a5f91cb3e58885bf.vtt:fr:Fran%C3%A7ais%20(SDH):sdh&webvttbaseurl=https://vod-subtitles.akamaized.net/assets/rts/rts-playrts-service-7400519624668-20251004124801169-drm" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36" -H "DNT: 1" -H "Accept: */*" -H "Origin: https://www.rts.ch" -H "Referer: https://www.rts.ch/" --key b15834f163cb4c50b82b566749135cbf:d328d75b0a03169570302107f40000f0 --use-shaka-packager -M format=mkv
is there something wrong I did there? or were the keys not correct?Code:15:39:45.966 WARN : index_2025-12-30_15-39-18.mp4 15:39:45.967 WARN : index_2025-12-30_15-39-18.fr.m4a 15:39:45.967 WARN : index_2025-12-30_15-39-18.fr.srt 15:39:45.967 WARN : Muxing to index_2025-12-30_15-39-18.MUX.mkv 15:39:46.355 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 3 referenced 15:39:46.356 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.357 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.358 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 2 referenced 15:39:46.358 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.359 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.360 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.360 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.361 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 1 referenced 15:39:46.361 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.362 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.362 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.363 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.363 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.364 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.365 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 2 referenced 15:39:46.365 WARN : Last message repeated 1 times 15:39:46.366 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.367 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 3 referenced 15:39:46.367 WARN : Last message repeated 1 times 15:39:46.368 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.368 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 2 referenced 15:39:46.369 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.370 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.370 WARN : [h264 @ 000001a59ed72a80] Invalid inter IDR frame 15:39:46.371 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 1 referenced 15:39:46.371 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.372 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.372 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.373 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.373 WARN : [h264 @ 000001a59ed72a80] deblocking_filter_idc 31 out of range 15:39:46.374 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.374 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.375 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.375 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 5 referenced 15:39:46.376 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.376 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.377 WARN : [h264 @ 000001a59ed72a80] slice type 32 too large at 3 15:39:46.377 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.378 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 2 referenced 15:39:46.378 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.378 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.379 WARN : [h264 @ 000001a59ed72a80] slice type 19 too large at 2 15:39:46.379 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.380 WARN : [h264 @ 000001a59ed72a80] top block unavailable for requested intra mode -1 15:39:46.381 WARN : [h264 @ 000001a59ed72a80] error while decoding MB 0 0, bytestream 18768 15:39:46.382 WARN : [h264 @ 000001a59ed72a80] number of reference frames (0+2) exceeds max (1; probably corrupt input), discarding one 15:39:46.382 WARN : [h264 @ 000001a59ed72a80] non-existing PPS 26 referenced 15:39:46.383 WARN : [h264 @ 000001a59ed72a80] A non-intra slice in an IDR NAL unit. 15:39:46.383 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.384 WARN : [h264 @ 000001a59ed72a80] deblocking filter parameters 0 -12 out of range 15:39:46.384 WARN : [h264 @ 000001a59ed72a80] no frame! 15:39:46.407 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.411 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.412 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.413 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.414 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.415 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.416 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.420 WARN : [h264 @ 000001a59f672c00] non-existing PPS 7 referenced 15:39:46.423 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.427 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.430 WARN : [h264 @ 000001a59f672c00] pps_id 293 out of range 15:39:46.431 WARN : [h264 @ 000001a59f672c00] non-existing PPS 26 referenced 15:39:46.433 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.434 WARN : [h264 @ 000001a59f672c00] non-existing PPS 18 referenced 15:39:46.434 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.435 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.438 WARN : [h264 @ 000001a59f672c00] non-existing PPS 88 referenced 15:39:46.442 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.443 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.444 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.445 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.446 WARN : [h264 @ 000001a59f672c00] non-existing PPS 11 referenced 15:39:46.447 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.451 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.452 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.456 WARN : Last message repeated 1 times 15:39:46.457 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.458 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.460 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.461 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.463 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.463 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.467 WARN : Last message repeated 1 times 15:39:46.468 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.474 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.481 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.482 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.491 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.492 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.494 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.495 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.496 WARN : [h264 @ 000001a59f672c00] non-existing PPS 13 referenced 15:39:46.497 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.501 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.503 WARN : [h264 @ 000001a59f672c00] non-existing PPS 11 referenced 15:39:46.504 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.507 WARN : Last message repeated 1 times 15:39:46.507 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.508 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.512 WARN : Last message repeated 1 times 15:39:46.513 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.514 WARN : [h264 @ 000001a59f672c00] non-existing PPS 12 referenced 15:39:46.515 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.516 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.523 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.529 WARN : [h264 @ 000001a59f672c00] non-existing PPS 25 referenced 15:39:46.530 WARN : [h264 @ 000001a59f672c00] non-existing PPS 27 referenced 15:39:46.531 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.534 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.536 WARN : [h264 @ 000001a59f672c00] non-existing PPS 21 referenced 15:39:46.537 WARN : [h264 @ 000001a59f672c00] non-existing PPS 12 referenced 15:39:46.538 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.540 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.542 WARN : Last message repeated 1 times 15:39:46.543 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.547 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.553 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.558 WARN : Last message repeated 1 times 15:39:46.559 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.559 WARN : [h264 @ 000001a59f672c00] non-existing PPS 24 referenced 15:39:46.560 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.561 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.561 WARN : [h264 @ 000001a59f672c00] non-existing PPS 7 referenced 15:39:46.563 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.564 WARN : [h264 @ 000001a59f672c00] non-existing PPS 7 referenced 15:39:46.567 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.568 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.572 WARN : [h264 @ 000001a59f672c00] non-existing PPS 9 referenced 15:39:46.574 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.575 WARN : [h264 @ 000001a59f672c00] non-existing PPS 12 referenced 15:39:46.576 WARN : [h264 @ 000001a59f672c00] non-existing PPS 21 referenced 15:39:46.578 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.579 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.581 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.583 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.586 WARN : Last message repeated 2 times 15:39:46.587 WARN : [h264 @ 000001a59f672c00] non-existing PPS 25 referenced 15:39:46.589 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.591 WARN : [h264 @ 000001a59f672c00] non-existing PPS 8 referenced 15:39:46.591 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.592 WARN : [h264 @ 000001a59f672c00] non-existing PPS 14 referenced 15:39:46.595 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.597 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.598 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.600 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.601 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.800 WARN : Last message repeated 1 times 15:39:46.802 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.803 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.804 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.806 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.807 WARN : Last message repeated 1 times 15:39:46.810 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.811 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.812 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.813 WARN : [h264 @ 000001a59f672c00] non-existing PPS 32 referenced 15:39:46.814 WARN : [h264 @ 000001a59f672c00] non-existing PPS 9 referenced 15:39:46.814 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.816 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.816 WARN : Last message repeated 2 times 15:39:46.817 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.818 WARN : [h264 @ 000001a59f672c00] non-existing PPS 62 referenced 15:39:46.818 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.819 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.820 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.821 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.822 WARN : [h264 @ 000001a59f672c00] non-existing PPS 7 referenced 15:39:46.822 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.823 WARN : Last message repeated 4 times 15:39:46.824 WARN : [h264 @ 000001a59f672c00] non-existing PPS 23 referenced 15:39:46.824 WARN : [h264 @ 000001a59f672c00] non-existing PPS 42 referenced 15:39:46.825 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.826 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.827 WARN : Last message repeated 1 times 15:39:46.828 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.828 WARN : [h264 @ 000001a59f672c00] non-existing PPS 82 referenced 15:39:46.828 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.829 WARN : Last message repeated 1 times 15:39:46.829 WARN : [h264 @ 000001a59f672c00] non-existing PPS 24 referenced 15:39:46.829 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.830 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.830 WARN : [h264 @ 000001a59f672c00] non-existing PPS 8 referenced 15:39:46.831 WARN : Last message repeated 1 times 15:39:46.831 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.831 WARN : [h264 @ 000001a59f672c00] non-existing PPS 13 referenced 15:39:46.832 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.832 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.833 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.833 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.833 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.834 WARN : [h264 @ 000001a59f672c00] non-existing PPS 10 referenced 15:39:46.834 WARN : [h264 @ 000001a59f672c00] non-existing PPS 8 referenced 15:39:46.835 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.836 WARN : [h264 @ 000001a59f672c00] non-existing PPS 14 referenced 15:39:46.836 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.837 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.837 WARN : Last message repeated 1 times 15:39:46.837 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.838 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.838 WARN : Last message repeated 1 times 15:39:46.839 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.839 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.839 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.840 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.840 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.841 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.841 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.842 WARN : [h264 @ 000001a59f672c00] non-existing PPS 11 referenced 15:39:46.843 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.844 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.845 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.845 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.847 WARN : [h264 @ 000001a59f672c00] non-existing PPS 13 referenced 15:39:46.847 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.848 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.849 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.849 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.850 WARN : [h264 @ 000001a59f672c00] non-existing PPS 15 referenced 15:39:46.850 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.850 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.851 WARN : Last message repeated 1 times 15:39:46.852 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.853 WARN : Last message repeated 1 times 15:39:46.853 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.854 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.855 WARN : [h264 @ 000001a59f672c00] non-existing PPS 11 referenced 15:39:46.856 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.856 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.857 WARN : Last message repeated 1 times 15:39:46.857 WARN : [h264 @ 000001a59f672c00] non-existing PPS 13 referenced 15:39:46.857 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.858 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.858 WARN : [h264 @ 000001a59f672c00] non-existing PPS 10 referenced 15:39:46.859 WARN : [h264 @ 000001a59f672c00] non-existing PPS 9 referenced 15:39:46.859 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.859 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.860 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.860 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.861 WARN : [h264 @ 000001a59f672c00] non-existing PPS 15 referenced 15:39:46.861 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.861 WARN : [h264 @ 000001a59f672c00] non-existing PPS 49 referenced 15:39:46.862 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.863 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.866 WARN : Last message repeated 1 times 15:39:46.866 WARN : [h264 @ 000001a59f672c00] non-existing PPS 17 referenced 15:39:46.868 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.873 WARN : Last message repeated 1 times 15:39:46.874 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.875 WARN : [h264 @ 000001a59f672c00] non-existing PPS 10 referenced 15:39:46.877 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.881 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.882 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.887 WARN : Last message repeated 2 times 15:39:46.888 WARN : [h264 @ 000001a59f672c00] non-existing PPS 14 referenced 15:39:46.888 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.889 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.890 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.892 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.898 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.904 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.904 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.905 WARN : [h264 @ 000001a59f672c00] non-existing PPS 26 referenced 15:39:46.906 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.907 WARN : [h264 @ 000001a59f672c00] pps_id 399 out of range 15:39:46.911 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.911 WARN : [h264 @ 000001a59f672c00] non-existing PPS 8 referenced 15:39:46.914 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.915 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.916 WARN : [h264 @ 000001a59f672c00] non-existing PPS 12 referenced 15:39:46.918 WARN : [h264 @ 000001a59f672c00] non-existing PPS 3 referenced 15:39:46.926 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.926 WARN : [h264 @ 000001a59f672c00] non-existing PPS 49 referenced 15:39:46.930 WARN : [h264 @ 000001a59f672c00] non-existing PPS 13 referenced 15:39:46.931 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.932 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.939 WARN : Last message repeated 2 times 15:39:46.939 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.941 WARN : [h264 @ 000001a59f672c00] non-existing PPS 14 referenced 15:39:46.942 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.943 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.945 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.946 WARN : [h264 @ 000001a59f672c00] non-existing PPS 1 referenced 15:39:46.953 WARN : Last message repeated 1 times 15:39:46.954 WARN : [h264 @ 000001a59f672c00] non-existing PPS 4 referenced 15:39:46.955 WARN : [h264 @ 000001a59f672c00] non-existing PPS 6 referenced 15:39:46.956 WARN : [h264 @ 000001a59f672c00] non-existing PPS 5 referenced 15:39:46.958 WARN : [h264 @ 000001a59f672c00] non-existing PPS 2 referenced 15:39:46.972 WARN : Cleaning files... 15:39:46.979 WARN : Rename to index_2025-12-30_15-39-18.mkv 15:39:46.980 INFO : Done
I Just downloaded the video from the link you sent and the one iamghost sent as well in this thread cgauthey posted separately https://forum.videohelp.com/threads/419708-rts-download
and both videos were working fine video and audio wise
any help would be great and thanks in advance
-
erm... yes
you have to copy other keys. to add in cmd
see they have 2 keys, 1 for video and 1 for audio
[Attachment 90540 - Click to enlarge] -
-
I used both keys but same result.. did I do something wrong

Code:N_m3u8DL-RE "https://rtsvod-drm-b.akamaized.net/out/v1/d5c5ec44f9b5499bab359efd76e92fd6/28f7fa5ba0d74bc284b9c3c30483e3f5/079ab81b5a29436a8858584d322802e1/index.mpd?sdh=true&caption=trpaa_20250927_full_vtt.b6ff517892c4c782a5f91cb3e58885bf.vtt:fr:Fran%C3%A7ais%20(SDH):sdh&webvttbaseurl=https://vod-subtitles.akamaized.net/assets/rts/rts-playrts-service-7400519624668-20251004124801169-drm" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36" -H "DNT: 1" -H "Accept: */*" -H "Origin: https://www.rts.ch" -H "Referer: https://www.rts.ch/" --key b15834f163cb4c50b82b566749135cbf:d328d75b0a03169570302107f40000f0 --key 00888f2f07f74cdab93c7d6fb6352ee6:85ceb68e503f9f6dfc05c5dac9f88ec3 --use-shaka-packager -M format=mkv
-
Your command works for decrypting 1080p
I suppose you have shaka-packager in the folder of N_m3u8DL-RE
[Attachment 90542 - Click to enlarge] -
If you don't have shaka-packager with N_m3u8DL-RE, here is a link below.
You will need to download it here: https://github.com/shaka-project/shaka-packager/releases/tag/v3.4.2
Download: packager-win-x64.exe is renamed to shaka-packager.exe -
-
-
Okay, I’d like to try mp4decrypt. I’ve already downloaded the 484×272 resolution, so my first question is: how do I obtain the keys for that resolution?
Should I first set the resolution to the lowest one and then run widevineproxy2?
Also, what is the correct command to use mp4decrypt with the keys?
Thanks in advance
-
The keys are the same for all formats and resolutions. If you want to display and download 480p video formats with widevineproxy2, you will need to add a command directly to widevineproxy2.zip. Go to panel/panel.js, to line 131 at the end, add
orCode:-M format=mkv -sv "480"`;
to have the command with the 480p video format.Code:-M format=mkv --select-video "480"`;
Similar Threads
-
Need help to download a concert stream from BBC iPlayer
By elektro in forum Video Streaming DownloadingReplies: 36Last Post: 28th Jan 2025, 22:53 -
Download videos from tf1 + drm
By cgauthey in forum Video Streaming DownloadingReplies: 10Last Post: 14th Jan 2025, 12:13 -
www.tf1.fr - How to find link easily and download ?
By mjking in forum Video Streaming DownloadingReplies: 27Last Post: 8th Dec 2024, 17:20 -
Help to download videos from TF1+
By Azzurino in forum Video Streaming DownloadingReplies: 4Last Post: 28th Nov 2024, 04:42 -
Looking for help to download this Ash concert
By zeus182 in forum Video Streaming DownloadingReplies: 5Last Post: 21st Dec 2022, 13:17


Quote
