Convertire un video da .mkv a .avi includendo i sottotitoli su ubuntu linux

| | 4 Comments

Pellicola VideoSpesso capita di voler convertire la nostra copia di backup mkv in avi per poterlo vedere col nostro lettore da tavolo divx. Con i film stranieri molte volte abbiamo bisogno dei sottotitoli per alcuni dialoghi non tradotti. Vediamo come convertire il nostro film in avi con i sottotitoli che ci interessano su ubuntu o qualsiasi altra distribuzione linux.
Prima di tutto installiamo il necessario con:

sudo apt-get update
sudo apt-get install w32codecs mplayer-fonts mencoder mkvtoolnix

Se vi dovesse dare problemi installare i w32codecs aggiungete ai repository medibuntu seguendo questa guida. Bene ora dobbiamo analizzare il file e vedere qual’è l’id del sottotitolo che ci interessa con:

mplayer nomefile.mkv

Vi si apre il player che vi fa vedere il video non chiudetelo ma andate a vedere l’output nel terminale e cercate queste informazioni sulle traccie:

[mkv] Track ID 1: video (V_MPEG4/ISO/AVC), -vid 0
[mkv] Track ID 2: audio (A_AC3), -aid 0, -alang ita
[mkv] Track ID 3: audio (A_AC3), -aid 1, -alang eng
[mkv] Track ID 4: subtitles (S_TEXT/UTF8), -sid 0, -slang ita
[mkv] Track ID 5: subtitles (S_TEXT/UTF8) “Forced”, -sid 1, -slang ita
[mkv] Track ID 6: subtitles (S_TEXT/UTF8), -sid 2, -slang eng
[mkv] Will play video track 1.

Vediamo 3 tipi di sottotitoli, 2 italiani e 1 inglese, a noi interessa solo 1 italiano che è quello dei dialoghi in altre lingue, in questo caso si tratta del Track ID 5, di solito questo tipo di sottotitoli hanno un nome in questo caso “Forced”, ora per includere questo sottotitolo nel nostro avi di destinazione dobbiamo segnarci -sid 1.

Bene il comando che andremo ad eseguire fa la conversione del file con ridimensionamento a 800×430 (-vf scale=800:430), manteniamo l’audio così com’è in AC3 (-oac copy), e per il formato video abbiamo scelto xvid (-ovc xvid) con bitrate molto alto per avere un buon video (-xvidencopts bitrate=1200), includiamo i sottotitoli scelti (-sid 1), e diciamo come salvare il file (-o nomefileinuscita.avi).

mencoder nomefile.mkv -vf scale=800:430 -ovc xvid -oac copy -xvidencopts bitrate=1200 -sid 1 -of avi -o nomefileinuscita.avi


Il video dell’esempio ha una durata di 2 ore e 11 minuti, e col bitrate e risoluzione scelti l’output è stato di 1,4gb circa. Ma questo possiamo vederlo anche durante l’elaborazione, dove ci viene mostrato come segue

Pos:   2933.1s      73543f ( 36%)  21.21fps Trem:   96min   1542mb  A-V:0.072 [1200:448]

I 1542mb è la dimensione stimata del file in uscita.
Se volessimo convertire il filmato senza i sottotitoli basta non inserire -sid 1 nel comando e se volessimo estrarre i sottotitoli dal file .mkv perchè il nostro lettore è in grado di leggere i files dei sottotitoli basta digitare nel terminale:

mkvextract tracks nomefile.mkv 5:sottotitoli.srt

dove 5 è il numero della traccia dei sottotitoli che abbiamo visto prima e sottotitoli.srt è il nome che abbiamo scelto.

Se volete approfondire i vari comandi vi rimando a queste risorse:
Doc-ufficiale-mencoder-mplayer
Doc-ufficiale-mkvtoolnix

P.S.:
Per non distorcere le dimensioni del video fate una semplice proporzione del tipo:
Xoriginale : Yoriginale = Xfinale : Yfinale, nel mio caso avevo come dimensioni originali 1280×688 e ho deciso che volevo una Xfinale di 800 quindi:
1280 : 688 = 800 : x da cui x=430

Grazie e alla prossima…

Tags: , , , , ,

Category: Ubuntu

About the Author ()

Studio Ingegneria Informatica e Bio. all' Università Magna Graecia di Catanzaro, sono appassionato di informatica, e mi piace praticare la pesca nelle acque dolci.