Registrare i video di Rai Play usando Stacher

Da qualche giorno diversi utilizzatori del mio script per scaricare i video da Rai Play mi stanno segnalando che si riscontrano difficoltà nel salvare i video in formato MP4, in particolare in quanto compare un messaggio di errore.

A questo punto è necessaria una piccola parentesi tecnica per capire cosa sta succedendo: lo script funziona “scansionando” i possibili URL di file in formato MP4, quindi chiede al sito Rai quali sono le qualità disponibili (più o meno pesanti) e per ciascun file verifica che il video sia effettivamente scaricabile. Infine, propone all’utente una lista di URL.

Perciò lo script non effettua (né ha mai effettuato) alcun tipo di download. Si limita a mostrare un elenco di link, mentre è l’utente che deve scaricare il file che preferisce.

Data la natura di script che viene eseguito all’interno della pagina, tramite l’aiuto di una piccola estensione, esso si deve limitare ai file MP4. Sarebbe infatti molto complicato creare un programma che registra i flussi video in formato HLS, operazione che richiede il salvataggio di numerosi frammenti che poi vanno nuovamente assemblati.

Di fatto lo script sta funzionando in modo corretto: prova a vedere se ci sono i video in formato MP4 e propone all’utente quelli che si possono salvare. Il problema sorge quando non ci sono file MP4 scaricabili perché Rai li sta bloccando tutti.

Ed eccoci qua.

Serve un altro software per registrare i video

La scelta di usare il termine “registrare”, quando fino a oggi ho sempre parlato di scaricare, non è casuale. Come accennato, i video su Rai Play non sono disponibili solo in formato MP4 ma ci sono anche dei flussi (separati per audio e video) in HLS, che si riconoscono dalla tipica estensione M3U8.

I primi si scaricano, i secondi si devono registrare e questo esula dal mio script. Bisogna usare un programma che registri sia il flusso video che quello audio e poi li unisca insieme per generare un file MP4 o MKV che prima non esisteva.

Per farlo da riga di comando si può usare yt-dlp, che è un fork (versione derivata) di youtube-dl. In questo post vorrei però suggerire l’uso di Stacher, una interfaccia grafica che semplifica l’uso di questi strumenti.

Ci sono tre passaggi che devono essere svolti:

  1. Installare Stacher e lo strumento ffmpeg
  2. Configurare il software
  3. Avviare la registrazione

I primi due passaggi devono essere svolti soltanto una volta, il terzo invece andrà ripetuto sempre.

Aggiornamento del 13 marzo 2024: grazie alla nuova versione del programma yt-dlp, gran parte di questa guida è ora “superflua”. Se volete solo il video in qualità massima installate Stacher e ffmpeg, poi saltate la parte di configurazione e andate direttamente in fondo alla fase di registrazione scegliendo la qualità “bestvideo+bestaudio”.

Sui pochissimi video in cui non dovesse funzionare quella voce, optate per la qualità “best” (funziona solo su programmi in cui non c’è la traccia audio a parte).

Lascio la versione precedente della guida per chi desidera scegliere la dimensione del video o il contenitore di uscita (MP4 / MKV).

Installare il necessario

Potete scaricare Stacher dal sito ufficiale cliccando qui. Il software è disponibile per macOS, Windows e Linux (DEB).

Dopo averlo installato, al primo avvio vi dovrebbe chiedere di scaricare youtube-dl (che in realtà sarà yt-dlp). Accettate e lasciate che proceda.

A questo punto è importantissimo scaricare e scompattare una versione specifica di ffmpeg nella cartella del programma. Ciò si può vedere anche cliccando sul menù Something not working? all’ultima voce, che tratta i problemi audio.

Cliccandoci sopra si aprirà questa pagina web con le istruzioni. A questo punto è importante fare una distinzione in base al sistema operativo usato.

Nota bene: saltando questo passaggio è quasi certo che verranno scaricati video senza audio, o si riscontreranno altri problemi.

FFmpeg su Windows

Il progetto yt-dlp fornisce delle versioni già compilate specifiche per Windows, pertanto si può consultare la pagina dei rilasci per vedere che ci sono diversi file ZIP.

Le versioni vengono rilasciate in automatico ogni giorno e purtroppo mi sono reso conto che quelle di alcune date non funzionano. Quando ho pubblicato l’articolo le ultime fornite erano versioni perfettamente funzionanti, ma non tutte sono ancora disponibili.

Vi invito caldamente a usare la versione del 14/02/2024. Essa attualmente non è più disponibile online, quindi ho ricaricato l’archivio sul mio account GitHub per preservarlo. Metto il link diretto allo ZIP su questo pulsante:

Poi è necessario importarlo usando la comodissima voce presente al menù Tools > Import FFmpeg *.zip file. Non bisogna fare altro.

FFmpeg su Linux e macOS

Su queste piattaforme lo strumento va installato con gli appositi gestori di pacchetti. Nel caso di macOS in particolare va usato Homebrew (potete fare riferimento al link indicato in precedenza).

Questo però non basta. Infatti sul sito Rai emerge un piccolo problema di comunicazione tra yt-dlp e ffmpeg che può far fallire la fusione delle tracce audio, nella fase di Postprocessing.

Per questo motivo ho preparato per voi tre script specifici che “mascherano” ffmpeg e correggono i parametri da passare al programma “vero”. Procedete così:

  1. Scaricate l’archivio GZIP con i tre script
  2. Estraetelo in una cartella a piacere
  3. Aprite Stacher e andate su Tools > Open Stacher Home Folder
  4. Copiate i tre file all’interno della cartella appena aperta
I tre file copiati all’interno della cartella di Stacher

In seguito la posizione corretta di ffmpeg dovrà essere configurata nelle impostazioni di Stacher.

Configurare il software

Purtroppo anche Stacher, tramite i suoi strumenti, va in confusione in quanto rileva la presenza di file MP4 ma non riesce a scaricarli. Dobbiamo pertanto “insegnare” al programma quali sono i flussi che deve registrare.

Aprite il menù Stacher > Settings > Advanced. Premete il pulsante per confermare che siete sicuri di ciò che state facendo. 🙂

Scorrete fino a trovare la voce Always run with these arguments, sbloccatela tramite il lucchetto a fianco e incollate la seguente stringa nella casella di testo:

--audio-multistreams,,-S,,protocol:m3u8,width,,--remux-video,,mp4

Vi ricordo che per incollare basta premere Ctrl+V, o Cmd+V su macOS.

Ora passate all’opzione seguente, vale a dire Custom Format. Dopo averla sbloccata, incollate questa stringa consigliata:

(Rai Lazza/bestvideo[width<=9999])+mergeall[format_id*=hls-aac]/best[width<=9999]

Se invece volete soltanto la lingua italiana, senza altre lingue né l’audiodescrizione, potete provare con un’alternativa (ma non garantisco):

(Rai Lazza/bestvideo[width<=9999])+hls-aac-Italiano/best[width<=9999]

Se usate Linux oppure macOS, dovrete anche tornare su alla voce ffmpeg location e selezionare la cartella dove avete copiato i tre file essenziali per registrare correttamente, cioè .stacher nella vostra home.

Vi ricordo che si tratta di una cartella nascosta, quindi potrebbe essere necessario attivare l’opzione per vedere i file nascosti. Generalmente va premuto Ctrl+H sui sistemi Linux e Shift+Cmd+. su macOS, ma verificate voi in base alla configurazione e versione del vostro sistema operativo.

Ora potete chiudere le impostazioni.

Le opzioni che abbiamo scelto servono a selezionare le qualità migliori tra i flussi video, inoltre istruiscono il programma per specificare che vogliamo unire anche eventuali flussi audio separati.

Questo comprende anche l’audiodescrizione o la lingua originale, se presente.

Se vi state chiedendo il perché della stringa Rai Lazza, in realtà non serve a niente, salvo a farvi riconoscere qual è l’opzione giusta al momento di far partire la registrazione. 😉

Avviare la registrazione del video

Nel momento in cui volete registrare una puntata da Rai Play, copiate l’URL della pagina del sito e incollatela nella barra di Stacher. Prima di tutto, assicuratevi di selezionare la qualità corretta del video, cliccando sul menù del formato.

Dovreste riconoscerla in modo abbastanza semplice dal nome “Rai Lazza”:

Lista dei formati disponibili nell’interfaccia di Stacher

Una volta selezionato il formato corretto, cliccate l’icona a forma di freccia verso il basso e attendete che il download venga completato. Per impostazione predefinita i video vengono collocati nella cartella Download, ma potete scegliere la posizione che preferite.

Il risultato sarà un file MP4 con le tracce unite, a meno che non decidiate di cambiare formato come descritto in fondo all’articolo.

Chi vuole sul serio qualcosa trova una strada, gli altri una scusa.

Proverbio di origine africana

Ovviamente questo è un metodo possibile, ce ne sono anche altri che consentono di scegliere quali tracce audio si desidera salvare, eccetera. Ma per iniziare dovrebbe essere sufficiente.

Se i file MP4 continueranno a essere in gran parte bloccati, il mio script per il browser avrà sempre meno senso di esistere. Chi lo sa, dopo tanti anni potrebbe andare finalmente in pensione!


Domande frequenti

Dopo aver ricevuto numerosi commenti al post, aggiungo una sezione relativa alle principali domande che sono state pubblicate dai lettori.

Perché su Windows il programma scarica tre file separati con video e tracce audio ma non li unisce?

Per un caso malauguratissimo, quando ho scritto l’articolo l’ultima versione del programma ffmpeg era perfettamente funzionante, ma alcune versioni rilasciate nei giorni successivi invece davano problemi. Chi ha seguito la mia guida nei primi tempi dopo la pubblicazione potrebbe aver riscontrato questo errore.

Perché su Linux e macOS il programma scarica tre file separati con video e tracce audio ma non li unisce?

Questo si verifica per un problema che dipende da come il software interagisce con ffmpeg. L’articolo è stato aggiornato fornendo degli script che aggirano il problema.

Come fare a ottenere un video in “formato” MKV?

In realtà MKV è un contenitore video, così come MP4. Il formato della traccia video sul sito Rai rimane comunque H264. Detto ciò, per cambiare il contenitore è sufficiente cambiare il parametro relativo al remuxing, per esempio così:

--audio-multistreams,,-S,,protocol:m3u8,width,,--remux-video,,mkv

In sostanza dovete solo modificare la parte finale da mp4 a mkv.

I video sono in alta qualità, come si può registrare in bassa qualità?

Questa è forse la domanda più strana e inaspettata che potessi ricevere. Di solito le lamentele arrivano se un video si vede male, non se si vede bene. 🙂 In ogni caso, nella stringa consigliata ho incluso un filtro sulla larghezza (in pixel) del flusso video.

Potete notare che ci sono dei pezzi relativi al valore 9999:

best[width<=9999]

Questa stringa si ripete più volte. Per ottenere una qualità inferiore vi basterà rimpiazzare il valore 9999 con la larghezza massima che volete ottenere. Vi ricordo che molti video sul sito Rai sono disponibili in 1920×1080, 1440×810, 1280×720, 1024×568.

Dunque potreste scegliere di cambiare la stringa così:

(Rai Lazza/bestvideo[width<=1280])+mergeall[format_id*=hls-aac]/best[width<=1280]

Tuttavia dovete fare attenzione: non tutti i video sono disponibili in tutte le risoluzioni, perciò il valore indica solo un limite massimo. Potreste ottenere una qualità molto inferiore rispetto a quella che avete richiesto.

Perché si ottiene l’errore 403: Forbidden?

Generalmente i casi sono due: o vi trovate all’estero e la Rai vi sta bloccando, oppure non avete configurato il software come scritto nella guida.

Come si possono salvare i sottotitoli?

Conviene usare l’apposita opzione presente in Stacher, come ha consigliato l’utente Yupi in un suo commento.

Stacher registra solo da Rai Play o funziona anche con altri siti web?

Il software che si occupa di registrare i video è yt-dlp, il quale supporta centinaia di siti web. Tuttavia questo articolo è specifico per Rai Play e di conseguenza anche i parametri che vi ho consigliato.

Gli altri siti dovrebbero funzionare ma non escludo che i parametri che vi ho fatto impostare possano causare qualche “pasticcio”. Siamo comunque fuori tema rispetto a questo post. 😉


Aggiornamento del 12/02/2024: i parametri da inserire sono stati modificati per tenere conto di alcuni video con qualità “strane”, che altrimenti sarebbero sfuggite.

Aggiornamento del 25/02/2024: è stato aggiunto un metodo per risolvere i problemi di registrazione di alcuni video su Linux e macOS. Ho inserito anche una sezione di domande frequenti.

Aggiornamento del 27/02/2024: ora viene indicata una specifica versione di ffmpeg per Windows, per assicurarsi che chiunque segua la guida usi la stessa build.

Aggiornamento del 13/03/2024: grazie alla nuova versione del programma yt-dlp, alcune parti di questa guida sono ora superflue. Ho aggiunto una nota che spiega che gli utenti senza necessità particolari possono limitarsi a usare “bestvideo+bestaudio”.

513 pensieri riguardo “Registrare i video di Rai Play usando Stacher

  1. Grazie per la risposta Lazza. Credo ci sia qualche problema con lo script allora perchè non viene più visualizzata nè la freccia per il download nè il pulsante download. Ho provato a riscaricare proprio da Greasyfork, ho Tampermonkey aggiornato ma niente, scomparso.

  2. A volte, alcuni film di Raiplay vengono scaricati con l’audio in lingua originale, mentre se li vedo direttamente sul sito, l’audio è in italiano.
    come posso impostare l’audio in italiano, oppure, sarebbe meglio, come posso salvare entrambe le lingue?

    1. Puoi scaricare solo la traccia italiana provando gli altri parametri suggeriti nell’articolo, ma se usi quelli “raccomandati” Stacher le registra tutte. Poi bisogna usare le funzioni del player multimediale per cambiare l’audio.

  3. Ciao Andrea,
    a me succede la stessa cosa che ha comunicato Marco, ma i file mp4 ci sono perchè ho provato con Pastylink e i file li scarica.
    Grazie

  4. Ciao a tutti,
    dopo mesi e mesi Stacher da oggi 29/10 non mi funziona più. Volevo chiedere per caso c’è qualche aggiornamento recentissimo da impostare? Grazie.

    1. Non riscontro problematiche. Eventualmente prova a forzare l’aggiornamento di yt-dlp dal menù, così sei sicuro di avere l’ultima versione.

  5. Scusandomi per aver in precedenza parlato dello script sotto l’articolo sbagliato, spero questa volta di non essere in errore.
    Lazza, volevo segnalarti che mi sono trovato davanti a quella che penso sia un’anomalia:
    La serie “Il complotto contro l’America” secondo Stacher risulta protetta da DRM e non la scarica, invece il tuo script la mette in download tranquillamente.

  6. Buongiorno, ho appena riscontrato un problema su RaiPlay andando a scaricare l’ultima puntata di TALE e QUALE questa volta risulta protetto DRM, provato con STACHER sia con opzione BEST AUDIO+BEST VIDEO, sia quella RAI LAZZA mi da errore, provato anche altre trasmissioni mi dice protetto DRM e STACHER da errore

    1. probabilmente era un problema di RaiPlay, dovevano sistemare di mattina presto visto che non faceva vedere nemmeno la diretta, ora sembra che lo script funzioni, mi scuso per il messaggio

  7. questa mattina ho riscontrato un problema generale di Raiplay in versione Linux: non si riusciva a vedere nessun contenuto, dico vedere sullo schermo non scaricare. Il sito internet, da windows funziona perfettamente, idem l’app da cellulare andprid.

  8. Scusate, considerato che gli script funziona(va)no anche per i canali mediaset e la7, (non parlo di stacher) vi risulta che sia cambiato qualcosa? Nella fattispecie, il prog LE IENE non solo non è più scaricabile me nemmeno rivedibile…

    1. In che senso non è più rivedibile?
      Ho provato adesso la puntata del 28 novembre (da pc con Chrome) e il video parte regolarmente.
      Riguardo la scaricabilità, oramai è da qualche mese che tutti i nuovi video caricati (ma proprio tutti!) sono protetti con drm.

  9. Ho capito correttamente che i flussi video vengono comunque ricompressi? Ottengo file H264 enormi, se il video viene modificato, è possibile impostare di comprimere direttamente in x265 o AV1 mantenendo la stessa qualità video dell’originale?

    1. Non vengono ricompressi, i flussi vengono registrati così come sono e uniti insieme. Vedi la parte in cui si parla di scegliere il contenitore preferito:

      In realtà MKV è un contenitore video, così come MP4. Il formato della traccia video sul sito Rai rimane comunque H264.

    2. 5000kbps in 1080p sono appena accettabili per film e serie TV inaccettabili per programmi TV soprattutto se pieni di giochi di luci, dove è molto probabile che il video squadretti, rai e mediaset come qualche altro sito sono gli unici che adoperano questo bitrate così basso che viene raddoppiato da prime video e da appleTV (10000 ed in certi casi anche 11 o 12000) disney arriva più o meno a 8000kbps, quindi quelli di RAI non sono così grandi, comunque se cerchi online dovresti trovare “quasi” tutto in x265 con bitrate almeno dimezzato.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *