Chiusura del servizio di download dei video da Rai.TV e Rai Replay

Ho iniziato il mio lavoro sul sito Rai nel 2010, con lo scopo di mettere a disposizione il mio aiuto a tutti coloro che desiderassero registrare i video del portale Rai on-demand e, dopo altri due anni, anche Rai Replay.

Lo sviluppo di questo software per me è stata sempre un’attività hobbistica, dandomi molte soddisfazioni personali. Dopo 5 anni di lavoro, si tratta senza dubbio del mio user-script più scaricato, contando oltre 35000 download.

Oggi è un giorno importante, in quanto la mia attività si trasforma in un impegno professionale. Sono infatti entrato a far parte del team di Rai — Direzione Web, con il ruolo di consulente video. Rai acquisirà integralmente lo script da me sviluppato e la piattaforma server che veniva utilizzata per fornire i link diretti ai video. Io continuerò a lavorare mettendo a disposizione la mia competenza per la prevenzione dei download.

Stiamo infatti sviluppando un nuovo sistema che consentirà a Rai di avere un maggior controllo sull’accesso ai contenuti. Il software di protezione prenderà il nome di Rai Charles e servirà a impedire la visione dei filmati a chi tenterà di accedere con modalità non previste dall’azienda.

Logo del nuovo servizio di protezione per i siti delle reti Rai
Logo del nuovo servizio di protezione per i siti delle reti Rai

Sono entusiasta di partecipare in questa nuova avventura e non vedo l’ora di sviluppare a pieno questa nuova tecnologia. L’interruzione del servizio avverrà nel giro di pochi giorni.

Se siete utenti dello script, vi consiglio di leggere l’annuncio ufficiale sul sito Rai. Lì potete trovare una spiegazione dettagliata sul funzionamento del nuovo sistema di protezione. Inoltre è prevista una sezione commenti per porre domande in merito.

Con affetto,
Andrea

35 pensieri riguardo “Chiusura del servizio di download dei video da Rai.TV e Rai Replay

  1. la cosa incredibile e’ che era perfettamente credibile un ipotesi del genere e non ti avrei potuto che augurare buona fortuna (anche se con un po’ di malcelato fastidio lo ammetto 🙂 ) ma comunque dopo aver visto l’annuncio Rai ti stimo ancora piu’ di prima e ti auguro le migliori fortune professionali, e visto che ci siamo, Buona Pasqua a tutti

  2. ..ma hai fatto una convenzione con dei cardiochirurghi..??..
    ..ho ancora le pulsazioni oltre il limite di guardia..!!
    ..era tutto il giorno che pensavo: strano non ho ancora visto un pesciolino..
    mannaggia..questo era un pirahna..!!

    🙂

  3. Ahahah, troppo forte Lazza. Comunque l’ho bevuta – saresti di gran lunga il più appropriato “consulente video” per la RAI.

  4. Porca zozza, mi è venuto un colpo e stavo pensandi di lavorare tutta lea notte per scaricare tutti i video possibili….
    W i pesci d’aprile se sono tutti così.
    Comunque non ho mai capito perchè la Rai non rende i video sacricabili di suo. Non capisco quale sarebbe l’interesse contrario, d’altra parte molti sono su youtube. Mistero….

  5. Lo confesso ….Ci sono cascato come un pero …. La pressione credo sia salita a 1000 e mi è persino mancata la parola per lo stupore …. Credo sia il più efficace” Pesce d’Aprile ” che io ricordi ….
    Complimenti Andrea… Sei riuscito nell ‘ intento di scoprire quanto ti vogliamo bene ….. 🙂

  6. Disgraziato !!! Mi hai fregato alla grande, sono corso a scaricare Scala Mercalli, le due ultime puntate con il rischio di finire i GB disponibili per questo mese ma per fortuna ho visto prima il link con il pesce … Magari la RAI ti chiama davvero un giorno, te lo auguro !!!

  7. Sono rimasto allibito! Non potevo crederci, eri stato comprato, e la cosa più grave, avevi accettato! Mi chiedevo solo per quale motivo Rai volesse tanto impedire l’accesso agli utenti linux… Comunque ho riso tanto dopo aver letto l’annuncio ufficiale: ci sono cascato!!!!

  8. ahaha che lazza-rone 😀
    Ci son cascato fino a che non ho visto l’annuncio importante. Però ti sei impegnato, pure il logo hai fatto (un gimp ci sta dietro scommetto) 🙂

  9. Mi stavo già in*****ndo … Complimenti Lazza. In effetti una mossa simili da parte di RAI sarebbe troppo. Buone prossime feste!

  10. Questo articolo è uno di quelli del blog che è stato commentato più rapidamente in assoluto. Wow. 😀 La cosa più divertente e che mi ha sorpreso maggiormente è quanti di voi abbiano ammesso di essere caduti nello scherzo, considerando che mentre lo scrivevo credevo di rischiare di renderlo troppo inverosimile. 😛

    Voglio dire, come si può pensare che la TV nazionale chiami “Rai Charles” uno strumento che impedisce la visione di qualcosa, senza pensare al celeberrimo Ray Charles, il musicista non vedente? Per chi non lo sapesse, cito da Wikipedia:

    […] è stato un cantante e pianista statunitense, considerato uno dei pionieri della musica soul, nonché uno dei musicisti più importanti di tutti i tempi.

    Non parliamo poi degli occhiali da sole nel logo. 😛 Ero assolutamente convinto che avreste mangiato la foglia ben prima di aprire l’annuncio ufficiale Rai. A quanto pare è andata bene e ha funzionato. 😉

    Ricambio tutti quelli che mi hanno fatto gli auguri.


    Luigi,

    Comunque non ho mai capito perchè la Rai non rende i video scaricabili di suo. Non capisco quale sarebbe l’interesse contrario, d’altra parte molti sono su youtube.

    A guardar bene anche Youtube non fornisce la funzione di download, che deve essere comunque svolto con software di terze parti. Credo sia tutta una questione di scelte commerciali, in ogni caso a noi non importa più di tanto perché abbiamo dei diritti ben specifici su cosa possiamo fare con le pagine web che visualizziamo. Esclusivamente per uso personale, s’intende.

    Giangius, sì in realtà Gimp è servito per mettere gli occhiali… I “Rai-Ban”. 😛 Il logo (come quello ufficiale Rai) è una semplice scritta in Futura.

  11. “Rai-Ban”.
    aah questa poi 😀

    cmq non avrei collegato al pianista, ma per lo più avevo legato il nome (scelto dai piani alti della Rai) ad un’allusione ad altro, che evito di scrivere per non rovinare l’impatto ironico e simpatico di questo post 🙂

  12. Ciao a tutti!
    Volevo informarvi che ho creato una versione in bash dello script Rai.tv che è in grado di scaricare qualsiasi video Rai. Lo script utilizza il server di Andrea (spero non ti dispiaccia, comunque ti ho incluso nei ringraziamenti) per decodificare gli indirizzi della Rai.
    Qui troverete le istruzioni di installazione per Linux, Unix, Mac OS X, Android, iOS e persino Windows! E in quanto a tutte le altre piattaforme sto lavorando alla versione web!
    Sarei molto grato a tutti quelli che contribuiranno al progetto github!!!

    1. Lo script utilizza il server di Andrea (spero non ti dispiaccia, comunque ti ho incluso nei ringraziamenti)

      Sono un fermo sostenitore di un principio semplicissimo:

      Finché una risorsa viene pubblicata sul web dal proprietario, in modo liberamente accessibile, rimane diritto dell’utente finale scegliere quale client utilizzare per accedere alla (e fruire della) risorsa stessa.

      È lo stesso principio che applichiamo quando decidiamo di salvare un video dai siti di Rai, Mediaset o La7. Come vale per quello, vale anche per la mia piccola API. Fermo restando che l’output potrebbe cambiare in futuro, anche se per ora non ho piani in proposito. 🙂

      Comunque, parlando di aspetti meramente tecnici, tutto ciò è inutile:

      formats="$(echo "$vars" | sed -e 's/\<videoURL\>/Normal quality (mp4)/g' | sed -e 's/\<videoURL_MP4\>/High quality (mp4)/g' | sed -e 's/\<videoURL_H264\>/Normal quality (h264)/g' | sed 's/\<videoURL_M3U8\>/Normal quality (m3u8)/g' |  sed 's/\<videoURL_wmv\>/Normal quality (wmv)/g' | awk '{print NR, $0}')"
      

      Il server restituisce sempre l’MP4 a qualità massima tra quelle disponibili, salvo che il video non sia corrotto (come è capitato in alcuni casi) e allora scala di livello. Anzi, ti pregherei di rimuovere questa scelta perché potenzialmente mi potrebbe far crescere inutilmente il database degli URL, avendo diversi relinker che in realtà mappano tutti sullo stesso file. 😉 Grazie per la comprensione.

      sto lavorando alla versione web!

      L’importante è che quella non usi il mio server. 😛 Ad ogni modo, forse rischia di diventare un po’ un doppione di Pasty.link di Paolo Pancaldi, no?

  13. Innanzitutto grazie Andrea per la risposta.
    Allora, riguardo allo script, ho inserito la scelta del formato perché ho notato che nella pagina spesso ci sono tante variabili videoURL e anche se la maggior parte delle volte sono dei collegamenti allo stesso video a volte (raramente, come nel caso di questo video) sono disponibili più versioni dello stesso video in qualità diverse (ed è anche per questo che ho deciso di creare la versione web: inserendo il video sopra menzionato nel sito di Paolo Pancardi mi dava l’indirizzo del video di bassa qualità, mentre il tuo script mi dava il link di alta qualità), e vorrei fornire all’utente la scelta del video da scaricare, senza però intasare il tuo database. Perciò, e anche perché la versione web utilizza il tuo server (scusami, ho finito di scriverlo prima di avere letto la tua risposta), vorrei sapere come posso creare un server simile al tuo (che magari potrai usare anche tu come server di riserva) in modo da non rallentare anche i tuoi programmi.
    Comunque provvederò a migliorare lo script seguendo i tuoi consigli.
    Grazie ancora!

    1. Allora, riguardo allo script, ho inserito la scelta del formato perché ho notato che nella pagina spesso ci sono tante variabili videoURL e anche se la maggior parte delle volte sono dei collegamenti allo stesso video

      Non è quello che intendevo. Intendevo dire che è inutile perché, qualsiasi relinker tu chieda, il mio server ti darà sempre la qualità più alta in automatico. Ho curato molto la parte di auto-selezione dell’URL nella massima qualità. Quindi tu puoi darmi pure il relinker che mappa al file [...]_400.mp4, se esiste il corrispondente [...]_1800.mp4, il server ti riporterà quello. 😛

      vorrei sapere come posso creare un server simile al tuo

      Mah in sostanza si tratta di seguire l’URL del relinker per vedere a che file punta (usando una user-agent string adeguata, solitamente quella di un dispositivo mobile o di una Smart TV), e stamparlo all’utente. Tutto qua, per una versione base. Se poi vuoi fare una cosa più fancy puoi aggiungere:

      salvataggio dei risultati in un database
      prefetching giornaliero degli URL su Rai Replay per una risposta più rapida
      ricostruzione degli URL ai file MP4 a partire da quelli M3U8 (tipici su Rai Yoyo, ce ne sono in genere solo due tipi diversi ma entrambi semplici da gestire)
      auto-verifica della qualità massima, eventualmente includendo una euristica per capire se una certa qualità è danneggiata e quindi scartarla
      caching delle risposte usando un CDN, io per esempio uso CloudFlare… ma questo ti serve solo se hai tanto traffico

      Per gli M3U8, la tecnica che ho soprannominato “taglia e cuci” è stata introdotta nella versione 7.0 ed è visibile in versione “rudimentale” anche nel codice almeno fino alla versione 8.4.4. Buon lavoro. 🙂

  14. Ciao a tutti!
    Ho creato la versione web dello script!
    È completamente indipendente dal server di Andrea e, anche in questo caso, il codice sorgente è su GitHub. Una volta incollato il video il programma cercherà tutte le qualità del video disponibili e le restituirà, insieme alla dimensione, al formato e alla qualità del video, all’utente.
    Se trovate qualche video che non funziona, scrivetemi usando il pulsante “Non funziona” della pagina!
    E se avete un dispositivo Android potete utilizzare l’app!

  15. Vorrei segnalare l’esistenza di un sito, VCast, che permette la registrazione di molti canali TV (tra i quali anche la rai).

  16. Vcast lo uso saltuariamente (combinazione: sto giusto eliminando le pubblicità da un programma registrato con Vcast) però per la Rai è relativamente inutile… si fa prima con lo script. 🙂

  17. Siete fantastici e direi che effettuate un vero servizio pubblico x noi con il vostro meraviglioso impegno….Mi togliete una curiosità? Per avere competenze di programmazione al vostro livello…Che scuole tecniche o corsi o università occorre fare. Dov’è cioè che voi….Lazza, Danilgentili….avete imparato? E cosa dovrebbe fare un ragazzo x seguire le vostre orme? Grazie x le risposte…

    1. ciao Mario, comincio a risponderti io, presumo che sei un ragazzo che va alle superiori, be’ intanto prima di tutto devi essere una persona curiosa che ha voglia di conoscere, sperimentare e apprendere nozioni nuove, anche apparentemente lontane dai propri obbiettivi professionali, non si vive di soli computer e la nostra mente ha bisogno di molte vitamine diverse:) , do’ come scontata la conoscenza dell’inglese e anche la matematica deve rientrare fra le tue materie preferite, poi dipende dalla tua eta attuale, se sei in procinto di scegliere la facolta direi un indirizzo tecnico tipo ingegneria informatica in una seria universita, ma e’ solo un esempio, se abiti in citta universitaria potresti andare a seguire qualche corso di orientamento per vedere il tipo di materie e i prerequisiti richiesti, ti eviti un salto nel buio di scegliere una facolta che poi ti si rivela non adatta, parla con ragazzi dei primi anni che ti possono dare le dritte migliori (anche se poi ognuno ha una propria storia e non e’ detto che quello che va male ad una persona non possa andare bene ad un’altra) ma a prescindere da tutto cio’ comunque scegli qualcosa che ti fa’ piacere fare e non solo perche’ e’ lavorativamente vantaggioso farla (ti verra utile al sorgere delle prime inevitabili difficolta, le affronterai con piu’ forza)

  18. Mario, grazie per i complimenti. 🙂

    Per avere competenze di programmazione al vostro livello…Che scuole tecniche o corsi o università occorre fare.

    Non saprei dire se occorre fare necessariamente le stesse esperienze di altre persone, ad ogni modo ti posso riassumere la mia esperienza di formazione che è scritta anche nella mia presentazione. 😉

    Personalmente ho un diploma di perito in Informatica industriale, quindi ho frequentato un ITIS. Ho ottenuto la laurea triennale in Informatica a Ca’ Foscari. Non ho fatto ingegneria, quindi la mia è una laurea scientifica a tutti gli effetti (un po’ come matematica o fisica) e non ingegneristica. Mercoledì invece conseguirò la laurea magistrale in Computer science sempre nella stessa università (si chiama così perché il corso di laurea si svolge in lingua inglese).

    Al di là di questo, ho svolto due periodi di studio all’estero (uno in Danimarca e uno nei Paesi Bassi) in università che avevano un taglio più misto. A mio avviso all’estero fanno un po’ un “mix” di tutto in un unico calderone, infatti in entrambi i casi studiavo assieme a persone il cui corso di studi si chiama Computer science and engineering che tradotto diventa quasi “Informatica e ingegneria”.

    Comunque lo studio è solo una parte dell’apprendimento. Andare a scuola o all’università ti fa “assaggiare” la materia e ti dà cose basilari, tutto il resto deve venire da uno sviluppo legato anche agli interessi personali. Quoto alla grande sasa1964 quando dice che devi essere una persona curiosa che ha voglia di conoscere, sperimentare e apprendere nozioni nuove. Non è sufficiente farsi insegnare dai professori per diventare un informatico bravo. 😀

    Tra parentesi, tu hai parlato di “competenze di programmazione” ma un informatico non è un programmatore, è di più. La programmazione è uno strumento e per imparare a usarlo a un livello sufficiente basta fare qualche anno di ITIS. L’informatica è composta da moltissime cose e si lavora con molti strumenti tra cui la capacità di scrivere codice. 😉

    E cosa dovrebbe fare un ragazzo x seguire le vostre orme?

    Leggere parecchio e sperimentare anche. Non importa cosa. Trova qualsiasi “roba” informatica che ti interessi e approfondisci. Fatti delle domande:

    • Come si può creare questo?
    • Come si fa a far funzionare quest’altro?
    • E se funziona, perché sta funzionando?
    • Cosa accade se lo cambio in questo modo?

    Ok, sono solo esempi, ma questo posso darti perché ogni percorso anche deve seguire i propri interessi. 😉 Sempre per fare un esempio, alle medie mi interessava particolarmente lo sviluppo web e quindi tendevo a leggere tanto di HTML, CSS e un po’ di Javascript e in seguito PHP. Ma a parte Javascript e PHP, non ho mai affrontato seriamente la scrittura di programmi fino a qualche anno dopo quando abbiamo iniziato a usare codice compilato a scuola.

    Quando dico leggere non mi riferisco soltanto ai libri, anzi. Ricordo che nei primi tempi in cui provavo con l’HTML passavo costantemente il mio tempo su A list apart oltre a premere Ctrl+U ogni volta che finivo su un sito interessante. :mrgreen: Poi certo, leggevo pure libri universitari casualmente disponibili in biblioteca o compravo riviste di cui capivo sì e no 1 parola su 8… poi col tempo sono diventate 2 su 8 e così via. 😛

    Oggi ci sono sempre più risorse, quindi per piccole questioni tecniche è probabile finire su StackOverflow, mentre per tenersi aggiornati su informazioni interessanti uso sempre svariati feed RSS a siti e blog che parlano di Linux, sviluppo web, software matematico, sicurezza, eccetera.

    Tutto questo legato a sperimentazioni continue su cose che mi passano per la mente. Poi non è necessario che gli esperimenti ti portino per forza a fare esattamente quello che avevi in testa… potrebbero finire in meglio o anche in peggio. 🙂

    Lo script per i video Rai è cominciato perché mi serviva un modo poco tedioso di ricavarmi gli URL ai flussi di una singola trasmissione che registravo per guardarla in treno. Francamente non avrei potuto prevedere che saremo arrivati a oltre 20000 installazioni (contando anche quelle sul vecchio sito UserScripts.Org) e un server che lavora 24 ore su 24 per servire tutti gli utenti.

    Ah, ho già detto “comincia a usare Linux”? 😉

Lascia un commento

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