Split & Join prima parte. Unire e dividere i file video da linea di comando

Spesso, soprattutto se si utilizzano servizi tipo Rapidshare e Megaupload, può capitare di dover dividere o unire i nostri file video. Il mondo Gnu/Linux dispone di potenti tool, da linea di comando, che permettono di compiere queste due operazioni in modo rapido ed indolore.
Dividere i file avi ed mpeg
Per quanto riguarda la divisione del file in più parti, possiamo usare sia il comando split che mencoder (che fa parte del progetto MPlayer). Con:
split -d -b 100m VideoDaDividere.avi VideoDiviso.avi
divideremo il video in varie parti da 100 MegaByte, l’opzione -d serve a dare un suffisso numerico (.avi01, .avi02, ecc) ai file creati, mentre con la -b specifichiamo la dimensioni delle parti. Con Mencoder invece è possibile dividere un video di un ora in due parti da trenta minuti ciascuna, così:
mencoder -endpos 00:30:00 -ovc copy -oac copy VideoDaDividere.avi’ -o prima_parte.avi
mencoder -ss 00:30:00 -oac copy -ovc copy VideoDaDividere.avi’ -o seconda_parte.avi
L’opzione -ss indica dove deve iniziare la codifica, mentre -endpos indica dove deve finire.

Unire i file video
Se invece dobbiamo unire le varie parti di un video, possiamo usare ancora mencoder:
mencoder VideoDiviso1.avi VideoDiviso2.avi VideoDiviso3.avi -o VideoUnito.avi -oac copy -ovc copy
In alternativa è possibile usare l’ottimo comando cat (concatenate) in combinazione con mencoder. Con:
cat VideoDiviso.avi00 VideoDiviso.avi01 VideoDiviso.avi02 > VideoUnito.avi
uniamo le varie parti in un file solo. Quest’operazione può però creare problemi di sincronizzazione tra l’audio e il video. Dobbiamo quindi usare mencoder per sistemare la situazione:
mencoder -forceidx -oac copy -ovc copy VideoUnito.avi -o VideoUnito_finito.avi
Queste operazioni funzionano sia coi file avi che con i file mpg ed mpeg. Nei prossimi giorni parlerò delle applicazioni che permettono di compiere queste operazioni tramite interfaccia grafica.
Articoli correlati:
Salvare gli stream video con MPlayer
9, Maggio, 2008 a 11:46 am
stai scherzando?
fare cat di 3 video per unirli e poi “sistemare” con mencoder è assurdo
9, Maggio, 2008 a 12:28 pm
Sicuro? http://www.arsgeek.com/?p=435
9, Maggio, 2008 a 1:16 pm
@Ferro si
sicurissimo
il cat li concatena a prescindere da loro contenuto
il che significa che concatena anche i vari header/footer
In pratica quel che ottieni è un video con della “porcheria” al suo interno
mencoder video1.avi video2.avi video3.avi …. videoN.avi -o video_unito.avi -oac copy -ovc copy
questo comando è corretto e non fa porcate
9, Maggio, 2008 a 1:19 pm
ah scusa…
specifico:
se usi split allora ricomponi con cat
(e poi non serve mencoder)
se usi mencoder per dividere (o avisplit) allora ricomponi tenendo conto che stai “riattacando” dei video e non dei pezzi di un grosso video
9, Maggio, 2008 a 1:31 pm
Hai ragione sul fatto dello split e del cat, perchè stai dividendo un file a prescindere che sia un video. Comunque il comando mencoder -forceidx, sincronizza l’audio e il video.
9, Maggio, 2008 a 3:50 pm
@Ferro
si… che alla fine il video “funzioni” posso anche capirlo..
ma è come se tu avessi 3 panini e vuoi unirne il contenuto in un unico panino
cosa fai?
li apri tutti e tre e metti il contenuto tra 2 fette di pane o li impili uno sull’altro con il pane e poi cerchi di rimuovere le fette di pane intermedie (-forceidx)
9, Maggio, 2008 a 4:22 pm
X mastro, bell’esempio, effettivamente mencoder è più logico x i video, ed infatti l’ho inserito. Mi è piaciuta la procedura col -forcedix, perchè si ottiene lo stesso risultato, usando uno dei comandi base dei sistemi *nix (cat), ed è giusto che vi si prenda confidenza. Grazie comunque della precisazione
9, Maggio, 2008 a 7:14 pm
X Rapidshare e Megaupload io uso o 7z al posto di WinRar
o lxsplit (http://lxsplit.sourceforge.net/) al posto di HJSplit perchè così va bene per tutti i sistemi operativi.
Lxsplit poi è molto facile da usare:
x unire lxsplit -j film.avi.001
x dividere lxsplit -s film.avi 100M
C’è anche HJSplit in Java ma preferisco lxsplit.
9, Maggio, 2008 a 7:32 pm
figurati
e scusa l’intrusione.. tendo a volte, me ne rendo conto, ad essere sempre molto preciso
15, Giugno, 2008 a 7:37 am
Che programma devo usare per riunire i file scaricati da rapidshare, sono tutti .rar
15, Giugno, 2008 a 9:42 am
X simone: Hjsplit va benissimo. Puoi usare sia la versione Linux che quella in Java. Ciao