mvregen: un tool per rigenerare link MegaVideo

Ma quanto è bello MegaVideo? Per chi non lo sapesse, si tratta di una piattaforma per l’hosting di file video. Un utente si registra e carica i propri video su questo sito, e in cambio riceve un codice: usando quel codice un altro utente qualunque può vedere il suddetto video. Ovviamente, lo scopo nascosto (neanche troppo) della piattaforma è l’hosting di materiale protetto da copyright, ma si possono trovare anche cose legali.

Il problema è che, proprio per proteggere i contenuti (specie quelli illegali), non è possibile eseguire alcun tipo di ricerca sul sito: per vedere un video bisogna conoscerne il codice. Il codice è per intenderci quello nell’URL:

http://www.megavideo.com/?v=113GXHGK

E purtroppo i codici vengono spesso invalidati (o semplicemente scadono). Quindi capita molto spesso di trovarsi tra le mani con un elenco di URL che, una volta cliccati, puntano inesorabilmente a qualcosa del genere:

Per fortuna esiste la soluzione: in realtà, quando un file viene caricato su MegaVideo, ne vengono fatte più copie sui diversi server (o almeno così mi risulta), per meglio gestire il traffico sulla piattaforma. Quindi, per ogni URL cancellato spesso ne esistono altri che puntano allo stesso file. Si possono trovare facendo una ricerca (detta curiosamente “rigenerazione”) su certi siti specializzati, come ad esempio regen.megastreaming.org. Si va sul sito, si inserisce l’URL, si clicca, si aspetta, si dribbla la pubblicità, si ignorano i popup e forse alla fine si arriva al risultato (il risultato presentato in realtà mostra il link megavideo ma se cliccato porta a un servizio a pagamento, quindi bisogna pure fare il copia&incolla dell’url). Insomma, un pò lungo se uno si vuole rigenerare una lista completa di link..

E in questo punto si colloca mvregen. Si tratta di una simpatica utility in Python che si occupa di tutti i task noiosi relativi alla rigenerazione dei link MegaVideo. E’ sufficiente passare il codice da rigenerare da riga di comando (opzione -c):

./mvregen.py -c XXXXXXXX

oppure direttamente con l’url usando l’opzione -u:

./mvregen.py -u http://www.megavideo.com/v=XXXXXXXX

o addirittura si può passare un intero file esterno con un link per ogni riga, per rigenerare tutta una serie di link in un unico comando (vengono ignorate le linee vuote e quelle di commento, ovvero che iniziano con un #. Consiglio di mettere un commento prima di ogni link, poichè il commento viene stampato nell’output e aiuta a riconoscere il link rigenerato).

./mvregen.py -f miofile.txt

L’output (solo i link rigenerati più i commanti) può essere anche salvato su un file di testo, con l’opzione -o, o addirittura in formato HTML (per avere i link già pronti a essere cliccabili!), con l’opzione -t. Ad esempio, se ho un file di link megavideo non funzionanti chiamato link.txt e voglio creare un file HTML con i link rigenerati, basta usare:

./mvregen.py -f link.txt -t link.html

Per ulteriori informazioni è sufficiente lanciare il programma con l’opzione -h per leggere l’help online. Può anche essere interessante utilizzare l’opzione -v (verbose) per seguire i passaggi che il software esegue nel rigenerare i link.

Il tool, come dicevo, è scritto in Python, quindi si suppone che funzioni su qualunque piattaforma moderna. Io l’ho provato su MacOsX e Linux e funziona perfettamente. Lo sviluppo avviene su GitHub, da cui lo potete scaricare (c’è un pulsante “Downloads” da qualche parte). Ovviamente è rilasciato open source (sotto licenza MIT).

Spero possa essere utile a qualcuno. Se è così mi aspetto come minimo un commento :-)

Ciao!

 

Convertire documenti LaTeX in Word (pfff..)

Negli scorsi giorni mi sono trovato ad affrontare una piccola tragedia personale, dalla quale sono riuscito a risollevarmi in modo abbastanza elegante.. vi descrivo la scena..

Supponete di aver passato gli ultimi due mesi della vostra vita a fare ricerche per un articolo.. e aver scritto quell’articolo come Dio comanda, quindi utilizzando LaTeX, onnipresente sistema di composizione tipografica orribile per i neofiti ma fantastico per i praticanti assidui come il sottoscritto. Supponete di aver utilizzato il suddetto sistema come degli utilizzatori scafati, sfruttandone le impareggiabili caratteristiche: posizionamento automatico delle immagini, impaginazione dinamica, riferimenti incrociati a immagini e capitoli, indici, sottoindici, bibliografia, librerie esterne per piazzare le immagini nello scorrimento del testo o per visualizzare listati di codice in maniera ottimale.. cose così.

Bello bello, direte voi.. risultato impeccabile.. poi mandate il tutto all’editor in chief della rivista che avete scelto per la pubblicazione, e cosa scoprite? Cosa scoprite? Scoprite che il suddetto editor in chief vuole l’articolo in M$merdaWord!!!!

Silenzio….

Dopo il dolore iniziale, beh, pota, mica posso buttare via tutto, no? All’inizio si riflette se vale la pena andare di copia&incolla, ma vi garantisco che è umanamente impossibile.. ho lavorato un’ora e ho ricostruito 3 pagine, tra immagini, riferimenti, didascalie e parole in corsivo da cercare una a una.. e ne devo mettere assieme 40.. nonono..

Poi per fortuna ho provato latex2rtf. Si tratta di un programmino geniale che converte file latex in RTF, che poi è facilmente aperto in Word. Ovviamente non può fare miracoli: supporta solo parte delle funzioni latex e nessuna libreria esterna.. ho dovuto modificare il sorgente e togliere alcune funzioni e classi personalizzate. Ma vi garantisco che il risultato è comunque molto, molto incoraggiante, ed è stato un grandioso punto di partenza per procedere poi alla sistemazione (controllare tutto, parola per parola, non si sa mai.. ogni tanto qualche erroruccio capita). Però niente male.

Ha funzionato senza problemi sul Mac. Mi è bastato scaricare i sorgenti dal sito (http://latex2rtf.sourceforge.net/), scompattarli e dargli un bel make seguito da un sudo make install. Bisogna poi avere pronto il file latex già compilato (in modo da avere i file temporanei già pronti). Compilatelo un paio di volte con il vostro sistema latex preferito per essere sicuri (non dimenticate il bibtex se volete anche una bibliografia). A quel punto basta lanciare:

latex2rtf nomefile

dove nomefile sarebbe il nomefile.tex che contiene il sorgente. Ed ecco pronto il file in RTF, pronto per essere aperto in Word! Fate attenzione alla bibliografia (la mia l’ha un pò incasinata) e controllate bene le didascalie delle foto, e che ci siano tutte le immagini.. E a quel punto siamo salvi, e ci siamo risparmiati una settimana di fatica e bestemmioni.

Ciao!

iPhone Backup Analyzer

Annuncio il rilascio sotto licenza open source di “iPhone Backup Analyzer”, ultimo ritrovato nel campo dell’analisi dei dati di backup dei dispositivi Apple equipaggiati con iOS (iPhone, iPad, iPod touch).

Come forse molti di voi sanno, quando il dispositivo viene sincronizzato con iTunes, questi esegue un backup completo di tutti i dati nel dispositivo stesso e li salva in una specifica cartella sul disco del computer. Con l’iPBA è possibile esplorare il contenuto di questa cartella alla ricerca di informazioni interessanti.

Il software rappresenta una opportunità interessante sia per gli smanettoni che vogliono sapere cosa si nasconde sul suo computer sia per coloro che desiderano recuperare dati da vecchi backup o semplicemente un sistema comodo per sfogliare il contenuto e averlo a disposizione sul proprio pc (parliamo, tra le altre cose, di tutto l’archivio degli sms o della ribrica telefonica, quindi mica paglia :-) ). Ovviamente funziona anche sotto Linux (dovete avere comunque iTunes su un Mac o Windows per eseguire il backup, poi lo potete copiare su una macchina Linux e da lì utilizzare il programma).

Per ulteriori informazioni e per scaricare il programma potete andare all’indirizzo: http://ipbackupanalyzer.com

Il software è sperimentale e in fase di continuo sviluppo, ma perfettamente utilizzabile. Ovviamente sono sempre ben accetti commenti, bug report o offerte di collaborazione (è open source, fatevi sotto!). A quanto mi risulta non esiste nulla di paragonabile a iPBA nel mondo open source, quindi non sarebbe male farlo crescere fino a diventare un punto di riferimento per l’analisi (forense e non) di iDispositivi in ambito open source…

Ciao a tutti!

English Verb Test Generator

Forse ricorderete di quel mio bislacco articolo circa un modo comodo per generare una verifica sui verbi irregolari inglesi mediante uno script in python. Tale script prendeva semplicemente un elenco di verbi, li mescolava, ne sceglieva alcuni, di ciascuno sceglieva una possibile voce da mostrare (forma base, passato, participio o traduzione in italiano) ed esportava il tutto in formato CSV; da qui l’utente finale doveva solamente importare il CSV in un foglio di calcolo, sistemare le caselline, le intestazioni, le dimensioni dei caratteri e stampare il tutto.

Carino, ma c’era ancora molto da fare. Lo scoglio maggiore all’usabilità era la necessità di utilizzare un foglio di calcolo, e con esso dover reimpostare ogni volta stili, dimensioni caratteri, bordi e cose così: scomodo!

Così, quando ieri sera mia madre mi ha chiesto di prepararle ancora qualche verifica, ho voluto mettere mano al programmino e apportare qualche modifica; come potrete vedere il risultato mi è decisamente sfuggito di mano :-)

Fatto sta che lo script ora è in grado di produrre un PDF multipagina perfettamente formattato, sfruttando le ottime librerie open a disposizione del python (ReportLab PDF Generator).

Per giunta già che c’ero ho creato con Platypus e CocoaDialog un bundle per Mac Os, così gli utenti mac possono tenere il programmino sulla loro scrivania :-D .

Insomma, tira e molla e ho finito col creare un progetto su SourceForge, l’”English Verb Test Generator“. Se a qualcuno (insegnanti, studenti di medie/superiori, uomini d’affari che si vergognano per non aver mai imparato i verbi irregolari e fanno figuracce quando sono all’estero) interessa usarlo, provarlo o anche solo dare un’occhiata al codice è il benvenuto.

Ovviamente non mi dispiacerebbe una mail di feedback se il mio programma vi piace o se vi viene in mente qualche modifica interessante da apportarvi.

Ciao a tutti!

Trasformare programmi televisivi in comodi AVI

Da quando posseggo il mio bellissimo WinTV-HVR900 (sintonizzatore analogico e digitale terrestre USB) ho iniziato a godere della gioia di poter vedere la tele in qualunque istante, e poter anche registrare i programmi a mio piacimento per poterli rivedere in seguito.

Grazie al comodo software EyeTV Lite (in bundle con il sintonizzatore) tutto questo è comodamente possibile, ma con un limite: non è possibile prevedere una compressione in tempo reale del programma da registrare; registrando dal digitale terrestre (ovviamente il meglio cui posso aspirare in fatto di qualità) il segnale ricevuto viene direttamente salvato sul disco, e dopo un paio di prove ho notato che questo mi costa circa 500 MB di disco ogni mezz’ora!!! Tantissimo! Il software purtroppo non permette di aggirare questo fatto, quindi devo proprio tenermi un bel pò di disco libero per registrare; però posso fare qualcosa per il filmato risultante.

Ciascuna registrazione di EyeTV è contenuta nella cartella [nome_utente]/Documents/EyeTV (o qualcosa del genere). Questa cartella contiene dei bundle che rappresentano le singole registrazioni. Cliccando su una col pulsante destro e selezionando “mostra contenuto pacchetto” possiamo esaminarne il contenuto, che per la maggior parte è rappresentato da un file .mpg che contiene il filmato vero e proprio (gli altri files sono ininfluenti, contengono dati relativi a quando e come si è svolta la registrazione e un file di immagine dell’anteprima).

Tutto quello che ci occorre è il file .mpg. 580 mega per 20 minuti di una puntata dei Simpson!?! Vediamo di provare a migliorare la situazione.

Per prima cosa ci dobbiamo procurare il coltellino svizzero di ogni amante del coding video e audio: il leggendario (e open source) mencoder. Andiamo alla sezione download del sito, cerchiamo la sezione “binaries” e scarichiamo la versione per macOsX. Oppure, visto che siamo ormai degli esperti, potremmo pure compilarcelo; in tal caso poco prima sulla pagina si possono scaricare anche i sorgenti.

Adesso ci troviamo con un file eseguibile chiamato mencoder. Piazziamolo in una cartella, e piazziamo nella stessa cartella anche il file mpg da comprimere.

Quello che faremo è semplice: andremo a ricodificare il file video e audio che abbiamo tra le mani in un nuovo formato video e audio che ci permetta di risparmiare spazio; per comodità, efficienza, qualità e amore per il software libero ho scelto di codificare il video in formato Xvid e l’audio in mp3 con mp3lame (entrambe possibilità supportate da mencoder). Il passaggio di ricodifica si svolgerà in 2 passaggi per avere un risultato migliore: il primo passaggio andrà ad esaminare il file da codificare, il secondo svolgerà l’encoding vero e proprio sfruttando le notizie raccolte in precedenza.

I comandi che utilizzo normalmente sono i seguenti:

./mencoder <nome file.mpg> -oac mp3lame -ovc xvid -xvidencopts pass=1 -o /dev/null
./mencoder <nome file.mpg> -oac mp3lame -ovc xvid -xvidencopts pass=2:bitrate=-100000 -o risultato.avi

Cosa significano le opzioni usate?

-oac mp3lame indica al software la codifica della traccia audio (mp3)

-ovc xvid indica la codifica della traccia video (xvid)

-xvidencopts indica una serie di opzioni al codec video, in particolare:

pass=1 o 2 indica se stiamo svolgendo il primo o il secondo passaggio

bitrate indica il bitrate desiderato del video. Se non sappiamo cosa significa o non ce ne vogliamo preoccupare    possiamo sfruttare un trucchetto: se usiamo un numero negativo, invece che il bitrate andiamo a specificare la dimensione desiderata (in kilobytes) del file di output. In questo caso vado a sfruttare questa opzione per produrre un file in uscita da 100 mega (100’000 KB) a partire da un video in ingresso di 20 minuti circa (un buon compromesso), mencoder si preoccuperà di calcolarsi un bitrate adeguato.

Il risultato sarà un file risultato.avi codificato in xvid+mp3 (perfettamente compatibile con i player attualmente diffusi, tra i quali consiglio mplayer o vlc). Così, una puntata dei Simpson di 20 minuti registrata alla tele per rivedermela in seguito passa da 600 mega a poco più di 100, quasi senza degrado qualitativo.

Ultimo consiglio: conviene fare un pò di prove con il bitrate (o stimatore di dimensioni) per capire qual’è il giusto compromesso qualità/costo.