Differenze tra le versioni di "Conversioni video"

Da GolemWiki.
Jump to navigation Jump to search
(Annullata la modifica 1760 di Alex.u (discussione))
Riga 1: Riga 1:
βˆ’
== Conversioni e Programmi Video (in init tre). ==
+
fz1HCH <a href="http://fxtlpdutzywb.com/">fxtlpdutzywb</a>, [url=http://nfskjslvprpd.com/]nfskjslvprpd[/url], [link=http://ttvydjivopeb.com/]ttvydjivopeb[/link], http://oqfwqtxyeyhe.com/
βˆ’
 
 
βˆ’
"Alex.u - alessandro.ugolini@autistici.org"
 
βˆ’
 
 
βˆ’
; Ingredienti: [[Mplayer]], [[Mencoder]], [[Transcode]], [[lsdvd]], [[dvdauthor]], [[libdvdcss]], [[Lame]], [[Mjpegtools]], [[image magick]], [[ffmpeg]], [[sox]], [[gimp]], [[lsdvd]], [[toolame]], [[vcdimager]],(minimo indispensabile).
 
βˆ’
 
 
βˆ’
Per l'installazione degli <sup>ingredienti</sup> si utilizzano i vari gestori di pacchetti presenti in tutte le distro; per una personalizzazione e un eccellente rendimento e' preferibile <sub>compilare</sub> il tutto (cosa non da poco:->)."
 
βˆ’
 
 
βˆ’
<small> Il presente doc serve a conoscere i vari termini usati nell'editing video, senza i quali sarebbe difficile usare ANCHE un programma con interfaccia grafica (a suon di clik). </small>
 
βˆ’
 
 
βˆ’
=== Glossari ===
 
βˆ’
==== Formati video. ====
 
βˆ’
 
 
βˆ’
; Mpeg1/2: Motion Process Expert Group - ES elementary stream senza info PS program stream audio-video-info
 
βˆ’
 
 
βˆ’
; Avi: Formato file piu' che video. Audio Video Interleaved (alcuni riportano interlaced). Puo' contenere tutti i codec.
 
βˆ’
 
 
βˆ’
; Mov: Contiene mpeg4 e acc audio.
 
βˆ’
 
 
βˆ’
; Wmv: fanno tenerezza
 
βˆ’
 
 
βˆ’
; OGM: Formato contenitore come l'avi. Puo' contenere qualsiasi codec A/V. Si possono aggiungere sottotitoli, menu. L'unico difetto e' che non e' ancora supportato dai riproduttori da tavolo.
 
βˆ’
 
 
βˆ’
==== Formati video (del televisore :^/) ====
 
βˆ’
 
 
βˆ’
; Standard televisivi: ce ne sono 2 Pal e Ntsc con differenze di eimenzione, hz diversi, frame rate diverso
 
βˆ’
 
 
βˆ’
; PAL: usato in europa e asia, dim. 720x576 area visibile 702x576, dim. del pixel 128x117 con aspect ratio di 1,094, frame rate 25 mezzi frame (50)
 
βˆ’
 
 
βˆ’
; NTSC: usato in usa e japp, dim 720x486 area visibile 711x486, dim. del pixel 72x79 con aspect ratio di 0,911, frame rate 30 mezzi frame (60)
 
βˆ’
 
 
βˆ’
; 4/3: formato delle tv piu' comuni
 
βˆ’
 
 
βˆ’
; 4/3 nativo: formato video tipico dei cartoons
 
βˆ’
 
 
βˆ’
; letter box: tipiche bande nere orizzontali, quando in una tv da 4:3 viene visualizzato un film in 16:9
 
βˆ’
 
 
βˆ’
; 16/9: formato televisivo wide screen
 
βˆ’
 
 
βˆ’
; anamorfico: formato cinematografico leggermente allungato per essere adattato alle tv 16/9.
 
βˆ’
 
 
βˆ’
; VistaVision: Formato cinematografico con dim 1.85:1
 
βˆ’
; Cinemascope: Formato cinematografico con dim 2.35:1
 
βˆ’
 
 
βˆ’
; RGB: descrizione del pixel R-red G-green B-blue tipica dei monitor
 
βˆ’
 
 
βˆ’
; Aspect ratio: E' il rapporto che sta' tra la larghezza e l'altezza di un formato. (es 4:3 = asr 1,3333333)
 
βˆ’
 
 
βˆ’
; Bitrate: Quantita' di informazioni espresse in bit in un secondo. (es. un file mp3 a 128Kbps = 1 secondo di musica = 128000 bit = 16000 byte al secondo)
 
βˆ’
 
 
βˆ’
; YUV: descrizione del pixel Y-luminanza (giallo) U-crominanza (rosso-giallo) V-crominanza (blu-giallo)
 
βˆ’
; dpi: pixel x pollice. Usato dagli scanner es 300 dpi (300 pixel in un pollice). Si puo' calcolare lo spazio utilizzato da un' immagine senza compressione. A4=21x29.7 cm 1-inch=2,54 cm profondita'=24 bit; (300dpi / 2.54 cm)^2 = 13950 pixel/cm^2 ; 21 x 29,7 x 13950 = 8700615 pixel totali; ogni pixel ha una profondita' di 24 bit e per fare un byte ci vogliono 8 bit - 8700615 x 24 / 8 = 26101845 byte overo 26 MB
 
βˆ’
 
 
βˆ’
==== Codecs Video ====
 
βˆ’
 
 
βˆ’
; mpeg1: (vcd) Libreria mpeg1 es.
 
βˆ’
; mpeg2: (dvd) codec per dvd estenzione solo video .m2v
 
βˆ’
; opendivx: codec libero, produce immagini YV12 codifica veloce.
 
βˆ’
; divx: implementata in mplayer (e mencoder) la versione libera di divx4 con il nome di divx4linux. Utilizza mpeg4
 
βˆ’
; xvid: Creato dalla separazione di openivx e divx5. Ottimo codec. Utilizza mpeg4
 
βˆ’
; lavc: No comment. IL Codec GNU per eccellenza supporta un po' di tutto. E di tutto un po' parecchio bene. Utilizza mpeg4 e molti altri.
 
βˆ’
; ffmpeg: E' una signora libreria che contiene codec opensource in grado di decodificare una gran parte di formati video: mjpeg,rv10,divx3-4-5,mp41,wmv1-2,HuffYUV,wma Molto piu' veloce dei codec proprietari. ovviamente.
 
βˆ’
 
 
βˆ’
==== Codecs audio ====
 
βˆ’
; mpeg layer 2: mp2 con extension .mpa
 
βˆ’
; mpeg layer 3: mp3 files musicali
 
βˆ’
; mpeg layer 1: vcd
 
βˆ’
; wma:  v1 v2 di win
 
βˆ’
; ac3 dolby: decodifica hw e sw x piu' canali compreso il dolby surround. Audio dei dvd.
 
βˆ’
; ogg vorbis: libero - libreria simile all'mp3 anzi meglio
 
βˆ’
; pcm: non compresso
 
βˆ’
 
 
βˆ’
==== Supporti CD/DVD ====
 
βˆ’
 
 
βˆ’
; CD: I CD normalmente contengono una sola sessione. E' possibile creare piu' sessioni, di grandezza diversa. Lo spazio utilizzabile e' di 700 Mb, esistono in commercio CD High Capacity in grado di contenere fino a 1Gb, come esistono miniCD di grandezze diverse
 
βˆ’
; CD-audio: I CD audio contengono piu' sessioni, una per ogni traccia audio. Le tracce audio contengono dati stereo campionate a 44100 Hz con 16 bit.
 
βˆ’
; DVD: Digital Video Disk, puo' contenere 120 min di video, con qualche accorgimento anche di piu' ;). Per i dati, lo spazio disponibile e' 4,4 Gb circa e non 4,7 come dicono i costruttori!
 
βˆ’
; DVD-video:
 
βˆ’
caratteristiche
 
βˆ’
possibilita' di memorizzare fino a 8 tracce audio
 
βˆ’
possibilita' di inserimento fino a 32 sottotitolazioni
 
βˆ’
possibilita' di inserire riprese (angle) da piu' punti di vista
 
βˆ’
possibilita' di inserire menu e contenuti multimediali
 
βˆ’
possibilita' di inserire punti di biforcazione, in modo da creare storie con conclusioni multiple.
 
βˆ’
; DVD-RAM: DVD riscrivibili da 2.5 Gb per faccia
 
βˆ’
; DVD5: 4.7 Gb per faccia, singolo strato il piu' diffuso e utilizzato, spazio dati 4.4 Gb
 
βˆ’
; DVD9: 8.5 Gb singola faccia doppio strato, i comuni dvd-video in vendita
 
βˆ’
; DVD10: 9.7 Gb doppia faccia singolo strato, disponibili 8.8 Gb
 
βˆ’
; DVD18: 17 Gb doppia faccia doppio strato
 
βˆ’
; Region: Il codice (da1 a 6) che identifica i 5 continenti. L' europa e' il 2
 
βˆ’
 
 
βˆ’
=== Raccolta delle info ===
 
βˆ’
 
 
βˆ’
==== info di un DVD ====
 
βˆ’
 
 
βˆ’
Il programma per eccellenza per raccogliere info da un dvd e' lsdvd. Nella sua massima espressione
 
βˆ’
$ lsdvd -x
 
βˆ’
 
 
βˆ’
libdvdread: Using libdvdcss version 1.2.5 for DVD access
 
βˆ’
 
 
βˆ’
Disc Title: DVDVOLUME
 
βˆ’
Title: 01, Length: 01:52:36 Chapters: 31, Cells: 32, Audio streams: 03, Subpictures: 01
 
βˆ’
 
 
βˆ’
Title: 02, Length: 00:00:06 Chapters: 01, Cells: 01, Audio streams: 03, Subpictures: 01
 
βˆ’
 
 
βˆ’
Title: 03, Length: 00:02:45 Chapters: 06, Cells: 01, Audio streams: 00, Subpictures: 00
 
βˆ’
 
 
βˆ’
Title: 04, Length: 00:00:00 Chapters: 01, Cells: 01, Audio streams: 03, Subpictures: 01
 
βˆ’
 
 
βˆ’
Title: 05, Length: 00:01:38 Chapters: 01, Cells: 01, Audio streams: 03, Subpictures: 00
 
βˆ’
 
 
βˆ’
Title: 06, Length: 00:02:45 Chapters: 06, Cells: 01, Audio streams: 03, Subpictures: 00
 
βˆ’
 
 
βˆ’
Title: 07, Length: 00:00:18 Chapters: 02, Cells: 02, Audio streams: 00, Subpictures: 00
 
βˆ’
 
 
βˆ’
Longest track: 1
 
βˆ’
 
 
βˆ’
il Title 1 e' il piu' lungo, quindi si presuppone sia il film vero e proprio.
 
βˆ’
Con Mplayer si ottengono le info relative allo scale, alla durata e al tipo di file.
 
βˆ’
mplayer dvd://1 -v -vo null -ao null
 
βˆ’
 
 
βˆ’
Aumentando l'opzione -v si inrementa il livello di verbosita' (-v -v -v)
 
βˆ’
Ulteriori info si trovano con tcprobe
 
βˆ’
$ tcprobe -i /dev/dvd -T 1
 
βˆ’
 
 
βˆ’
Con l'opzione -d Numero 0-1-2 si incrementano le info.
 
βˆ’
 
 
βˆ’
Con questo comando si ha in risposta il bitrate giusto da impostare per un' eventuale codifica in mpeg4 e audio mp3 abr a 128 kbps
 
βˆ’
 
 
βˆ’
==== info di un file avi ====
 
βˆ’
 
 
βˆ’
Si puo' usare mplayer (come sopra del resto!)
 
βˆ’
$ mplayer film.avi -v
 
βˆ’
 
 
βˆ’
o tcprobe
 
βˆ’
$ tcprobe -i film.avi (mpg)
 
βˆ’
 
 
βˆ’
==== Durata del film - qualita' dell' mp3 ====
 
βˆ’
 
 
βˆ’
Nel caso dell'output riportato il film dura 1 ora 52 minuti e 36 secondi ovvero in sec.
 
βˆ’
(112*60)+36 = 6756
 
βˆ’
 
 
βˆ’
La creazione di un buon MP3 e' del bitrate di 128 Kbit ma si puo' ricorrere a riduzioni piu' drastiche tipo di 64 (la meta' dello spazio accupato da un normale mp3)
 
βˆ’
 
 
βˆ’
Mb di spazio occupato di un mp3 128 Kbit durata 6756 secondi
 
βˆ’
 
 
βˆ’
[(128*6756)/8]/1000 = 108,096
 
βˆ’
 
 
βˆ’
un mp3 di durata 6756 occupa 108 Mb a "bitrate Fisso"
 
βˆ’
 
 
βˆ’
N.B. ci rimangono solamente 593 Mb di un cd da 700 Mb per metterci il video.
 
βˆ’
 
 
βˆ’
==== Calcolo del bitrate video ====
 
βˆ’
 
 
βˆ’
Si calcola in base allo spazio a disposizione.
 
βˆ’
 
 
βˆ’
Nel nostro caso
 
βˆ’
 
 
βˆ’
592 Mb (ovvero)
 
βˆ’
 
 
βˆ’
592*1000*8=4,736,000 Kbit disponibili
 
βˆ’
 
 
βˆ’
e un secondo del film puo' contenere
 
βˆ’
 
 
βˆ’
4,736,000/6756 = 701,00651 Kbit
 
βˆ’
 
 
βˆ’
Cmq la soluzione piu' veloce si ottiene lanciando tcprobe con dvd inserito. Il calcolo del bitrate video lo fa da solo impostando di default il codec audio mp3 a 128 kbps
 
βˆ’
$ tcprobe -i /dev/dvd
 
βˆ’
<nowiki>
 
βˆ’
import frame size: -g 720x576 [720x576]
 
βˆ’
    aspect ratio: 4:3 (*)
 
βˆ’
      frame rate: -f 25.000 [25.000] frc=3
 
βˆ’
      audio track: -a 0 [0] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000]
 
βˆ’
      audio track: -a 1 [0] -e 48000,16,2 [48000,16,2] -n 0x2000 [0x2000]
 
βˆ’
 
 
βˆ’
[tcprobe] V: 67500 frames, 2700 sec @ 25.000 fps
 
βˆ’
 
 
βˆ’
[tcprobe] A: 42.19 MB @ 128 kbps
 
βˆ’
 
 
βˆ’
[tcprobe] CD:  650 MB | V:  607.8 MB @ 1888.4 kbps
 
βˆ’
 
 
βˆ’
[tcprobe] CD:  700 MB | V:  657.8 MB @ 2043.8 kbps
 
βˆ’
 
 
βˆ’
[tcprobe] CD: 1300 MB | V: 1257.8 MB @ 3907.9 kbps
 
βˆ’
 
 
βˆ’
[tcprobe] CD: 1400 MB | V: 1357.8 MB @ 4218.6 kbps
 
βˆ’
</nowiki>
 
βˆ’
 
 
βˆ’
==== Ritaglio alias Crop ====
 
βˆ’
 
 
βˆ’
con mplayer si puo' calcolare il ritaglio
 
βˆ’
$ mplayer dvd://1 -vop cropdetect -vo null -ao null
 
βˆ’
 
 
βˆ’
aggiungerei anche un capitolo in modo che sia parte interna del film
 
βˆ’
$ mplayer dvd://1 -chapter 3 -vop cropdetect -vo null -ao null
 
βˆ’
 
 
βˆ’
[-'bla'<bla>'bla']
 
βˆ’
 
 
βˆ’
crop area: X: 4..719  Y: 0..575  (-vf crop=716:576:4:0)28%  1,2% 0 0 41%
 
βˆ’
 
 
βˆ’
crop area: X: 4..719  Y: 0..575  (-vf crop=716:576:4:0)28%  1,2% 0 0 43%
 
βˆ’
 
 
βˆ’
ci interessa solo..........................^^^^^^^^^^^
 
βˆ’
 
 
βˆ’
facciamo una prova con un rettangolo bianco
 
βˆ’
$ mplayer dvd://1 -vop rectangle=716:576:4:0
 
βˆ’
 
 
βˆ’
oppure direttamente ritagliato
 
βˆ’
$ mplayer dvd://1 -vf crop=716:576:4:0
 
βˆ’
 
 
βˆ’
Prima ho usato mplayer con l'opzione -vop e ora -vf. Il manuale dice che -vop e' obsoleto e con -vf video filters si ottengono i soliti risultati
 
βˆ’
 
 
βˆ’
==== Funzionamento del crop - video ====
 
βˆ’
 
 
βˆ’
supponiamo la schermo 720 x 576
 
βˆ’
 
 
βˆ’
+-----------------------W-----------------------+
 
βˆ’
|                                              |
 
βˆ’
|                                              |
 
βˆ’
|                                              |
 
βˆ’
Z                                              X
 
βˆ’
|                                              |
 
βˆ’
|                                              |
 
βˆ’
|                                              |
 
βˆ’
+-----------------------Y-----------------------+
 
βˆ’
 
 
βˆ’
-vf crop=X:Y:Z:W
 
βˆ’
 
 
βˆ’
Attenzione che "X" e "Y" dipendono da "W" e "Z"
 
βˆ’
supponiamo Z = 20 ; X =< [720-20]
 
βˆ’
poiche' il crop taglierebbe una parte dello schermo inesistente
 
βˆ’
 
 
βˆ’
==== interlaced ====
 
βˆ’
 
 
βˆ’
I video creati per essere visti alla TV sono interlacciati, cioe' creati da mezzi frame a righe dispari e pari, quindi, durante la visione su un pc o durante una codifica e' opportuno deinterlacciarli con un video filtro.
 
βˆ’
$ mplayer videointerlac.vob -vf pp=li
 
βˆ’
 
 
βˆ’
tra le opzioni di pp : lb-lineare blend li-lineare interpolato ci-cubico interpolato
 
βˆ’
 
 
βˆ’
=== Trasformazioni video ===
 
βˆ’
 
 
βˆ’
==== Rippare DVD. ====
 
βˆ’
 
 
βˆ’
L'operazione detta rippaggio consiste nel copiare il contenuto di un dvd-video sull'HD.
 
βˆ’
 
 
βˆ’
Per ripparlo si usa mencoder, vobcopy o transcode.
 
βˆ’
$ mencoder dvd://n -dvdangle n -chapter n -ovc copy -oac copy -o film.avi
 
βˆ’
 
 
βˆ’
Se si vuol rippare il film intero toglie l'opzione -chapter. Sid e' l'indice dei sottotitoli. Attenzione a dove viene lanciato che non ci siano nei paraggi file tipo frameno.avi :)
 
βˆ’
oppure
 
βˆ’
$ vobcopy -l
 
βˆ’
 
 
βˆ’
Per mettere i sottotitoli in un file separato
 
βˆ’
$ mencoder dvd://n -dvdangle n -chapter n -vobsubout film -vobsuboutindex
 
βˆ’
0 -sid 0 -ovc copy -oac copy -o film.avi
 
βˆ’
 
 
βˆ’
creando cosi due file film.idx e film.sub (conviene chiamarli come il file video, in modo che mplayer li carichi semplicemente con la 'v'). Con -sid si sceglie la lingua dei sottotitoli. Con vobsuboutindex si da un indice al file sottotitoli creato. All'interno dello stesso file si possono aggiungere piu' lingue, basta ripetere il processo e cambiare i numeri di vobsuboutindex e sid.
 
βˆ’
 
 
βˆ’
==== Encoding DVD ====
 
βˆ’
 
 
βˆ’
L'operazione di encoding consiste nel trasformare il dvd rippato, il dvd dal suo device o un qualsiasi file video in un altro formato video tramite l'uso di un codec. (come divx4 o lavc)
 
βˆ’
 
 
βˆ’
1Β° passaggio
 
βˆ’
 
 
βˆ’
Non e' proprio il primo passaggio del codificatore... con questo passaggio si crea un file frameno.avi contenente solo l'audio e alla fine dell'output, delle informazioni relative al bitrate video da usare
 
βˆ’
# mencoder film.avi -oac mp3lame -lameopts abr:br=128 -aid 130
 
βˆ’
-af volume=2:sc -ovc frameno -o frameno.avi
 
βˆ’
 
 
βˆ’
da un risultato di calcolo tipo questo
 
βˆ’
 
 
βˆ’
[...]
 
βˆ’
 
 
βˆ’
Pos:2613,6s  65344f (100%) 135fps Trem:  0min  56mb  A-V:0,038 [0:175]
 
βˆ’
 
 
βˆ’
Writing AVI index...
 
βˆ’
 
 
βˆ’
Fixing AVI header...
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 650MB CD: 1897
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 700MB CD: 2058
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 800MB CD: 2379
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 2 x 650MB CD: 3983
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 2 x 700MB CD: 4304
 
βˆ’
 
 
βˆ’
Recommended video bitrate for 2 x 800MB CD: 4946
 
βˆ’
 
 
βˆ’
Video stream:    0,800 kbit/s  (100 bps)  size: 261356 bytes  2613,560 secs  65344 frames
 
βˆ’
 
 
βˆ’
Audio stream:  174,997 kbit/s  (21874 bps)  size: 57182184 bytes  2614,080 secs
 
βˆ’
 
 
βˆ’
2Β° passaggio
 
βˆ’
 
 
βˆ’
Nel secondo passaggio si riprende dalla dir corrente il frameno.avi con -oac copy, e diamo il pass=1 al codec divx (nelle opzini), creera' un file di log che verra' in seguito letto dall'opzione pass=2. Il risultato finale viene cancellato, ci interessa solo il file di log
 
βˆ’
$ mencoder film.avi -oac copy -ovc divx4 -divx4opts :br=2066:pass=1 -vf 
 
βˆ’
pp=de,crop=716:576:4:0,scale=480:-2 -aid 130 -o "/dev/null"
 
βˆ’
 
 
βˆ’
oppure con il mitico lavc
 
βˆ’
$ mencoder filmavi -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2066:
 
βˆ’
vpass=1 -vf pp=li,crop=716:576:4:0,scale=480:-2 -aid 130 -o "/dev/null"
 
βˆ’
 
 
βˆ’
3Β° passaggio
 
βˆ’
 
 
βˆ’
ultimo passaggio, quindi creazione del file avi
 
βˆ’
$ mencoder film.avi -oac copy -ovc divx4 -divx4opts :br=2066:pass=2 -vf
 
βˆ’
pp=de,crop=716:576:4:0,scale=480:-2  -aid 130  -o "minonnafaleprove.avi"
 
βˆ’
 
 
βˆ’
ricodarsi di cancellare i residui
 
βˆ’
$ rm frameno.avi
 
βˆ’
 
 
βˆ’
$ rm divx2pass.log
 
βˆ’
 
 
βˆ’
con lavc
 
βˆ’
$ mencoder film.avi -oac copy -ovc lavc -lavcopts
 
βˆ’
vcodec=mpeg4:vbitrate=2066:vpass=2 -vf pp=li,crop=716:576:4:0,scale=480:-2
 
βˆ’
-aid 130 -o film.avi
 
βˆ’
 
 
βˆ’
Rippare e encodare con un solo passaggio
 
βˆ’
 
 
βˆ’
Se le dimenzioni finali del file video possono essere superiori al Gb, e' conveniente rippare con un solo passaggio, risparmiando un sacco di tempo :)
 
βˆ’
$ mencoder dvd://1 -aid 129 -sid 1 -vobsubout film -oac mp3lame -lameopts
 
βˆ’
abr:br=128 -af  volume=2:sc -ovc divx4 -divx4opts :br=2066 -vf
 
βˆ’
pp=ci,crop=716:576:4:0,scale=600:-2 -o film.avi
 
βˆ’
 
 
βˆ’
In dettaglio
 
βˆ’
 
 
βˆ’
mencoder dvd://1 # dice a mencoder di leggere il dvd al title 1
 
βˆ’
 
 
βˆ’
-aid 129 # seleziona la lingua - un alternativa e' -alang it per selezionare lingua italiana
 
βˆ’
 
 
βˆ’
-sid 1 -vobsubout film # seleziona la traccia 1 dei sottotoli che in questo es. e' la traccia in italiano. Vobsubout specifica il file di destinazione. NB se non viene specificato vobsubout, i sottotitoli vengono "cuciti" sul video stesso e non e' possibile toglierli
 
βˆ’
 
 
βˆ’
-oac mp3lame -lameopts abr:br=128 # oac usa mp3lame come codec audio, average bitrate a 128 kbps
 
βˆ’
 
 
βˆ’
-af volume=2:sc # audio filters, aumento il volume di 2
 
βˆ’
 
 
βˆ’
-ovc divx4 -divx4opts :br=2066 # uso il codec divx4 con bitrate 2066
 
βˆ’
 
 
βˆ’
-vf pp=ci,crop=716:576:4:0,scale=600:-2 # video filters, pp=ci deinterlaccio il film con cubic-intepolar xche' e MOLTO interlacciato, ritaglio il video con
 
βˆ’
crop, lo riscalo da 716 x 576 a 600 x "il calcolo lo fa lui col l'opzione -2"
 
βˆ’
 
 
βˆ’
-o film.avi # Nome del file finale
 
βˆ’
 
 
βˆ’
nel caso di lavc basta sostituire la riga del codec video con:
 
βˆ’
 
 
βˆ’
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2066
 
βˆ’
 
 
βˆ’
==== Creare una piccola anteprima ====
 
βˆ’
 
 
βˆ’
Per controllare i settaggi senza dover aspettare delle ore si puo' creare una piccola anteprima tipo questa:
 
βˆ’
$ mencoder dvd://1 -aid 129 -sid 1 -ss 00:10:00 -endpos 00:01:00 -vobsubout
 
βˆ’
film -oac mp3lame -lameopts abr:br=128 -af  volume=2:sc -ovc divx4
 
βˆ’
-divx4opts :br=2066 -vf pp=ci,crop=716:576:4:0,scale=600:-2 -o film.avi
 
βˆ’
 
 
βˆ’
l'opzione -ss 00:10 dice di iniziare la lettura dopo 10 minuti, -endpos dice di fermarsi dopo 1 minuto di lettura il risultato e' una anteprima di un minuto 10 minuti dopo l'inizio del film.
 
βˆ’
 
 
βˆ’
=== Manipolare gli avi ===
 
βˆ’
 
 
βˆ’
==== tagliare in due parti un file avi ====
 
βˆ’
 
 
βˆ’
Nel pacchetto transcode sono presenti numerosi eseguibili per la modifica degli avi. Cio' non toglie che si possa usare mencoder. Cmq per spezzare un file avi si usa avisplit:
 
βˆ’
$ avisplit -s 700 -i film.avi
 
βˆ’
 
 
βˆ’
spezza l'avi in file da 700 Mb
 
βˆ’
$ avisplit -i film.avi -c -o out.avi -t 00:10:00-00:11:00,00:13:00-00:14:00
 
βˆ’
 
 
βˆ’
spezza e unisce l'avi dal decimo all'undicesimo minuto e lo incolla (-c) con il pezzo dal tredicesimo al quattordicesimo
 
βˆ’
 
 
βˆ’
==== incollare due avi ====
 
βˆ’
 
 
βˆ’
avimerge e' l'ideale
 
βˆ’
$ avimerge -o filmone.avi -i film1.avi film2.avi film3.avi
 
βˆ’
 
 
βˆ’
oppure incollare una traccia audio
 
βˆ’
$ avimerge -o filmconaudio.avi -i film.avi -p audio2.avi -a 1
 
βˆ’
 
 
βˆ’
==== creare audio2.mpa da un mp3 e' un buona idea ... ====
 
βˆ’
$ transcode -i song.mp3 -x null,mp3 -g 0x0 -y raw -a 1 -o audio2.avi -u 50
 
βˆ’
 
 
βˆ’
==== risincronizzare audio e video ====
 
βˆ’
 
 
βˆ’
usando avisync
 
βˆ’
$ avisync -i fim.avi -o out.avi -n -10
 
βˆ’
 
 
βˆ’
ritarda l'audio di 10 frames
 
βˆ’
correggere un indice danneggiato
 
βˆ’
 
 
βˆ’
I risultati migliori li ho ottenuti con mencoder
 
βˆ’
$ mencoder film.avi -ovc copy -aoc copy --forceidx -o indicecorretto.avi
 
βˆ’
 
 
βˆ’
==== Scrivere su un file di testo l'header di un avi ====
 
βˆ’
 
 
βˆ’
Utile per il debug
 
βˆ’
aviindex -i film.avi -o film.index
 
βˆ’
 
 
βˆ’
=== DVD video ===
 
βˆ’
 
 
βˆ’
==== Copiare un dvd5 ====
 
βˆ’
 
 
βˆ’
Nel caso si voglia duplicare un dvd5 con una copia 1:1, si puo' benissimo usare un programma di masterizzazione come k3b e fare un copia incolla da dvd sorgente a dvd destinazione, oppure al volo
 
βˆ’
$ dd if=/dev/cdrom of=/dev/dvdrw
 
βˆ’
 
 
βˆ’
o
 
βˆ’
$ growisofs -Z /dev/dvdrw=/dev/dvdrom
 
βˆ’
 
 
βˆ’
e chi piu' ne ha piu' ne metta.
 
βˆ’
 
 
βˆ’
==== Copiare un DVD9 ====
 
βˆ’
 
 
βˆ’
Per dvd5 si intende un dvd da 4,7 Gb ovvero 120 min di film. Per fare una copia 1:1 occorre avere il dvd sorgente di 4,7 gb , cosa non da poco visto che i normali dvd a noleggio sono tutti di durata superiore (dvd9).
 
βˆ’
 
 
βˆ’
Occorre cosi' togliere il superfluo, come i contenuti speciali, gli audio extra ecc.. e rientrare nei 120 min. Se il film e' di durata superiore, si puo' ricorrere a 2 stratagemmi. 1 acquistiamo un dvd9 :) e facciamo la copia, 2 requantiziamo il film (non sempre il risultato funziona su tutti i lettori dvd da tavolo)
 
βˆ’
 
 
βˆ’
Il DVD sorgente va comunque "smontato", cosa non difficile ma che richiede molto tempo. Per semplificare il tutto esiste uno script in perl in grado di facilitare questo compito (NB il piu' delle volte funziona!). Da http://james.nontrivial.org/projdvd.htm e' possibile scaricare dvd2iso.pl, l'utilizzo e' pittosto semplice. Editare lo script e inserire la directory di lavoro che abbia almeno 20 Gb di spazio libero, inserire il dvd e lanciare
 
βˆ’
 
 
βˆ’
$ ./dvd2iso.pl -c -D -a 2 -k -v 5000
 
βˆ’
 
 
βˆ’
A questo punto dentro la directory di lavoro abbiamo una dir chiamata out contenente i vob, pronti da essere trattati con dvdauthor e masterizzati, nel caso in cui lo spazio sia ridimenzionato rispetto all'originale.
 
βˆ’
 
 
βˆ’
Nel caso il file .vob sia comunque piu' grande del necessario, si puo' requantizzare a mano anziche' rilanciare lo script con un bitrate piu' basso, basta estrarre il flusso video
 
βˆ’
 
 
βˆ’
$ tcextract -i out/nomefile.vob -x mpeg2 -a 1
 
βˆ’
ottenendo cosi' 2 file .m2v mpa. E' il momento di requantizzare
 
βˆ’
 
 
βˆ’
Nel pacchetto transcode si trova l'eseguibile tcrequant. Per calcolare la requantizzazione risolvere la seguente formula
 
βˆ’
fattore di requant = (grandezza del filevideo .m2v / (grandezza del supporto - grandezza del file audio .mpa)) * 1.04
 
βˆ’
con il numeretto ottenuto si lancia tcrequant
 
βˆ’
 
 
βˆ’
$ tcrequant -i file.m2v -o film.m2v -f fattore di requant
 
βˆ’
a questo punto ricreiamo il file .vob, vedere la sezione multiplexaggio
 
βˆ’
 
 
βˆ’
==== da Divx a DVD5 ====
 
βˆ’
 
 
βˆ’
Prendere le info
 
βˆ’
 
 
βˆ’
$ tcprobe -i film.avi
 
βˆ’
alla riga:
 
βˆ’
...
 
βˆ’
[avilib] A: 44100 Hz, format=0x55, bits=0, channels=1, bitrate=128 kbps
 
βˆ’
...
 
βˆ’
Attenzione al bitrate audio, non puo' essere superiore dell'originale (128). X la specifica dvd deve andare da 32 kbps a 192 kbps per audio mono, 64 kbps a 384 kbps per audio stereo
 
βˆ’
 
 
βˆ’
# transcodifica
 
βˆ’
 
 
βˆ’
$ transcode -i film.avi -V -y mpeg -F d -E 44100 -b 128 -o primodvd
 
βˆ’
 
 
βˆ’
creando cosi' 2 file primodvd.m2v primodvd.mpa. Ultimamente frugando nel man di transcode ho scoperto questo:
 
βˆ’
 
 
βˆ’
$ transcode -i film.avi -V -y mpeg -F d -E 44100 -b 128 --export_prof dvd-pal -o primodvd
 
βˆ’
 
 
βˆ’
L'opzione export prof si preoccupa di rendere l'output totalmente compatibile con lo standard DVD
 
βˆ’
 
 
βˆ’
# multiplexaggio
 
βˆ’
 
 
βˆ’
unione di primodvd.pmpa primodvd.m2v
 
βˆ’
 
 
βˆ’
$ tcmplex -o film.vob -i primodvd.m2v -p primodvd.mpa -m d
 
βˆ’
 
 
βˆ’
supponiamo di avere un altro file audio in un altra lingua (primodvdeng.mpa), si puo' aggiungere con:
 
βˆ’
 
 
βˆ’
$ tcmplex -o film.vob -i primodvd.m2v -p primodvd.mpa -s primodvdeng.mpa -m d
 
βˆ’
 
 
βˆ’
# trasformazione in formato dvd
 
βˆ’
 
 
βˆ’
con dvdauthor da riga, al volo. Creare due dir A e B, dentro A metterci il film.vob o i vari film.vob. Dopodiche'
 
βˆ’
 
 
βˆ’
$ dvdauthor -o B A/*
 
βˆ’
 
 
βˆ’
in questo modo si mettono tutti i vob di A nella dir di B con i relativi .ifo .bup.
 
βˆ’
 
 
βˆ’
$ dvdauthor -T -o B
 
βˆ’
 
 
βˆ’
Crea la tabella dei contenuti del DVD. Si puo' procedere alla masterizzazione.
 
βˆ’
 
 
βˆ’
==== Creazione di un menu ====
 
βˆ’
 
 
βˆ’
# Scegliere un immagine
 
βˆ’
 
 
βˆ’
L'immagine di sfondo deve essere di formato 4:3. Con gimp 2, dal menu nuovo si puo impostare nuova immagine PAL, incollarci dentro qualsiasi tipo di disegno e salvare con il formato png o jpeg. Alla solita immagine aggiungere un layer trasparente e disegnare i pulsanti di attivazione. Successivamente verra' salvata in modalita' 4 colori (salvarla 2 volte in 2 colori diversi). Ottenendo cosi 3 immagini : menu.png select.png high.png.
 
βˆ’
 
 
βˆ’
# L'audio
 
βˆ’
 
 
βˆ’
Si puo' creare una traccia audio con una musichetta oppure una traccia audio vuota, poiche' e' indispensabile avere una traccia audio.
 
βˆ’
$ mplayer -ao pcm /arc/mp3/musichetta.mp3
 
βˆ’
 
 
βˆ’
trasformo un mp3 in un wav (audiodump.wav)
 
βˆ’
$ mp2enc -r 48000 -o menu_audio.mpa < audiodump.wav
 
βˆ’
 
 
βˆ’
trasformo un wav in un mp2 ottenendo il menu audio. Oppure una traccia audio vuota con un semplice:
 
βˆ’
$ dd if=/dev/zero bs=4 count=1920 | toolame -b 128 -s 48 /dev/stdin menu_audio.mpa
 
βˆ’
 
 
βˆ’
# Un filmato con menu.png
 
βˆ’
 
 
βˆ’
Con il file menu.png e' necessario creare un filmato ovvero uno stream MPEG2 formato PAL 720x576
 
βˆ’
$ pngtopnm menu.png | ppmtoy4m -n 50 -r -F 25:1 -A 128:117 -I p |mpeg2enc -n p
 
βˆ’
-f 8 -o menu_video.m2v
 
βˆ’
 
 
βˆ’
Nel caso l'immagine sia in formato jpeg
 
βˆ’
$ jpeg2yuv -n 50 -I p -f 25 -j menu.jpeg | mpeg2enc -n p -f 8 -o menu_video.m2v
 
βˆ’
 
 
βˆ’
# Unire il filmato con l'audio
 
βˆ’
 
 
βˆ’
Si usa mplex come sempre!
 
βˆ’
$ mplex -f 8 -o menu.mpg menu_video.m2v menu_audio.mpa
 
βˆ’
 
 
βˆ’
# Creazione dei bottoni animati
 
βˆ’
 
 
βˆ’
Creare il file xml per spumux (e' nel pacchetto dvdauthor) vedere l'esempio spumux.xml
 
βˆ’
<subpictures>
 
βˆ’
<stream>
 
βˆ’
<spu start="00:00:00.0" end="00:00:00.0" highlight="high.png" select="select.png"
 
βˆ’
force="yes" autoorder="columns" autooutline="infer"> </spu>
 
βˆ’
</stream>
 
βˆ’
</subpictures>
 
βˆ’
 
 
βˆ’
 
 
βˆ’
 
 
βˆ’
All' interno del tag spu sono presenti le immagini contenenti i bottoni in png indicizzato a 4 colori, highligh sta ad indicare l'attivazione al passaggio del mouse e select il colore al momento della pressione. Start ed End sono uguali, sta ad indicare un loop del menu video. Autoorder, dice a spumux che i pulsanti sono ordinati per colonne.
 
βˆ’
$ spumux spumux.xml < menu.mpg >menu_finito.mpg
 
βˆ’
 
 
βˆ’
Con questo il menu con i pulsanti e' fatto.
 
βˆ’
 
 
βˆ’
==== Inserire i sottotitoli. ====
 
βˆ’
 
βˆ’
Il problema piu' grande e' estrarre i sottotitoli dal dvd in formato .srt. Il programma subrip, nato x win, e' gpl e gira bene in emulazione con wine.
 
βˆ’
 
 
βˆ’
L'utilizzo e' semplicissimo, dopodiche creare un nuovo file xml che servira' per inserire i sottotitoli.
 
βˆ’
<subpictures>
 
βˆ’
<stream>
 
βˆ’
<textsub filename="film.sub" characterset="ISO8859-15" fontsize="28.0"
 
βˆ’
font="arial.ttf" horizontal-alignment="left" vertical- alignment="bottom"
 
βˆ’
left-margin="30" right-margin="60" top-margin="20" bottom-margin="30"
 
βˆ’
subtitle-fps="25" movie-fps="25" movie-width="720" movie-height="574" />
 
βˆ’
</stream>
 
βˆ’
</subpictures>
 
βˆ’
 
 
βˆ’
Inserire il font arial.ttf nella directory .spumux della propria home. Se non esiste, crearla.
 
βˆ’
e per unire al video
 
βˆ’
$ spumux sub.xml < film.mpg > film_sottotitolato.mpg
 
βˆ’
 
 
βˆ’
==== Creazione DVD finale con dvdauthor ====
 
βˆ’
 
 
βˆ’
Ancora un file xml contenente i tag x le specifiche, stabilire capitoli, pul santi, e menu.
 
βˆ’
<dvdauthor dest="dvd/" >
 
βˆ’
<vmgm>
 
βˆ’
<menus lang="it" >
 
βˆ’
<video format="pal" aspect="4:3" />
 
βˆ’
<subpicture lang="it" />
 
βˆ’
<pgc>
 
βˆ’
<vob file="menu.mpg" pause="inf"/>
 
βˆ’
<button>jump title 1;</button>
 
βˆ’
<button>jump title 2;</button>
 
βˆ’
</pgc>
 
βˆ’
</menus>
 
βˆ’
</vmgm>
 
βˆ’
<titleset>
 
βˆ’
<titles>
 
βˆ’
<pgc>
 
βˆ’
<vob file="film1.mpg"/>
 
βˆ’
<post>call menu;</post>
 
βˆ’
</pgc>
 
βˆ’
<pgc>
 
βˆ’
<vob file="film2.mpg"/>
 
βˆ’
<post>call menu;</post>
 
βˆ’
</pgc>
 
βˆ’
</titles>
 
βˆ’
</titleset>
 
βˆ’
</dvdauthor>
 
βˆ’
 
 
βˆ’
 
 
βˆ’
Per creare piu' capitoli aggiungere alla voce vob del film l'opzione chapter es:
 
βˆ’
<vob file="film.mpg"chapters="0:10:00.000,0:20:00.000 />
 
βˆ’
 
 
βˆ’
Mettere menu, file xml e file video tutto nella stessa directory
 
βˆ’
$ dvdauthor -x tuttoillavoro/film.xml
 
βˆ’
 
 
βˆ’
==== Masterizzazione ====
 
βˆ’
Si puo' creare un' immagine con mkisofs, oppure masterizzare il contenuto della dir di lavoro con growisofs
 
βˆ’
 
 
βˆ’
$ mkisofs -dvd-video -v -o dvd.iso cartella con dvd
 
βˆ’
 
 
βˆ’
$ growisofs -Z /dev/hdc -dvd-video /home/utente/tuttoillavoro/DVD
 
βˆ’
 
 
βˆ’
=== Creare VCD ===
 
βˆ’
==== Che cosa? ====
 
βˆ’
avendo un avi per le mani si puo' trasformare in un vcd (attenzione alla durata)
 
βˆ’
 
 
βˆ’
==== Come? ====
 
βˆ’
 
 
βˆ’
Si puo' redigere l'avi al codec yuv4mpeg della famiglia di mjpeg tool. creando una named pipe dal nome dell output di mplayer si lancia il programma
 
βˆ’
Oppure la stessa cosa con transcode. Un esempio:
 
βˆ’
 
 
βˆ’
$ mkdir filmout
 
βˆ’
 
 
βˆ’
$ mkdir filmout.mpa
 
βˆ’
 
 
βˆ’
si creano 2 named pipe
 
βˆ’
 
 
βˆ’
$ transcode -i film.avi -V -y yuv4mpeg,mpeg -b 224 -Z 352x288 -o filmout -k -C 2
 
βˆ’
 
 
βˆ’
con questa roba transcode prende l'avi e spedisce il flusso video alla named pipe filmout e il flusso audio alla named pipe filmout.mpa. Su una consolle diversa digitiamo:
 
βˆ’
 
 
βˆ’
$ cat filmout.mpa > film.mpa
 
βˆ’
 
 
βˆ’
cosi copiamo il contenuto della pipe nel file audio .mpa
 
βˆ’
 
 
βˆ’
$ cat filmout | mpeg2enc -f 1 -n p -o film.m1v
 
βˆ’
 
 
βˆ’
==== mplex ====
 
βˆ’
 
 
βˆ’
Con il programma mplex si incolla audio e video.
 
βˆ’
 
 
βˆ’
$ mplex -f 1 -o film.mpeg film.m1v film.mpa
 
βˆ’
 
 
βˆ’
==== vcdimager ====
 
βˆ’
 
 
βˆ’
e per renderlo vcd a tutti gli effetti e prepararlo alla masterizzazione si usa vcdimager
 
βˆ’
 
 
βˆ’
$ vcdimager -l "boia de!" -p film.mpeg
 
βˆ’
 
 
βˆ’
ottenendo = videocd.bin (immagine binaria) = videocd.cue (indice delle tracce)
 
βˆ’
 
 
βˆ’
Nella dir /usr/share/doc/mplayer/examples/ c'e' un file di nome mencvcd.gz. E' uno script che fa la stessa roba utilizzando mencoder. E' obbligatorio provarlo!
 
βˆ’
 
 
βˆ’
==== Masterizzalo! ====
 
βˆ’
 
βˆ’
$ cdrdao write --speed 4 --device 0,0,0 videocd.cue
 

Versione delle 13:54, 27 mar 2011

fz1HCH <a href="http://fxtlpdutzywb.com/">fxtlpdutzywb</a>, [url=http://nfskjslvprpd.com/]nfskjslvprpd[/url], [link=http://ttvydjivopeb.com/]ttvydjivopeb[/link], http://oqfwqtxyeyhe.com/