August 12, 2012

Convert mobile video format with linux

Mi sono spesso ritrovato a convertire un video girato con il mio cellulare in un formato più comune per il PC. Ogni volta la strada è stata diversa, esistono molti modi per convertire questi video. Questa volta, però, voglio tracciare il mio cammino per poi ripeterlo e magari estenderlo ogni volta che scopo qualcosa di nuovo… spero che ti possa essere utile!!

Tool… quale?

Come dicevo prima, esistono molti tool, molti ad interfaccia grafica, ma io scelgo sempre la riga di comando… forse perchè mi piace sempre l’idea di automatizzare tutto ed avere lo “one-click all done”. Altra variante al tema è il tool che scelgo, da sempre ho utilizzato ffmpeg per fare questo tipo di conversioni, stavolta, mencoder sembra che faccia al caso mio. Tra i commenti del sito Michele’s Blog trovo scritta la sequenza che mi convince.

Installare mencoder

Nel mio sistema (xubuntu 10.04) non è presente mencoder

odyssey@Itaca:/tmp/VideoConverter$ mencoder
Il programma "mencoder" non è attualmente installato.  È possibile installarlo digitando:
sudo apt-get install mencoder

ed i passi per installare questo software sono suggeriti dal sistema stesso…

odyssey@Itaca:/tmp/VideoConverter$ sudo apt-get install mencoder
[sudo] password for odyssey: 
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze       
Lettura informazioni sullo stato... Fatto
Pacchetti suggeriti:
  mplayer-doc
I seguenti pacchetti NUOVI saranno installati:
  mencoder
0 aggiornati, 1 installati, 0 da rimuovere e 0 non aggiornati.
È necessario scaricare 1569kB di archivi.
Dopo quest'operazione, verranno occupati 3645kB di spazio su disco.
ATTENZIONE: i seguenti pacchetti non possono essere autenticati.
  mencoder
Installare questi pacchetti senza verificarli [s/N]? s
[....]

Ok ora nella mia linux possiedo anche mencoder… amo linux proprio per questo 🙂

L’instruzione magica

L’instruzione magica da provare senza nemmeno sapere di cosa si tratta, via con la prova:

 odyssey@Itaca:/tmp/VideoConverter$ mencoder -oac pcm -ovc lavc  -vf pp,2xsai,scale -o MOV019_lavc.avi MOV019.3gp

il risultato sembra esserci, ma la resa non mi convince

Visualizzazione della prima conversione

Originale – Compresso

Incomincio a spulciare la pagina man del comando ed inizio a capire il significato dei parametri… incomincio con la codifica audio -oac pcm

       -oac 
              Codifica con il codec audio specificato (nessun valore di default).
              NOTA: Utilizza -oac help per avere una lista dei codec audio disponibili.

              ESEMPIO:
                 -oac copy
                      niente codifica, solo copia del flusso byte per byte
                 -oac pcm
                      Codifica in formato PCM non compresso.
                 -oac mp3lame
                      Codifica in MP3 (usando LAME).
                 -oac lavc
                      Codifica con un codec di libavcodec.

la codifica da effettuare video -ovc lavc

       -ovc 
              Codifica con il codec video specificato (nessun valore di default).
              NOTA: Utilizza -ovc help per avere una lista dei codec video disponibili.

              ESEMPIO:
                 -ovc copy
                      niente codifica, solo copia del flusso
                 -ovc raw
                      Codifica su un formato grezzo non compresso arbitrario (usa '-fv format' per selezionare come).
                 -ovc lavc
                      Codifica con un codec di libavcodec.

infine il FILTRI VIDEO -vf pp,2xsai,scale

       I filtri video ti permettono di modificare il flusso video e le sue proprietà.  La sintassi è:

       -vf 
              Attiva una catena di filtri video.
           pp[=filtro1[:opzione1[:opzione2...]]/[-]filtro2...] (vedi anche -pphelp)
                Abilita l'elenco dei sotto filtri di post elaborazione specificati.
           2xsai
                Scala e ammorbidisce l'immagine con l'algoritmo di scalatura ed interpolazione 2x.
           scale=
                Valore nominale di riproporzione tempo.  Riproporziona questo valore sommato alla velocità.  (default: 1.0)

Ok! mi sembra di capire che posso migliorare aggiungendoci parametri!

Riprovo, questa volta però provo a mettere qualche parametro secondo i miei gusti, e provo immediatamente i filtri non di defaut con l’istruzione

odyssey@Itaca:/tmp/VideoConverter$ mencoder  -oac pcm -ovc lavc  -vf pp=hb/vb/dr/al,2xsai,scale -o MOV019_lavc2.avi MOV019.3gp

Il risutato continua a non convicermi.

Continuo a spulciare nei parametri e scopro che è possibile effettuare conversioni anche tramite la codifica xvid. i parametri per questa istruzione mi arrivano sempre dal grande fratello google, e provo la sequenza

odyssey@Itaca:/tmp/VideoConverter$ mencoder -oac pcm -ovc xvid  -vf pp=hb/vb/dr/al/tmpnoise:1:2:3,scale  -xvidencopts pass=1:vhq=4:qpel:chroma_me:pass=2:frame_drop_ratio=5:trellis:max_key_interval=500:bitrate=800 -o MOV019_xVid.avi MOV019.3gp

Il risultato è eccellente… peccato che il file in output sia più grande dell’originale! Vediamo di capirci qualcosa. Utilizzando questa serie di opzioni (di cui si lasia al lettore scoprire il significato) abbiamo come legge empirica di compressione basata sul tempo/spazio, circa 1′ è uguale a circa 7,7Mb!

Le dimensioni totali sono:

odyssey@Itaca:/tmp/VideoConverter$ ls -alh
totale 22M
drwxr-xr-x  2 odyssey odyssey  120 2012-08-12 14:36 .
drwxrwxrwt 15 root    root     380 2012-08-12 14:32 ..
-rw-r--r--  1 odyssey odyssey 6,6M 2012-08-11 15:23 MOV019.3gp
-rw-r--r--  1 odyssey odyssey 3,2M 2012-08-12 14:30 MOV019_lavc2.avi
-rw-r--r--  1 odyssey odyssey 3,1M 2012-08-12 14:32 MOV019_lavc.avi
-rw-r--r--  1 odyssey odyssey 8,8M 2012-08-12 14:29 MOV019_xVid.avi

Ed ecco quindi che abbiamo un video perfetto ma con una dimensione del file non indifferente.

Conclusione

In definitiva ognuno di noi deve decidere quale compromesso è disposto a sopportare per realizzare la conversione desiderata.

Di seguito il raffronto tra le tre versioni  di conversione eseguite, ad ognuno la proprio scelta.

Raffronto immagini

Raffronto di tutte i formati di immagini

PS: Il video mostra la vetta del Monte Prado e tutte le persone leggermente stanche per essere arrivate fino a 2054m m.s.l. io,la mia ragazza,la nostra guida superpaziente e 3 lepri che abbiamo incontrato in vetta per 10s 😉

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *