Script per Video Mediaset 5.2: design aggiornato e lo schermo intero per davvero

Oggi ho rilasciato la versione 5.2 per il mio script che permette di scaricare i filmati da Video Mediaset. Anche se la precedente 4.6 ha “resistito” al cambio di grafica, continuando a funzionare, ho preferito adattare lo script al nuovo design del sito e semplificare un po’ le cose.

Avrebbe dovuto essere la 5.0. Tuttavia, in seguito sono venute fuori complicazioni con Firefox, poi ho scoperto anche che hanno cambiato le carte in tavola per quanto riguarda le estensioni e di conseguenza anche Greasemonkey. Pertanto avevo dovuto “ripristinare” la 4.6, inventandomi la versione 5.1.0.4.6 (copia-incolla della 4.6).

Cos’è cambiato di preciso? In realtà non molto… Prima, su Greasemonkey l’autore di uno script poteva inserire oggetti e pezzi di codice all’interno della pagina. Io per esempio inserisco la barra verde contenente i link al video. Ora non più, bisogna usare le funzioni apposite fornite da Firefox, come ad esempio exportFunction.

Conclusione? Si fa la stessa cosa, non cambia niente. Solo che bisogna farlo in modo complicato, e così facendo bisogna istruire gli altri browser (per esempio Chromium) su cosa sia exportFunction, che è una prerogativa esplicita di Firefox. Da qui la perdita di tempo, visto che per pura coincidenza una nuova funzionalità che volevo aggiungere aveva bisogno di fare ciò.

Benvenuti all’Ufficio complicazione affari semplici. 😛

Comunque… a parte lo sfogo tecnico sul fatto che gli sviluppatori Firefox pensino che noi non abbiamo niente di meglio da fare che aggiornare i nostri script per niente, alla fine la nuova versione è pronta.

Vediamo i cambiamenti principali. Innanzitutto, ho rimosso tutta la parte di gestione del player. Video Mediaset ora usa HTML5 ogni qualvolta sia possibile, ripiegando su Flash Player in caso contrario. Niente più offensive discriminazioni per noi utenti Linux. 😀

Ho potuto quindi concentrarmi sul migliorare il riproduttore fornito da Mediaset. Dato che la modalità “schermo intero” che hanno messo è abbastanza buffa (e finta), ci ho messo un po’ del mio e ho fatto delle modifiche. Cito testualmente dall’articolo sullo script:

A partire dalla versione 5.2 dello script, ho inserito una funzionalità che migliora notevolmente la modalità “schermo intero” e il player fornito da Video Mediaset. In particolare:

  • usa il vero full screen, invece di un ingrandimento del filmato ai bordi della pagina
  • funziona con il riproduttore HTML5, sia su Firefox che su Chrome/Chromium
  • nasconde il cursore del mouse che diventa visibile solo muovendolo verso il basso, dove ci sono i controlli del player
  • elimina la pubblicità che precede il filmato

Nelle seguenti immagini potete vedere la differenza tra la modalità a schermo intero di Video Mediaset e quella col mio script attivato:

Devo dire comunque che Mediaset ha fatto un buon lavoro con il portale, la nuova grafica è molto pulita e si focalizza sui contenuti più che sulle decorazioni inutili. Ottimo anche il passaggio ad HTML5. 🙂

Come sempre, potete attendere che lo script si aggiorni automaticamente, oppure accorciare i tempi e installarlo manualmente. Buona visione! 😉

Risolvere i problemi di riproduzione dei file MKV

Recentemente abbiamo acquistato un televisore LED della LG. Per provare la funzionalità di riproduzione USB, ho messo sulla chiavetta alcuni video di trasmissioni televisive.

Ho usato sia dei programmi RAI, che si possono scaricare seguendo le mie istruzioni, sia alcuni episodi dei Cesaroni, scaricati da Video Mediaset con il procedimento di cui vi ho parlato in quest’altro articolo.

Nel primo caso, si trattava di file MP4, e ho verificato che funzionano perfettamente. Posso riprodurre i filmati, usare l’avanzamento veloce (anche fino a 16x), riavvolgere, saltare a un punto preciso, eccetera. Il problema invece è sorto con la fiction salvata da Video Mediaset.

Come ben sapete, quando salvate filmati Silverlight utilizzando ismdownloader, il programma produce in uscita un video in formato Matroska, con estensione MKV. Il televisore lo riproduce, tuttavia i problemi iniziano quando si tenta di usare l’avanzamento veloce.

Nel tentare di superare la velocità 2x, un triste messaggio appare in mezzo allo schermo:

Messaggio di errore del televisore tentando di usare l'avanzamento veloce su un filmato MKV
Messaggio di errore del televisore tentando di usare l’avanzamento veloce su un filmato MKV

Ancor peggio, quando si vuole riavvolgere il filmato, si riceve la stessa risposta:

Funzione al momento non disponibile

Questo è scomodissimo, perché se per qualche motivo non abbiamo capito una frase e la vogliamo sentire nuovamente, non possiamo. Se per sbaglio premiamo stop dopo aver visto mezz’ora di filmato, non siamo in grado di riprendere la riproduzione se non dopo 15 minuti di avanzamento a velocità 2x.

Un problema assai simile succede anche con alcuni software di riproduzione: mentre VLC e Totem riescono a farci vedere il video e ci permettono di saltare in qualsiasi punto (operazione chiamata seek), Mplayer non lo permette.

Ho cercato di trovare una soluzione al problema. Ovviamente, fare la ricodifica dei video è fuori discussione. Non solo per la perdita di qualità, ma anche per il tempo necessario. Alla fine ho trovato una risposta in questo forum, dove viene suggerito l’utilizzo del programma MKVToolNix, in particolare dello strumento mkvmerge.

Questo software consente la ricostruzione del contenitore MKV (operazione definita muxing) senza ricodificare i flussi audio e video. Questo permette di compiere l’operazione in pochi secondi per un intero video (circa 20-30, dipende dalla velocità del computer).

Con un apposito parametro, si può risolvere il problema dell’avanzamento veloce e del seek!

Innanzitutto, provvedete a installare il software necessario. Dovreste trovare il pacchetto di mkvtoolnix nel gestore pacchetti della vostra distribuzione (ad esempio, su Ubuntu potete cercarlo nell’Ubuntu Software Center).

A questo punto, vi basta invocare il programma con il parametro risolutivo, in questo modo:

mkvmerge -o file_corretto.mkv --clusters-in-meta-seek file_originale.mkv

Ovviamente adattate il comando con il nome del filmato di partenza e il nome finale che desiderate. 😉 Nel giro di poco, il software produrrà il video corretto a partire da quello originale, creando una piccola sezione alla fine del file che consente la corretta riproduzione.

Lo stesso video, riprodotto a 8x dopo il procedimento di "riparazione"
Lo stesso video, riprodotto a 8x dopo il procedimento di “riparazione”

Se volete uno script che converta tutti i filmati di una cartella, potete usare quello che ho creato per me:

#!/bin/bash

echo "MKV fix for fast-forward and seek"
echo ""

for i in "$@"; do
    echo "Fixing $i"
    mkvmerge -o "${i}_fix.mkv" --clusters-in-meta-seek "$i"
    mv -f "${i}_fix.mkv" "$i"
done

echo ""
echo "Done!"

Attenzione: questo script sovrascrive i video originali dopo la “riparazione”!

Salvatelo in un file mkv_fix.sh, dategli i permessi di esecuzione, e poi richiamatelo sui file che volete, per esempio così:

mkv_fix.sh *.mkv

Infine, c’è anche la possibilità di usare il parametro di cui vi ho parlato tramite l’interfaccia grafica del programma. Ovviamente tale metodo è più lento e scomodo, perciò non lo spiego, ma potete leggere come si fa in questo topic. 😛

Script per Rai Replay 8.0: breve lista dei cambiamenti

Oggi ho rilasciato la versione 8.0 del mio script che permette di guardare i video della Rai (e scaricarli) anche con Linux. Ci sono stati diversi cambiamenti, molto “sotto al cofano”, ma in breve si possono riassumere nelle seguenti novità:

  • La gestione di Rai Replay è stata completamente ripensata. Ora c’è una componente lato server (su video.lazza.dk) che lavora costantemente per scovare gli URL dei video e mantenerne una cache. Questo si traduce in una maggiore velocità e si evitano i blocchi sui video per tablet.
  • Se siete all’estero potete vedere lo stesso l’indirizzo del video, perché il mio server usa IP italiani quando necessario. Tuttavia potreste non essere in grado di salvarli (compare un messaggio di avvertimento).
  • Ora il player usa HTML5 ogni qualvolta ciò sia possibile, quindi in genere basta un browser aggiornato senza plug-in esterni.
  • I video sui sottodomini tipo raistoria.rai.it non hanno più la linea di comando di rtmpdump, bensì un link diretto al video in MP4, grazie alla segnalazione di un mio lettore.

Come sempre, reinstallate lo script (linkato nella prima frase di questo post) oppure attendete l’aggiornamento automatico. Buona visione.

Scaricare i contenuti audio e video presenti nelle pagine web — Guida completa

Premessa: ho impiegato mesi per lavorare a questo articolo, rivedendo in continuazione le idee di cui parlare e valutando come dare i consigli nel modo migliore possibile. Questo post racchiude quindi numerose informazioni e potrebbe richiedere più di una lettura per assimilarle tutte.

Ormai 6 anni fa avevo scritto un articolo che continua ad essere tra i più visitati del blog, dedicato a salvare i video incorporati nei siti web in cui ci imbattiamo navigando in rete. Non era una guida dedicata ad atti deplorevoli di pirateria cinematografica (non insegna a scaricare film da reti P2P) bensì era rivolta proprio ai video che sono “dentro” le pagine. Un esempio banale di sito con video può essere Youtube, ma in realtà ce ne sono moltissimi che per un motivo o per l’altro offrono dei filmati (ad esempio siti di news, recensioni di hardware, eccetera) ed essi sono inseriti nei formati e nei modi più disparati.

Al tempo avevo dedicato quasi tutta la guida all’uso di Unplug, un’estensione per Firefox che era tra le migliori per questo tipo di compito. In seguito è stata sorpassata da altri strumenti, per poi migliorare di nuovo nell’ultimo periodo. Lo scopo di questo mio nuovo articolo vuole essere più ad ampio raggio: vorrei cercare di spiegare quale approccio usare quando ci si trova di fronte a un sito con video: a partire da come riconoscere la tecnologia utilizzata, fino al salvataggio vero e proprio del contenuto multimediale. Accennerò anche qualcosa riguardo alla conversione.

Devo precisare subito che per quanto cercherò di essere chiaro e spiegare le cose in modo semplice, inevitabilmente alcuni dei concetti qui spiegati potrebbero non essere banali. In alcune circostanze sarà necessario “esplorare” del codice HTML, XML o Javascript (non è comunque necessario conoscere questi linguaggi). Inoltre dovrebbe essere chiara la differenza tra un file e uno stream. Oltre a questo va aggiunto che nell’articolo mi concentrerò sui video, ma i concetti sono tali e quali anche per delle eventuali tracce audio ascoltabili online.

Continua a leggere…

Ex script per scaricare da La7.tv diventa script per La7.it

Mi avete scritto in tanti per segnalarmi che lo script che avevo messo a punto per il vecchio sito La7.tv non era più utilizzabile per il nuovo portare La7.it. In effetti l’emittente non ha semplicemente modificato il proprio sito, l’ha totalmente rimpiazzato con uno nuovo.

Venerdì ho finito gli esami, perciò oggi ho potuto dare un’occhiata. Non ero molto fiducioso in quanto utilizzano player in Flash con tecnologia HTTP dynamic streaming, i video vengono frammentati in piccoli pezzetti e l’accesso al file che li descrive richiede pure una piccola chiave crittografica (tecnicamente un HMAC).

Stavo tentando di raccapezzarmi in tutta questa confusione quando mi sono reso conto che La7 mantiene anche una copia del video in formato MP4, ed è pure estremamente semplice da trovare. 😀 Per farvi un paragone, il mio vecchio script era formato da 59 righe di codice, di cui una quindicina puramente “estetiche”. La versione 2.0 è formata da 27 righe di codice, delle quali 16 dedicate all’aspetto del pulsante finale. 😀

Eccovi un paio di esempi dal nuovo sito di La7:

Una puntata "standard"
Una puntata “standard”
Puntata "piccola" in una pagina con formato diverso
Puntata “piccola” in una pagina con formato diverso

Per poter utilizzare la versione 2.0 dello script potete attendere l’aggiornamento automatico che dovreste ricevere a breve, oppure reinstallare manualmente lo script. Se volete installare lo script vi rimando alle istruzioni del mio precedente articolo che provvederò ad aggiornare a momenti.

Come sempre, buona visione! 😉