Convertiamo un DivX in DVD con GNU/Linux

17 ottobre, 2007 | Categoria: Informatica

Quante volte vi è capitato di avere un DivX o un semplice filmato, e di volerlo convertire in DVD, in modo da poterlo vedere comodamente seduti sul divano di casa? Io l’ ho fatto proprio ieri, con pochi e semplici passaggi, dalla mia Linuxbox.

Gli strumenti necessari sono :

  • MEncoder
  • dvdauthor
  • un software di masterizzazione

Sì, servono solo questi due semplici software. Il primo, serve per la conversione dell’ AVI in MPEG.
Entrambi i software spesso si trovano nei repository delle maggiori distribuzioni, per cui non vi sarà difficile trovarli. Altrimenti, c’è sempre la strada della compilazione da sorgenti :lol:
Pronti? Iniziamo.

Convertiamo il filmato in MPEG

Prima operazione, è la conversione del filmato in formato MPEG-2. A questo fine, ci viene incontro MEncoder. Questo è un comodo tool, utilizzabile da linea di comando, per la codifica di file video.
Spostiamoci col terminale nella directory dov’è presente il file AVI e digitiamo il seguente comando, sostituendo ovviamente il nome del file :

mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:aspect=16/9 -ofps 25 -o video_finale.mpg video_iniziale.avi

La conversione verrà fatta in PAL, il metodo di codifica più utilizzato in Europa, in dimensioni 16:9. Se ci interessa convertire in NTSC basta sostituire scale=720:576 con scale=720:480, keyint=15 con keyint=18, e -ofps 25 con -ofps 30000/100. Per la conversione in 4:3 basta sostituire aspect=16/9 con aspect=4/3.

Aspettiamo che finisca la conversione, e andiamo al punto successivo. In caso abbiamo un DivX composto da più tempi, basta ripetere l’ operazione per ogni file. Successivamente, potremo anche unire in un unico DVD tutti i tempi.

Creiamo la struttura del DVD

Ora abbiamo dei bei file in formato MPEG, pesanti come non mai, ma non preoccupiamoci, una volta fatto il DVD potremo pure cancellarli.

A questo punto, entrerà in ballo dvdauthor. Sempre da terminale, digitiamo
dvdauthor -o dvd_directory/ -t -f video_finale.mpg

Questo comando creerà una nuova directory, che prenderà il nome di dvd_directory, e che conterrà al suo interno tutti i file per il nostro DVD, ovvero le directory VIDEO_TS e AUDIO_TS. In caso abbiamo due o più tempi da voler masterizzare in DVD, possiamo aggiungere alla fine della stringa altri nomi dei file .mpg dei vari tempi. Verranno uniti uno dopo l’ altro, nell’ ordine di inserimento nella stringa, e masterizzando il DVD avremo un unico tempo che comprenderà gli altri.

Operazione finale, la masterizzazione delle due directory create, AUDIO_TS e VIDEO_TS. Può essere fatto con qualsiasi software di masterizzazione, io ho utilizzato l’ utility di masterizzazione di GNOME.

Questa piccola guida è ispirata in larga parte da questa scritta su Linux.com, ho riassunto in breve e in italiano i passi da fare per avere una copia DVD dei nostri video.
In caso di problemi, non esitate a chiedere in un commento. :wink:

UPDATE 20/12/2007
Ho dimenticato un passaggio nella scrittura della guida. Dopo aver creato la struttura del DVD, è necessario digitare:
dvdauthor -T -o dvd_directory

Così facendo, creeremo la tabella che il lettore DVD leggerà una volta inserito il disco. Inoltre, nei commenti ricochet (che ringrazio) mi ha fatto notare l’ assenza di un parametro in un comando, che ho appena aggiunto (anche se con un pò di ritardo).

  1. novembre 14th, 2007 at 12:56
    Reply | Quote | #1

    Ciao! Grazie per la guida in sti giorni sto giusto impazzendo per creare dei dvd; con DeVeDe il dvd da avi lo fa ma viene una schifezza pieno di righe, anzi parallelepipedi e in basso sul “bordo” della banda nera c’è una bella striscia verde :(
    così ho trasformato il file avi in mpeg come descritto ( tra l’altro sto cominciando a “vedere” la bellezza del programma che avanza da terminale :twisted: )
    ma mi blocco con dvdauthor :

    :~$ dvdauthor -o dvd_directory/ -f deadendrun.mpeg

    DVDAuthor::dvdauthor, version 0.6.14.
    Build options: gnugetopt magick iconv freetype
    Send bugs to

    ERR: Must first specify -t, -m, or -x.

    scusa ma sono alle prime armi coi video
    saluti

  2. novembre 14th, 2007 at 13:53
    Reply | Quote | #2

    Sono riuscito a far funzionare il cervellino e ho risolto, ho aggiunto l’opzione -t nella posizione giusta (alla quinta volta!)quindi:
    :~/Desktop$ dvdauthor -o dvd_directory/ -t -f deadendrun.mpeg
    e c’ha messo un attimo!!! :grin:
    ancora grazie
    saluti

  3. michele
    gennaio 6th, 2008 at 13:54
    Reply | Quote | #3

    Dopo la conversione da avi mpeg un filmato da un ora è diventato di circa 30 minuti. E’ normale? non sembra peò che il video sia particolarmente accelerato… :???:

  4. gennaio 6th, 2008 at 14:21
    Reply | Quote | #4

    Sicuro di aver svolto tutti i passi nel modo corretto? Io l’ ho fatto diverse volte, e mai nessun problema :)

  5. michele
    gennaio 7th, 2008 at 20:49
    Reply | Quote | #5

    Grazie tante per la risposta Davide :smile:
    Ti assicuro che ho copiato lo script direttamente sulla console cambiando solo il nome del divx. Inoltre ho comunque creato il dvd si vede nel lettore ma niente audio . Non voglio fare la conversione con Nero è una questione di… fede :razz: devo farlo con linux farò qualche altro tentativo!

  6. michele
    gennaio 8th, 2008 at 22:39
    Reply | Quote | #6

    Ho risolto il video nonera accorciato, ma per qualche inspiegabile bug totem non legge correttamente la scala dei tempi del filmato. Questa invece è normale se si apre il file con MPlayer :smile: Grazie per l’aiuto

  7. luglio 19th, 2008 at 06:16
    Reply | Quote | #7

    scusa, ma io invece ho inseritotutta la stringa nel terminale quella x il comando mencoder ma alla fine quando do’ l’invio mi dice errore vf non mi riconosce il comando e non mi parte niente nessuna conversione.come sistema operativo ho ubuntu 8.04 ciao e grazie

  8. luglio 19th, 2008 at 19:28
    Reply | Quote | #8

    @ massimo:
    potresti riportarmi esattamente il messaggio di errore che ricevi?

  9. luglio 20th, 2008 at 16:26
    Reply | Quote | #9

    Compiled with runtime CPU detection.
    Option vf: harddup-lavcopts doesn’t exist.
    Error parsing option on the command line: -vf

    Exiting… (error parsing command l’errore di cui ti dicevo era questo ciao e grazie davide x l’interesse :lol: ah scusami ancora forse non ho capito da dove dovevo cambiare il nome del divx il l’ho cambiato dalfile e poi da li’ ho aperto la consolle e digitato tutto lo script grazie ancora davide :lol:

  10. massimo
    luglio 20th, 2008 at 16:37

    scusami ancora davide io esattamente ho fatto i seguenti procedimenti: :grin: sono andato nella cartella dove ho il file,l’ho rinominato,e da li ho aperto la consolle e digitato tutto lo script e come ti ho mandato mi a dato l’errore vf.ho fatto tutto giusto? :lol:

  11. luglio 21st, 2008 at 00:05

    Potresti riportarmi esattamente anche il comando che ti da questo errore?

  12. massimo
    luglio 21st, 2008 at 00:33

    se intendi il comando che digito io dopo aver copiato lo script e’ invio se no l’errore che mi da te l’ho copiato nel messaggion°9 ciao e ancora grazie.scusa se dico fesserie ma sono in linux da poco

  13. Armando
    agosto 16th, 2008 at 17:55

    Ciao io ho provato a fare tutti i passi e funziona tutto benissimo a parte il fatto che quando metto il dvd all’interno del lettore di casa non si sente l’audio invece sul computer funziona tutto regolare…. :sad:
    Sapresti aiutarmi per favore Grazie

  14. agosto 16th, 2008 at 18:07

    Armando ha scritto:

    Ciao io ho provato a fare tutti i passi e funziona tutto benissimo a parte il fatto che quando metto il dvd all’interno del lettore di casa non si sente l’audio invece sul computer funziona tutto regolare….
    Sapresti aiutarmi per favore Grazie

    Ciao, il problema che riscontri non mi è mai capitato, per cui non saprei da cosa può dipendere.
    Prova a farlo leggere a diversi lettori DVD, magari quello che hai provato non riesce a leggerlo bene :neutral:

  15. agosto 22nd, 2008 at 13:20

    Ciao, ho seguito tutta la procedura indicata. Funziona tutto alla perfezione. Però ho notato che il dvd creato non viene letto correttamente dal lettore da tavolo (va a scatti). La stessa cosa capita se tento di fare partire il dvd da windows con windows media player o con PawerDvd. Con vlc invece va bene.
    Su linux il dvd è letto bene da vlc, totem e mplayer.
    Il problema più grosso però è il lettore da tavolo. Forse manca qualche codec su linux? (ho ubuntu 8.04).
    Ciao

  16. mk
    dicembre 25th, 2008 at 02:20

    Tutto, perfetto, grazie per la guida (o almeno credo, l’encoding sta ancora girando :wink: ). Una piccola cosa: per chi ha CPU multicore (ormai quasi tutti) è meglio aggiungere :threads=2 o :threads=4 alle opzioni di lavc. Dovrebbe funzionare anche :threads=0 (cioè autodetect), ma non l’ho provato. Così sfrutta tutti i core… sul mio portatile Centrino Duo ho fatto così.

    mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:aspect=16/9:threads=2

TOP