GLM - 17/1/2021 - 8:22
Classifica dei relatori GLM 2014 (per numero di lezioni svolte)
- [9] Samuele Cacchiarelli
- [6] Andrea Bianchini
- [6] Gianluca Gabrielli
- [1] Matteo Ciccioli
- [1] Fabio Pagnotta
- [1] Alessandro Zampa
- [1] Emanuele
- [1] Roberto Marozzi
- [1] Giampiero Rubini
Vuoi diventare relatore GLM? presenta anche tu una lezione su un argomento che più ti piace relativo a Linux o al mondo dell'OpenSource
Archivio news
Doppio audio e doppi sottotitoli
Programmi richiesti: MPlayer, Transcode (e dvd:rip)
Se avete già capito come funziona Mplayer/Mencoder troverete Transcode
molto più semplice da utilizzare. E' anch'esso un programma "a riga di comando" e per questo molto potente e versatile proprio come
Mencoder ma a mio avviso, più chiaro da utilizzare. A suo favore, inoltre, c'è il fatto che esiste già un front-end grafico che ne semplifica
notevolmente il suo utilizzo, rendendo l'operazione di conversione da DVD a DivX veramente semplice ed automatica.
dvd:rip, questo è il nome del programma, ha d'altra parte, notevoli limitazioni,
una fra tutte è che non consente, al momento di effettuare le operazioni di encoding senza aver prima scaricato (o rippato) l'intero
contenuto nel dvd sul vostro hard-disk (tale problema ovviamente non si pone se si utilizza transcode direttamente da riga di comando).
In questo articolo mostrerò come grazie all'utilizzo congiunto di transcode (o dvdrip) e mencoder sia possibile creare un divx
con più audio e più sottotitoli e come sia poi possibile rivedere il proprio filmato divx scegliendo la lingua e l'eventuale sottotitolo da visualizzare.
E' inutile ricordarvi che la copia di un dvd è ILLEGALE se non si è proprietari dello stesso o se fatta ai fini di una sua distribuzione a terzi; occhio perciò a quello che fate :) e sia ben inteso che tale specie di manuale non vuole essere affatto di incentivazione al perseguimento di finalità illegali.
Anche in questo caso non mi soffermerò a spiegare l'utilizzo specifico del programma utilizzato, ma mostrerò con
esempi pratici come ottenere il risultato che ho anticipato. Chi volesse saperne di più sull'utilizzo di transcode,
può fare rotta direttamente a questo indirizzo,
dove potrà trovare documentazione ed esempi.
Munitevi dunque di programma e relativo manuale ($~man~transcode) e procediamo:
Operazioni preliminari
Per prima cosa occorre conoscere le seguenti informazioni:
- In quale Titolo sono presenti i capitoli su cui è suddiviso il film nel DVD;
- Quanti canali audio sono presenti;
- Quanti sottotitoli vi sono.
Per individuare in quale titolo di trova il film è possibile utilizzare il comando:
$ tcprobe -i /dev/dvd
l'output di tale comando mostrerà quanti titoli sono presenti e di quanti capitoli sono composti i vari titoli.
Riprendendo dall'esempio precedente, il titolo che ci interessa sarà il num.9.
A questo punto vediamo quanti audio e quanti sottotitoli sono presenti in tale titolo con il comando:
$ tcprobe -i /dev/dvd -T 9,1
-T 9,1 con questa opzione indichiamo il titolo ("9") ed il capitolo ("1") da cui vogliamo estrarre le informazioni.
otterremo come output qualcosa simile a quanto segue:
[....]import frame size: -g 720x576 [720x576] aspect ratio: 16:9 (*)
frame rate: -f 25.000 [25.000] frc=3 PTS=1048.9000, frame_time=40 ms, bitrate=8000 kbps
audio track: -a 0 [it] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=1048.8120, bitrate=448 kbps
audio track: -a 1 [en] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=1048.8120, bitrate=448 kbps
audio track: -a 2 [it] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=1048.8440, bitrate=224 kbps
audio track: -a 3 [en] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000] PTS=1048.8440, bitrate=192 kbps
[....]
In cui possiamo vedere che vi sono esattamente 4 canali audio (2 in italiano e " in inglese) qual'è la dimensione originale del frame e quale il suo aspetto (16:9 ovvero 1.78:1)
Codifica primo passaggio
Tale operazione può essere fatta direttamente e con facilità utilizzando dvd:rip,
ma occorrerà disporre di notevole spazio sul hard-disk. dvd:rip infatti permette di effettuare
tutte le operazioni di RESIZING, CROPPING e deinterlacciamento viste nella prima parte di questo articolo,
con estrema facilità, mostrando direttamente una preview del risultato che andremo ad ottenere.
Chi invece preferisce fare tutto a mano ;) dia direttamente il comando di transcode con le opzioni appropriate.
SUGGERIMENTO:
Se volete unire la facilità d'uso di dvd:rip con la versatilità di transcode da riga di comando,
potete seguire questa procedura per ottenere con facilità il comando esatto da utilizzare:
Avviate dvd:rip.
Fategli leggere le informazioni preliminari sul dvd.
Quindi selezionate
e rippate sul vostro hard-disk soltanto un capitolo.
Foto1
Fate i dovuti aggiustamenti richiesti dal programma e cliccate pure su "transcode" per fargli iniziare
il processo di encoding.
Foto2,
Foto3
Annullate pure l'operazione ed andate a cercare tra i log del programma, la riga contenente il comando transcode.
Nel nostro caso, Foto4 la riga che contiene il comando transcode è la seguente:
Sun Oct 6 05:18:07 2002 Executing command: transcode -i /spare/dvdrip/kpax/vob/009-C003 -a 3 -w 696,250,100 -b 96,0,0 -V -f 25 -Y 46,0,42,0 -B 27,10,8 -x vob -o /spare/dvdrip/kpax/avi/009/kpax-009-C003.avi -y xvidcvs
Estrapoliamo dalla riga il comando transcode con tutte le sue opzioni
transcode -i /spare/dvdrip/kpax/vob/009-C003 -a 3 -w 696,250,100 -b 96,0,0 -V -f 25 -Y 46,0,42,0 -B 27,10,8 -x vob
-o /spare/dvdrip/kpax/avi/009/kpax-009-C003.avi -y xvidcvs
NOTA: tutto il comando deve stare su una riga
e modifichiamolo nel seguente modo:
Mettiamo al posto di
-i /spare/dvdrip/kpax/vob/009-C003
direttamente il device che corrisponde al nostro lettore dvd (/dev/dvd/) e l'indicazione del titolo e dei capitoli da considerare ovvero:
-i /dev/dvd -T 9,-1
dove -T 9,-1
indica il 9° titolo e tutti i capitoli in esso presenti ("-1")
e mettiamo al posto di
-o /spare/dvdrip/kpax/avi/009/kpax-009-C003.avi
il nome che vogliamo dare al file avi che stiamo creando.
-o kpax.avi
Aggiungiamo poi, se non presente, l'opzione "-R" seguita da "1" se vogliamo suddividere
questa operazione in 2 passaggi al fine di ottimizzare al meglio il risultato. In tale caso occorrerà poi ripetere,
al termine dell'operazione, lo stesso comando modificando
"-R1" in "-R2".
Ecco alla fine il comando che avremo ottenuto senza dover fare alcun calcolo "manuale"
transcode -i /dev/dvd -T 9,-1 -v -a 0 -w 1400,250,100
-b 128,0,0 -V -f 25 -Y 46,0,42,0 -B 27,10,8 -x dvd
-o kpax.avi -y xvidcvs -R1
Precede: Codifica a 2
o 3 passaggi