Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOW-TO] Comprimere DVDs usando mencoder/mplayer
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Tue Feb 28, 2006 6:40 pm    Post subject: [HOW-TO] Comprimere DVDs usando mencoder/mplayer Reply with quote

### AGGIORNAMENTI ###

Aggiunta generazione file per sottotitoli - Mon Apr 16 22:27:49 CEST 2007

### PREMESSE ###
  • Questo e' un HOWTO relativo alla compressione del materiale audio-video presente nei DVDs.
    (Siano essi DVDs PAL o NTSC [720x480 a 30 fotogrammi al secondo])

  • Il metodo fornito non deve essere utilizzato in alcun modo per comprimere DVDs protetti
    da leggi che ne vietino la duplicazione e/o qualsiasi forma di compressione non preventivamente
    autorizzata dai dententori del rispettivo copyright.


  • Il metodo fornito non e' breve ma la qualita' che si puo' raggiungere e' molto elevata.
    (Vero se e' pure elevata la qualita' del matriale audio-video presente sugli stessi DVDs)

  • Il formato audio-video del prodotto finale e' l'AVI e la compatibilita' con Windows Media Player e' garantita.
    (Per la compatibilita' puo risultare necessario installare sotto Windows il Combined
    Community Codec Pack
    )

### INTRODUZIONE ###

Iniziamo con l'affarmare che il materiale audio-video presente nei nostri DVDs puo' essere di svariata natura e qualita'.

Per capire questo primo punto fondamentale bisogna avere ben chiaro in mente quanto segue:
  • Esiste la macchina da presa del regista (operazione di filmaggio).

    Qui comunemente troviamo filmati registrati a:
    • 24 fotogrammi al secondo (cineprese progressive),
    • 50 campi al secondo (cineprese PAL),
    • 60 campi al secondo (cineprese NTSC).

    Con il termine materiale-sorgente indicheremo sempre la natura dei filmati prima di
    essere trasferiti sui DVDs.

  • Esiste il processo di trasferimento del filmato su DVD.

    Qualsiasi esso sia, sui DVDs vengono sempre e solo memorizzati fotogrammi.

    Esistono due tipi di DVDs in commercio:
    • DVDs PAL: risoluzione 720x576, 25 fogrammi al secondo.
      Ecco la riga di output di mplayer che identifica questo tipo di DVD:

      Code:
      VIDEO:  MPEG2  720x576  (aspect 3)  25.000 fps  8900.0 kbps (1112.5 kbyte/s)

    • DVDs NTSC: risoluzione 720x480, 30 fogrammi al secondo.
      Ecco la riga di output di mplayer che identifica questo tipo di DVD:

      Code:
      VIDEO:  MPEG2  720x480  (aspect 2)  29.970 fps  6800.0 kbps (850.0 kbyte/s)


      Nota: se volete capire perche' la frequenza dei frame e' pari a 29.970 fotogrammi
      al secondo (30000/1001 fps) e non 30, vi basti sapere che cio' dipende dalla
      compatibilita' adottata da parte del materiale-sorgente a colori nei confronti
      delle TV NTSC in bianco e nero.

      Come sempre Google ed il manuale di mplayer ci aiutano:

      Code:
      "Strictly speaking, all those numbers are approximations. Black and white NTSC
      video was exactly 60 fields per second, but 60000/1001 was later chosen to accomodate
      color data while remaining compatible with contemporary black and white televisions.
      Digital NTSC video (such as on a DVD) is also 60000/1001 fields per second."


    Con il termine materiale-sorgente-dvd indicheremo sempre la natura dei filmati
    una volta trasferiti sui DVDs.

    Nota: le precedenti due righe di output di mplayer non identificano il materiale-sorgente-dvd
    ma semplicemente il tipo di DVD.

  • Esiste la macchina da visione dell'utente.

    Qui comunemente troviamo televisori a:
    • 50 campi al secondo (televisori PAL),
    • 60 campi al secondo (televisori NTSC),
    • "praticamente qualsiasi numero di fotogrammi" al secondo (monitor LCD).

### CAP. 1: Fotogrammi, campi e fenomeno di interlacciamento ###

Ora dobbiamo approfondire un attimo che cosa intendiamo per fotogramma e campo.

Un fotogramma non e' niente meno che una fotografia... esattamente come quella che scattiamo quando
utilizziamo la nostra macchina fotografica (sia essa digitale o meno) ad una festa di compleanno.

Immaginiamo ora di scattare un fotogramma a tre bandierine e poi di tagliarlo in 6 striscioline orizzontali
tutte della stessa grandezza... fatto? Bene!

Immaginiamo anche di numerare queste striscioline da 1 a 6 dall'alto verso il basso... fatto anche uesto?
Benissimo!

Code:
Figura 1

1 ---------****---------
2 ---------****---------
3 ---------****---------
4 --****----------****--  Abbiamo fotografato tre bandierine su questo fotogramma!
5 --****----------****--
6 --****----------****--


Immaginiamo ora di separare lentamente verso sinistra le sole stricioline "dispari" (la 1, la 3 e la 5) mentre
verso destra le sole striscioline pari (la 2, la 4 e la 6).
Code:
Figura 2

1 ---------****---------
                                ---------****--------- 2
3 ---------****---------                                    Ora abbiamo due "mezze immagini" ovvero due campi!
                                --****----------****-- 4  Essi sono stati scattati nello stesso istante di tempo!
5 --****----------****--
                                --****----------****-- 6


Definiamo il "mezzo fotogramma" costituito dalle sole striscioline dispari come campo dispari o campo top.

Definiamo il "mezzo fotogramma" costituito dalle sole striscioline pari come campo pari o campo bottom.

Ora e' evidente che eseguendo l'operazione inversa, ovvero riunendo il campo top al campo bottom, otteniamo
lo stesso fotogramma di partenza.... ci siete ancora? Spero di si perche' adesso arriva il nocciolo della questione!

Torniamo ora alla stessa festa di compleanno (vogliamo fotografare nuovamente le tre bandierine) ma stavolta
con una "diversa" macchina fotografica la quale invece di scattare un fotogramma all'istante t1, abbia bisogno di
scattare prima il campo top al tempo t1 e poi il campo bottom al tempo t2 dove t2 e' successivo a t1 per mezzo
secondo.

Deve essere chiaro che questa "diversa" macchina fotografica, per produrre una "fotografia intera" o fotogramma,
ha bisogno di scattare due "mezze fotografie" ovvero i due campi top e bottom in tempi diversi!

Supponendo che la nostra "diversa" macchina fotografica sia immobile durante l'intero arco di tempo t1-t2 e che il
solo oggetto a muoversi (verso destra) siano le tre bandierine, cio' che otteniamo e':

Code:
Figura 3

1 ---------****---------
                                -----------****------- 2
3 ---------****---------
                                ----****----------**** 4  Ecco le due "mezze fotografie" o campi!
5 --****----------****--
                                ----****----------**** 6

 <campo top preso in t1>       <campo bottom preso in t2>


Code:
Figura 4

1 ---------****---------
2 -----------****-------
3 ---------****---------  Ecco come appaiono ora le tre bandierine dopo aver ricostruito
4 ----****----------****  il fotogramma con questa diversa macchina fotografica!
5 --****----------****--
6 ----****----------****


Il fenomeno evidenziato in Figura 4 e' noto con il nome di interlacciamento e nasce quando due campi top e
bottom relativi ad immagini distinte vengono messi assieme nel formare un fotogramma.

Tale fenomeno e' chiaramente "brutto da vedere" e deve quindi essere corretto durante la fase di compressione
audio-video del materiale-sorgente-dvd.

Ricordiamo che sui DVDs vengono sempre e solo "masterizzati" fotogrammi e non singoli campi. Nel caso dunque
di una cinepresa PAL (50 campi al secondo) l'unione dei primi due campi costituira' il primo frame interlacciato (come
del resto tutti gli altri a seguire!) di un eventuale DVD PAL! Ogni singolo frame masterizzato su DVD (nel solo caso
di materiale-sorgente PAL o NTSC) presentera' dunque il "difetto" evidenziato in Figura 4... notate bene... difetto
molto fastidioso se la visione del DVD la fate sul vostro laptop (schermo LCD!!!)... difetto molto meno fastidioso se
invece il film ve lo guardate sulla vostra TV di casa (in quest'ultimo caso e' poi pure sbagliato chiamarlo difetto perche'
le TV funzionano a mezzi campi e non a fotogrammi!!!).

Si noti che, 50/2 e' proprio uguale a 25 (idem per 60/2 uguale a 30) ovvero il numero di fogrammi al secondo con
il quale un DVD PAL viene letto dal rispettivo lettore DVD... lettore che poi avra' il compito di estrarre nuovamente,
da ogni fotogramma, la coppia di campi top e bottom da dare in pasto al vostro televisore PAL... a 50 campi al secondo!!!

Hey!!! Sia chiaro che non c'e' trucco ne' inganno: dire che vi state guardando un film a 50 "mezze fografie" al secondo
e' del tutto equivalente a dire che ve lo state guardando a 25 "fotografie intere" al secondo... su questo spero siamo
tutti d'accoro vero??!!

Approfondiremo ora un po' meglio quest'ultimo punto molto importante.

### CAP. 2: Come filmo "vorrei" poi rivedere; la tecnica Telecine ###

Ebbene si ragazzi... come filmo vorrei proprio poi rivedere!!!

Come abbiamo accennato nell'introduzione, esistono tre tipi di materiale-sorgente:
  • materiale ripreso a 24 frame al secondo (cineprese progressive),
  • materiale ripreso a 50 campi al secondo (cineprese PAL),
  • materiale ripreso a 60 campi al secondo (cineprese NTSC).

Risulta ora chiaro che le cineprese PAL producono materiale-sorgente esclusivamente per i televisori PAL, come
le cineprese NTSC ne producono esclusivamente per i televisori NTSC. Non fa dunque una grinza filmare a 50 o 60
campi al secondo e poi rivedere il filmato sul proprio schermo della TV alla stessa medesima frequenza!

cinepresa PAL -----> televisore PAL
cinepresa NTSC ---> televisore NTSC

In questi due casi dunque, la visione del filmato non presenta alcuna alterazione!

Nota: Osserviamo che il fatto di dover "accendere" in modo alternato prima tutte le linee pari dello schermo e poi
tutte le linee dispari e poi di nuovo tutte le linee pari etc... 50 o 60 volte al secondo, da parte dei televisori PAL e
NTSC rispettivamente, e' da considerarsi come una loro caratteristica tecnica punto e basta.

Come conseguenza le rispettive cineprese sono nate (molto prima dei PC, DVDs etc...) per produrre
materiale-sorgente utilizzabile direttamente dai rispettivi televisori.

Supponiamo ora di voler vedere un materiale-sorgente progressivo a 24 fotogrammi al secondo su un televisore
PAL; come facciamo?

cinepresa progressiva ---> DVD PAL ---> televisore PAL

Beh... molto semplice, idealmente dobbiamo prendere ogni singolo fotogramma e dividerlo nei due campi top e
bottom. In questo modo otteniamo 48 campi e di conseguenza vedremo il filmato sul televisore PAL leggermente
accelerato! Di quanto? Del 4% perche' in 100 campi proiettati in 2 secondi dal televisore PAL ci stanno i 96 campi
ottenuti dallo splittamento dei 48 fotogrammi (relativi ai 2 secondi del materiale sorgente) + altri 4 campi... ed il
tutto sempre in 2 secondi!

In altre parole i 2 secondi del materiale progressivo sorgente vengono visti in 1.92 secondi sul televisore PAL
.

Ecco quindi un caso in cui "come filmo non rivedo"!

Ma c'e' di peggio perche' essendo il filmato leggermente accelerato, la traccia audio subira' un aumento di tono
pari a mezzo tono!... E se questo va anche bene se vi state guardando Shrek2, cosi tanto bene non va nel caso
di rappresentazioni musicali etc...

Supponiamo ora di voler vedere lo stesso filmato progressivo a 24 fotogrammi al secondo su un televisore
NTSC; come facciamo?

cinepresa progressiva ---> DVD NTSC ---> televisore NTSC

Bene, in questo caso e' possibile rivedere il filmato sul televisore NTSC alla stessa identica velocita' con cui e' stato
ripreso! La particolare tecnica utilizzata per ottenere questo risultato e' nota come
Telecine.

Il concetto di base del "Telecinamento" e' molto semplice: bisogna far fittare o estendere i 24 fotogrammi per secondo
del materiale-sorgente progressivo nei 30 fotogrammi per secondo (60 campi al secondo) caratteristici della TV NTSC.
Il tutto si risolve con un'opportuna aggiunta di 2 fotogrammi interlacciati ogni 3 fotogrammi progressivi.

Come possiamo aver notato, negli ultimi due casi abbiamo usato un DVD!

In particolare modo nel primo caso (DVD PAL) il materiale-sorgente-dvd e' progressivo mentre nel secondo caso
e' telecinato. Cio' significa che l'operazione di telecine non viene eseguita via hardware dal lettore DVD in quanto
e' gia' stata eseguita sul materiale-sorgente progressivo iniziale prima della sua masterizzazione sul DVD NTSC.

### CAP. 3: materiale-sorgente e materiale-sorgente-dvd ###

Come detto nell'introduzione, qulsiasi sia il tipo di materiale-sorgente, sui DVDs (PAL o NTSC) tutto viene masterizzato
in fotogrammi ovvero, in un certo senso, tutto e' progressivo (Sara' il lettore DVD a ricostruire il corretto segnale per il
televisore in termini di campo top e campo bottom).

Se il materiale-sorgente e' progressivo, esso puo essere masterizzato come tale:
  • materiale-sorgente progressivo ---> DVD PAL
    (in fase di compressione ce lo becchiamo un 4% piu' veloce)

  • materiale-sorgente progressivo ---> DVD NTSC
    (in fase di compressione recuperiamo la velocita' originale con l'opzione "-ofps 24000/1001")
oppure essere
masterizato gia' telecinato:

  • materiale-sorgente progressivo ---> telecine ---> DVD NTSC
    (in fase di compressione recuperiamo i fotogrammi originali applicando i filtri di tecine-inverso "pullup,softskip")

Se il materiale-sorgente e' non progressivo esso deve venire interlacciato:
  • materiale-sorgente PAL ---> interlacing ---> DVD PAL
    (in fase di compressione creiamo i campi mancanti applicando il filtro di deinterlacciamento "pp=")

  • materiale-sorgente NTSC ---> interlacing ---> DVD NTSC
    (in fase di compressione creiamo i campi mancanti applicando il filtro di deinterlacciamento "pp=")
ovvero ogni coppia
di campi top e bottom vengono uniti nel creare un fotogramma durante la fase di masterizzazione.


Per chiudere in bellezza questo capitolo si noti che in realta' sui DVDs possiamo trovare:
  • o materiale-sorgente-dvd tutto progressivo (tipico su DVDs PAL e NTSC),
  • o materiale-sorgente-dvd tutto interlacciato (tipico su DVDs PAL e NTSC),
  • o materiale-sorgente-dvd tutto telecinato (solo DVD NTSC),
  • o materiale-sorgente-dvd un po progressivo ed un po telecinato (solo DVD NTSC),
  • o materiale-sorgente-dvd un po progressivo ed un po interlacciato (tipico su DVD PAL e NTSC).
Abbastanza... non vi
pare???

### CAP. 4: Ecco la mia ricetta per la compressione ###

Premesse:
  • lanciate tutti i comandi che seguiranno in una directory vuota e con molto spazio a disposizione,

  • tutto cio' che in un comando e' racchiuso tra parentesi tonde "()" e' da intendersi come "eventualmente presente"
    nel senso che dipendente strettamente dalla natura del materiale-sorgente-dvd.

Questa ricetta e' divisa in due fasi:
  • fase 1: recupero di tutte le informazioni necessarie per la fase 2,
  • fase 2: compressione del materiale-sorgente-dvd.

Iniziamo ovviamente dalla FASE 1.

Il primo passo consiste nell'estrazione del materiale-sorgente-dvd. Esso e' rappresentato dai cossidetti file.vob i
quali devono essere decriptati etc... ma non preoccupatevi, lo fa in modo automatico mplayer. Osservate che un
file.vob contiene tutte le eventuali tracce audio e video piu tutti gli eventuali sottotitoli. Quando dico tutti vuole
dire che potranno essere presenti piu tracce audio in diversi formati e lingue, piu tracce video (ovvero lo stesso
filmato puo' essere stato girato contemporaneamente con diverse angolazioni) ed in fine piu' sottotitoli in lingue
diverse.

Dimenticavo... fate un po' di spazio al file MOVIE.vob perche' potra' tranquillamente raggiungere i 5 GB.

Code:
mplayer dvd://1 -dumpstream -dumpfile MOVIE.vob


Ok... ora abbiamo il file MOVIE.vob relativo alla prima traccia presente nel DVD che generalmente rappresenta il film
vero e proprio.

Il secondo passo consiste nel capire con quale materiale-sorgente-dvd (MOVIE.vob) abbiamo a che fare.

Code:
mplayer -nosound -vo null -benchmark MOVIE.vob


Il precedente comando leggera' l'intero MOVIE.vob alla massima velocita' possibile ed il suo output potra' essere:
  • nessun messaggio di cambio di frequenza.

    In questo caso siamo in presenza di un materiale-sorgente-dvd o tutto telecinato o tutto interlacciato.
    Per capirlo dobbiamo runnare "mplayer MOVIE.vob" e cercare una parte del film dove c'e' un po' di movimento (tasti
    "freccia su", "freccia giu", "pagina su" e "pagina giu" per spostarci piu' o meno velocemente all'interno del film).
    Una volta trovata la parte con un po' di action mettiamo mplayer in pausa "p" ed osserviamo una decina di
    fotogrammi successivi premendo ogni volta il tasto "punto": se ogni fotogramma risulta interlacciato allora il file
    MOVIE.vob e' tutto interlacciato (filtro "pp=" in fase di codifica) mentre se solo qualcuno lo e' allora il
    materiale-sorgente-dvd e' tutto telecinato (filtri "pullup,softskip" in fase di codifica).

  • un solo messaggio di questo tipo:
    "demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate."

    In questo caso siamo evidentemente in presenza di un materiale-sorgente progressivo masterizzato non telecinato
    su un DVD NTSC. Infatti mplayer, che leggerebbe il DVD NTSC a 30 fotogrammi per secondo, si accorge che in
    realta' il materiale sorgente-dvd e' a 24 fotogrammi per secondo (esattamente come il materiale-sorgente!) e quindi
    applica il filtro di "rallentamento" (opzione "-ofps 24000/1001" in fase di codifica).

  • piu' messaggi alternati in questo modo:
    "demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate."
    "demux_mpg: 30000/1001 fps progressive NTSC content detected, switching framerate."
    "demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate."
    etc...

    In questo caso o siamo in presenza di un materale-sorgente-dvd un po' progressivo ed un po' telecinato
    (contemporanea presenza delle opzioni "-ofps 24000/1001" e "pullup,softskip" in fase di compressione) oppure
    siamo in presenza di un materiale-sorgente-dvd un po' progressivo ed un po' interlacciato (quest'ultimo caso puo'
    essere trattato o come tutto interlacciato o come tutto progressivo... sta a voi ma il risultato non potra' essere ottimo)

    Nota: durante la fase di benchmark mplayer dira' esattamente in che punto del film c'e' stato il cambio in frequenza.
    Lo fara' riportando il tempo trascorso in secondi dall'inizio del film. Runnate quindi nuovamente "mplayer MOVIE.vob"
    ed andate a vedere se la parte a 30 fotogrammi al secondo si tratta di interlacciamento o telecine.

Bene ragazzi/e... capire con quale materiale-sorgente-dvd abbiamo a che fare e' sicuramente il punto piu' importante
di tutta questa storia. Per questo motivo vi invito ad usare Google per capire quali sono le
differenze tra un video
telecinato (solo qualche fotogramma risulta essere interlacciato ogni due o tre non interlacciati) ed un video interlacciato
(tutti i fotogrammi sono interlacciati... tipico dei DVD con "Monty Pythons" o il bellissimo "The Muppet Show").

Il terzo passo consiste nell'identificare la lingua voluta (opzione "-aid" in fase di compressione) e l'eventuale
presenza di
sottotitoli (opzione "-sid" in fase di compressione) in quello che sara' il vostro prodotto finale ovvero il vostro film
preferito
compresso in formato AVI.

Runnate quindi mplayer in modalita' "verbose" (molto output):

Code:
mplayer -v MOVIE.vob

e fermatelo dopi pochi secondi con la lettera "q".

A questo punto caercate tra il suo precedente output e troverete qualcosa di simile a questo (Harry Potter, The Prizoner of
Azkaban):

Code:
### Reading disc structure, please wait...                                    ###
### There are 6 titles on this DVD.                                           ###
### There are 35 chapters in this DVD title.                                  ###
### There are 1 angles in this DVD title.                                     ###
###                                                                           ###
### [open] audio stream: 0 audio format: ac3 (5.1) language: en aid: 128      ### (-aid 128) Mplayer option
### [open] audio stream: 1 audio format: ac3 (5.1) language: it aid: 129      ### (-aid 129)   LANGUAGES
### [open] audio stream: 2 audio format: ac3 (5.1) language: iw aid: 130      ### (-aid 130)
### [open] number of audio channels on disk: 3.                               ###
### [open] subtitle ( sid ): 0 language: en                                   ### (-sid 0)
### [open] subtitle ( sid ): 1 language: it                                   ### (-sid 1)   Mplayer option
### [open] subtitle ( sid ): 2 language: iw                                   ### (-sid 2)     SUBTITLES
### [open] subtitle ( sid ): 3 language: it                                   ### (-sid 3)
### [open] subtitle ( sid ): 4 language: it                                   ### (-sid 4)


Il quarto passo consiste nell'identificare l'area di cropping. Tale step e' utilissimo perche' ci permette di
eliminare le omnipresenti
"bande nere" dal nostro prodotto finale.

Ricordate ora una cosa: bene accettare i valori che ci fornira' mplayer altrimenti e' meglio che andate a leggervi il suo
manuale
in quanto la faccenda e' tutt'altro che semplice. Se proprio volete "tunare" l'area di cropping allora non utilizzate mai
numeri
dispari
ne' per lo shif (orizzontale e verticale) ne' per le dimensioni (altezza e lunghezza) del rettangolo di crop.
Nel caso poi siate
in presenza di materiale-sorgente-dvd interlacciato dovete sempre andare per multipli di 4.

Code:
mplayer -vf cropdetect MOVIE.vob


Nota: i valori forniti da mplayer risulteranno corretti non appena trovera' una scena abbastanza luminosa!
Vietato dunque prendere i valori che si ottengono in presenza di scene molto scure come quelle iniziali o finali
dedicate allo scorrimento dei titoli (il valore corretto verra' utilizzato nella fase di compressione utilizzando il filtro
"crop=").

Quello che vedrete sara' dunque un qualcosa simile a questo:

Code:
### crop area: X: 0..719  Y: 74..501  (-vf crop=720:416:0:80)13.7% 10 0 76% ###
### crop area: X: 0..719  Y: 74..501  (-vf crop=720:416:0:80)13.5% 10 0 76% ###
### crop area: X: 0..719  Y: 74..501  (-vf crop=720:416:0:80)13.5% 10 0 76% ###
### crop area: X: 0..719  Y: 74..501  (-vf crop=720:416:0:80)13.7% 10 0 75% ###
### crop area: X: 0..719  Y: 74..501  (-vf crop=720:416:0:80)13.6% 10 0 74% ###

dove i valori per l'area di crop non cambiaranno piu' nel tempo.

Potete controllare che l'area di crop identificata da mplayer sia corretta con uno dei seguenti comandi:

Code:
mplayer -vf rectangle=720:416:0:80 MOVIE.vob


Code:
mplayer -vf crop=720:416:0:80 MOVIE.vob


... carina no questa feature???

Il quinto passo consiste nell'aggiustare il volume audio a proprio piacimento, nello scegliere la frequenza di
campionamento
video voluta e nel decidere se voler avere un file separato che contenenga uno o piu' sottotitoli del vostro film... che
"guri" quelli
di mplayer!!!

Nota: il comando che segue prevede gia' una frequeza di campionamento per la parte audio di
ottima qualita' (opzione "vbr=2:q=2").
In particolare modo verra' usato un algoritmo a frequenza di campionamento audio variabile... ovviamente
sentitevi liberi di smanettarci sopra come volete, il manuale di mplayer e' li per quello e mooooolto altro
ancora!

Code:
mencoder (-ofps 24000/1001 -aid 128) -ss 00:02:00 -endpos 00:03:00 -ovc frameno -o frameno.avi \
-oac mp3lame -lameopts vbr=2:q=2:vol=6 MOVIE.vob


Quello che dovete fare ora (prima di decidere la frequenza di campionamento video) e' ascoltare un pezzetto dell traccia
audio per capire se il livello di volume e' sufficientemente elevato.

Beh... nulla di piu' semplice:

Code:
mplayer frameno.avi


Infatti il problema di fondo e' che molti DVDs presentano dei livelli di volume molto bassi. In questo caso, se il risultato
non vi aggrada,
aumentate o diminuite il valore del parametro "vol=6" e rilanciare il precedente comando di compressione audio.

Quando avrete trovato il valore corretto per il parametro "vol="... beh... sicuramente e' giunta l'ora di decidere quale
bitrate utilizzare
per il vostro prodotto finale. Rimuovete dunque le due opzioni "-ss 0:120" e "-endpos 60" e rilanciate nuovamente il comando
precedente
in modo da ottenere i valori corretti per il video bitrate. Infatti se avete usato quelle due opzioni avrete rippato e
codificato solo 60 secondi
della traccia audio a partire dal secondo minuto di inizio del film.

Ok, senza le opzioni "-ss" e "-endpos" il precedente comando terminera' con un messaggio del genere:

Code:
### Recommended video bitrate for 650MB CD: 636      ###
### Recommended video bitrate for 700MB CD: 821      ###
### Recommended video bitrate for 800MB CD: 870      ###
### Recommended video bitrate for 2 x 650MB CD: 1321 ###
### Recommended video bitrate for 2 x 700MB CD: 1624 ###
### Recommended video bitrate for 2 x 800MB CD: 1847 ###


Non mi dilunghero' piu' di un secondo sulla scelta del valore del video bitrate
da utilizzare, la qualita' che si ottiene con una dimensione del file compresso finale (audio + video) di 1.4 GByte ("2 x
700MB") e' decisamente
ottima. In questo modo su un normale DVD potrete masterizzare fino a 3 film di ottima fattura. Segnatevi dunque la frequenza
desiderata...
siamo quasi alla fine!

Se ora volete anche estrarre uno o piu' sottotitoli e memorizzarli "a parte"... seguitemi oppure andate direttamente al
sesto passo!
Ci siete ancora???... Grandi!!!
Ebbene si ragazzi/e... mplayer ci da anche la possibilita' di accompagnare il nostro prodotto finale (file compresso audio +
video) con una
ulteriore coppia di file dati che servono per contenere uno o piu' sottotitoli. In questo modo potrete dunque rivedervi il
vostro film preferito
senza alcun sottotitolo oppure con quello in francese, in inglese etc... bello no???!!!

Infatti se al sesto passo o nella FASE 2 usaste l'opzione "-sid" il sottotitolo da voi selezionato (unico!)
diventerebbe parte integrante
dell'immagine e quindi videocompresso!... Ve lo "beccherete" sullo schermo ogni volta che andrete a rivedervi il vostro
film! No way!

Volete dunque estrarre il sottotitolo in italiano ("-sid 1") dal file MOVIE.vob ed inserirlo sotto l'indice 0 del
file sottotitoli.idx???

Code:
mencoder -vobsubout sottotitoli -vobsuboutindex 0 -sid 1 -ovc frameno -o frameno.avi -nosound MOVIE.vob

... e magari volete pure quello in inglese ("-sid 0")!!!

Code:
mencoder -vobsubout sottotitoli -vobsuboutindex 1 -sid 0 -ovc frameno -o frameno.avi -nosound MOVIE.vob

A posto cosi??? OK!!! Tanto avete capito come si fa per aggiungerene ancora... basta incrementare "-vobsuboutindex " di una
unita'
e selezionare il sottotitolo successivo con "-sid".

Alla fine vi troverete dunque con due file che dovrete conservare con cura:
  • sottotitoli.idx che contiene i nuovi indici dei sottotitoli da voi estratti;
  • sottotitoli.sub che contiene effettivamente i sottotitoli in forma binaria.
Evidentemente le frequenze di
campionamento video che vengono comunque riportate sulla vostra shell non vanno prese in
considerazione in qanto fanno riferimento al caso in cui non vogliate includere nessuna traccia audio nel vostro prodotto
finale
(l'opzione "-nosound " e' qui infatti utilizzata solo per accelerare la lettura del file MOVIE.vob e relativa
generazione dei file
sottotitoli.idx e sottotitoli.sub)

Siccome una corretta generazione del file sottotitoli.idx prevedrebbe l'utilizzo di un particolare file presente nel
dvd che
contiene il vostro materiale sorgente, dobbiamo leggermente modificare il file in questione aggiungendo la segunete linea
di testo all'inizio dello stesso:

Code:
custom colors: ON, tridx: 1000, colors: 000000, 000000, ffffff, 000000

la quale indichera' a mplayer con quali colori renderizzare i sottotitoli in fase di riproduzione (in questo caso
sottotitoli bianchi con bordo nero).
Se volete una descrizione di quei campi vi invito a fare una ricerca su google... scoprirete cosi' molte altre cose carine
che si possono
fare modificandone i loro valori.

Il sesto passo consiste nel creare una prima "rudimentale" ANTEPRIMA.avi dei primi 60 secondi del vostro film
preferito... ma non solo!
Mplayer calcolera' pure, in modo automatico, il corretto fattore di scala che noi applicheremo nella fase di compressione
utilizzando
il filtro "scale=" (necessario perche' "cropperemo" pure l'immagine... quarto passo ricordate?)

Code:
mencoder (-ofps 24000/1001 -sid 1) -oac copy -vf (pullup,softskip,)crop=720:416:0:80(,pp=lb) -ovc lavc -lavcopts \
vcodec=mpeg4:vbitrate=1624:autoaspect -endpos 60 -o ANTEPRIMA.avi MOVIE.vob


Nota1: la parte audio verra' direttamente copiata dal file framento.avi. Oltre a questo e' utile ricordare che nel
mio particolare caso,
essendo in presenza di un DVD NTSC con materiale-sorgente-dvd progressivo, ho dovuto utilizzare l'opzione "-ofps 24000/1001"
e
non il filtro di deinterlacciamento "pp=lb" o di telecine-inverso "pullup,softskip"... ok e' vero, ho introdotto pure i
sottotitoli in italiano
visto che per l'audio ho preferito l'inglese! Notate pure l'opzione "autoaspect"... e' lei che dice ad mencoder di calcolare
il corretto fattore
di scala.

Nota2: forse qualcuno di voi si sara' chiesto perche' non sia possibile utilizzare l'opzione "autoaspect" anche
durante la fase di
compressione finale. La risposta e' molto semplice: si puo' fare... e questo risparmierebbe esattamente questo passaggio di
calcolo del
fattore di scala... ma il nostro prodotto finale sarebbe visualizzato in modo corretto solo da mplayer e non da windows
media player & company!

Tempo massimo 1 minuto su un Pentium IV 2.8 GHz e via con la visione dell'anteprima... mi raccomando, sempre occhio
all'output di mplayer!

Code:
mplayer ANTEPRIMA.avi


Wow... gia' bellissima questa anteprima!!!

Ora guardate anche l'output di mplayer... troverete qualcosa come questo:

Code:
### VDec: vo config request - 720 x 416 (preferred csp: Planar YV12) ###
### VDec: using Planar YV12 as output csp (no 0)                     ###
### Movie-Aspect is 2.46:1 - prescaling to correct movie aspect.     ###
### VO: [xv] 720x416 => 1024x416 Planar YV12                         ###


Eccolo li! Dobbiamo utilizzare il filtro scale in questo modo: "scale=1024:416".

Spero bene che abbiate preso nota su un foglietto di tutte le informazione che vi servono per la prossima ed ultima fase di
compressione
finale... giusto?

Ricapitolando, quello che ci serve e':
  • Individuare la natura del materiale-sorgente-dvd (secondo passo)

    Dovremo quindi utilizzare una opportuna combinazione di "-ofps 24000/1001", "pp=lb" e "pullup,softskip". Notiamo che di
    algoritmi per
    il deinterlacciamento ne esistono abbastanza ed ognuno ha i suoi pro e contro... date un bel "mplayer -pphelp | grep deint"
    e vedrete.

  • Scegliere la lingua ed eventuali sottotitoli (terzo passo)

    Semplicissimo... opzioni "-aid" e "-sid".

  • Identificare l'area di cropping (quarto passo)

    Semplicissimo... filtro "crop=".

  • Adattare il volume audio, scelta del bitrate video ed eventuali sottotitoli (quinto passo)

    Semplicissimo... parametri "vol=" e "vbitrate=".

  • Ottenere il fattore di scala (sesto passo)

    Semplicissimo... filtro "scale=".


Ed eccoci finalmente arrivati alla FASE 2.

Dando per scontato che tutte le informazioni necessarie alla compressione finale del materiale-sorgente-dvd siano nelle
vostre
mani... procediamo con la rimozione degli unici due file che dovreste avere nella vostra directory:

Code:
rm -i *


... eh eh, meglio che usiate "-i" con "rm *" cosi almeno vi chiedera' di confermare la cancellazione dei files... chissa' in
che shell
lo lancerete dopo una maratona del genere :D ... non cancellate dunque gli eventuali file dei sottotitoli (quinto
passo
- FASE 1).

Avete eliminato tutto ovvero i due file "ANTEPRIMA.avi" e "frameno.avi"??? Ok, Ottimo!

Allora, pronti... attenti........ VIA!:

Code:
mencoder (-ofps 24000/1001 -aid 128 -sid 1) -oac mp3lame -lameopts vbr=2:q=2:vol=6 \
-vf (pullup,softskip,)crop=720:416:0:80,(pp=lb,)scale=1024:416,hqdn3d=2:1:2 -ovc lavc \
-lavcopts vcodec=mpeg4:vbitrate=1662:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=1 \
-mc 1 -o MOVIE.avi MOVIE.vob && \
mencoder (-ofps 24000/1001 -aid 128 -sid 1) -oac mp3lame -lameopts vbr=2:q=2:vol=6 \
-vf (pullup,softskip,)crop=720:416:0:80,(pp=lb,)scale=1024:416,hqdn3d=2:1:2 -ovc lavc \
-lavcopts vcodec=mpeg4:vbitrate=1662:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=2 \
-mc 1 -o MOVIE.avi MOVIE.vob


Si si!!! Deve stare tutto su una linea di una vostra shell... niente paura... ormai sapete tutto... solo qualche commento
finale.

Come forse avrete notato quella linea di comando esegue in sequenza due fasi di compressione... esse sono separate dall'
operatore di and
che in bash diventa "&&". Cio significa che la seconda fase di compressione prendera' luogo se e solo se la prima e'
terminata con successo.
Le due fasi di compressione sono praticamente identiche tranne per la presenza di un "vpass=1" nella prima e di un "vpass=2"
nella seconda.
Tale tecnica di compressione viene dunque chiamata " a due passi"... sostanzialmente il primo passo serve per ottenere
informazioni
di natura statistica dal materiale-sorgente-dvd. Tali informazioni verranno cosi scritte da mencoder nel file di log
"divx2pass.log" ed utilizzate
sempre da mencoder durante il secondo passaggio. In questo modo, sapendo gia' cosa si sta trovando nelle mani, mencoder
sara' molto piu'
"bravo" nel fare il suo lavoro la seconda volta.

Tutte le altre opzioni che trovate scritte in quella linea di comando, oltre quelle a noi note, rappresentano parametri di
ottimizzazione
per la valanga di algoritmi utilizzati nella compressione. Per una loro descrizione vi rimando assolutamente al manuale di
mplayer dove ne
troverete pure delle altre.... e ben documentate!

Personalmente a me quelle bastano! Provare per credere!

Ok, credo di aver detto tutto... anzi mi manca un'ultima cosa: l'ordine con cui appaiono i filtri dopo l'opzione "-vf" (cha
sta per video filters)
non e' casuale. Essi costituiscono di fatto una vera e propria catena e per questo motivo esistono alcune regole da dover
rispettare durante
una loro composizione.

Non e' dunque un caso che l'eventuale filtro di deinterlacciamento si trovi dopo il crop e prima dello scale... come pure i
due eventuali filtri
per il telecine inverso si trovino in testa alla catena (il pullup deve sempre essere seguito dal softskip! Parola di
manuale!).

Utilizzando questa ricetta, un film da 90 minuti viene compresso sul mio Pentium IV 2.8 GHz nel giro di 7-8 ore... tempo
reperimento informazioni escluso.
Per vedere il vostro MOVIE.avi con i sottotitoli in italiano (nel caso aveste generato i relativi files
sottotitoli.idx e sottotitoli.sub) lanciate mplayer cosi:

Code:
mplayer -vobsub sottotitoli -vobsubid 0 MOVIE.avi


Have a lot of fun guys!!!

### NOTEAPIEDIPAGINA ###

Suggerimenti, ampliamenti, abbellimenti, approfondimenti sono ben accetti.

Ciao ciao.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!


Last edited by quantumwire on Tue Jun 19, 2007 2:05 pm; edited 39 times in total
Back to top
View user's profile Send private message
mambro
l33t
l33t


Joined: 22 Mar 2004
Posts: 752
Location: Mira (VE) - Italy

PostPosted: Fri Mar 03, 2006 7:27 pm    Post subject: Reply with quote

Moltro interessante, complimenti :wink:
_________________
"The design of a worldwide, fully transparent distributed file system for simultaneous use by millions of mobile and frequently disconnected users is left as an excercise for the reader".
Andrew S. Tanenbaum, Distributed Operating Systems.
Back to top
View user's profile Send private message
Onip
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 2912
Location: Parma (Italy)

PostPosted: Fri Mar 03, 2006 8:23 pm    Post subject: Reply with quote

Inserito direttamente nei Preferiti.
Grazie e Complimenti!!
_________________
Linux Registered User n. 373835

Titus Lucretius Carus, De Rerum Natura - Tantum religio potuit suadere malorum
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Tue Nov 28, 2006 2:38 pm    Post subject: Reply with quote

8O 8O 8O
Ne sai veramente a pacchi, complimenti.
_________________
LP
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Fri Jun 15, 2007 10:16 am    Post subject: Reply with quote

Sto provando questa "ricetta", ho un problema.
Arrivo al SECONDO PASSO, lancio e stoppo:
Code:

lucapost@jarod /mnt/documents/1 $ mplayer -nosound -vo null -benchmark MOVIE.vob
MPlayer dev-SVN-rUNKNOWN-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Turion(tm) 64 X2 Mobile Technology TL-50 (Family: 15, Model: 72, Stepping: 2)
3DNow supported but disabled
3DNowExt supported but disabled
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2

Playing MOVIE.vob.
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 3)  25.000 fps  8000.0 kbps (1000.0 kbyte/s)
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
VDec: using Mpeg PES as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
VO: [null] 720x576 => 720x576 Mpeg PES
Selected video codec: [mpegpes] vfm: mpegpes (MPEG-PES output (.mpg or DXR3/IVTV/DVB card))
==========================================================================
Audio: no sound
Starting playback...
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
VDec: using Mpeg PES as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [null] 720x576 => 1024x576 Mpeg PES
V: 192.1 4798/4798  0%  0%  0.0% 0 0
Exiting... (Quit)

da qui dovrei capire che il dvd è tutto telecinato o tutto interlacciato, cioè non c'è nessun cambio di frequenza, sono quindi nel primo dei tre casi.
A questo punto lancio mplayer:
Code:
lucapost@jarod /mnt/documents/1 $ mplayer MOVIE.vob
MPlayer dev-SVN-rUNKNOWN-4.1.2 (C) 2000-2007 MPlayer Team
CPU: AMD Turion(tm) 64 X2 Mobile Technology TL-50 (Family: 15, Model: 72, Stepping: 2)
3DNow supported but disabled
3DNowExt supported but disabled
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2

Playing MOVIE.vob.
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 3)  25.000 fps  8000.0 kbps (1000.0 kbyte/s)
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 576 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [libmpeg2] MPEG 1/2 Video decoder libmpeg2-v0.4.0b
Selected video codec: [mpeg12] vfm: libmpeg2 (MPEG-1 or 2 (libmpeg2))
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
Using MMX optimized resampler
AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [a52] afm: liba52 (AC3-liba52)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
VDec: vo config request - 720 x 576 (preferred colorspace: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
[swscaler @ 0xc3c550]SwScaler: using unscaled yuv420p -> bgr24 special converter
VO: [gl2] 720x576 => 1024x576 BGR 24-bit
[gl2] You have OpenGL >= 1.2 capable drivers, GOOD (16bpp and BGR is ok!)
[gl2] antialiasing off
[gl2] bilinear linear
A:2792.0 V:2792.0 A-V:  0.001 ct:  0.185 975/975  9% 18%  2.0% 0 0
A:2792.3 V:2792.0 A-V:  0.277 ct:  0.186 976/976  9% 18%  4.1% 0 0
A:2792.6 V:2792.1 A-V:  0.569 ct:  0.186 977/977  9% 18%  4.2% 0 0
A:2793.0 V:2792.1 A-V:  0.868 ct:  0.185 978/978  9% 18%  4.6% 0 0
A:2793.3 V:2792.2 A-V:  1.185 ct:  0.187 979/979  9% 18%  6.7% 0 0
A:2793.7 V:2792.2 A-V:  1.471 ct:  0.186 980/980  9% 18%  6.8% 0 0
A:2794.0 V:2792.2 A-V:  1.800 ct:  0.189 981/981  9% 18%  6.9% 0 0
A:2794.4 V:2792.3 A-V:  2.073 ct:  0.188 982/982  9% 18%  7.0% 0 0
A:2794.7 V:2792.3 A-V:  2.402 ct:  0.190 983/983  9% 18%  7.1% 0 0
A:2795.0 V:2792.4 A-V:  2.669 ct:  0.188 984/984  9% 18%  8.6% 0 0
A:2795.4 V:2792.4 A-V:  2.984 ct:  0.188 985/985  9% 18%  8.6% 0 0
A:2795.7 V:2792.4 A-V:  3.269 ct:  0.187 986/986  9% 18%  8.7% 0 0
A:2796.1 V:2792.5 A-V:  3.586 ct:  0.187 987/987  9% 18%  8.8% 0 0
  =====  PAUSE  =====

qui però non arrivo a capire con che tipo di sorgente ho a che fare, c'è qualche modo più diretto per capire se il sorgento è telecinato od interlacciato?
Grazie.
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Jun 15, 2007 12:58 pm    Post subject: Reply with quote

lucapost wrote:
Sto provando questa "ricetta", ho un problema.
Arrivo al SECONDO PASSO, lancio e stoppo...


In realta' qui non devi stoppare nulla perche' i cambi di frequenza possono avvenire in
qualsiasi punto del film... e se avvengono, te ne accorgi guardando tutto l'output del
comando allo step 2.

Evidentemente tu hai un DVD PAL:
Quote:
VDec: vo config request - 720 x 576 (preferred colorspace: Planar YV12)


... ed ora mi sono accorto solo ora che manca un'informazione allo step 2 ovvero se non
c'e' nessun messaggio di cambio di frequenza allora il materiale-sorgente-dvd puo' essere:

* tutto telecinato
* tutto interlacciato
* tutto progressivo

Se sei nell'ultimo caso (quello da me dimenticato) allora in riproduzione te lo becchi quel
famoso 4% piu' veloce rispetto a come e' stato filmato (vedi HowTo).

Per capire in che caso sei capitato, basta che ti guardi un pezzettino di film (possibilmente
dov'e c'e' un po di azione tipo dove uno dei personaggi, ad esempio, sta muovendo le mani
o qualcos'altro un po' velocemente etc...) "frame per frame".

Devi dunque cercare una scena un po' movimentata e premere sulla tua tastira ripetutamente
il tasto "." il quale ti permette di vedere il film un frame per volta.

E' cosi che ti accorgi quale materiale-sorgente-dvd hai di fronte:

* vedi ogni tanto un frame interlacciato? --> tutto telecinato
* vedi tutti i frame interlacciati? --> tutto interlacciato
* vedi tutti i frame non interlacciati? --> tutto progressivo

Dubbi chiariti?

PS: Non puoi evitare di guardare almeno un pezzettino di film "frame by frame" per capire con
quale materiale-sorgente-dvd hai a cha fare in quanto mplayer non ti sa dire se il fotogramma
che ti sta mettendo ora sul monitor e' interlacciato o meno.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
MeMyselfAndI
l33t
l33t


Joined: 15 Nov 2005
Posts: 784
Location: Between the monitor and the chair

PostPosted: Fri Jun 15, 2007 1:13 pm    Post subject: Reply with quote

Il post e' veramente ben fatto, ma non credo tu abbia pensato che quello che hai postato e' una pratica considerata, almeno per il momento, illegale.
Secondo le leggi di questo forum, che ti ricordo risiede in America ed e' quindi soggetto alle leggi americane, un post del genere andrebbe chiudo e cancellato; anzi non dovrebbe nemmeno essere stato scritto.

Scusa se ti rompo le scatole ma purtroppo finche' non cambieranno le leggi (qualcosa sembra si stia muovendo) ti consiglio di parlare con un admin prima di vederti il post chiuso o cancellato!

Ciao!
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Jun 15, 2007 1:40 pm    Post subject: Reply with quote

MeMyselfAndI wrote:
Il post e' veramente ben fatto, ma non credo tu abbia pensato che quello che hai postato e' una pratica considerata, almeno per il momento, illegale.


- copyright aggiunto nelle premesse

Contattero' gli autori e lasciero' loro decidere quale destino attribuire a questo post.

Ciao!
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Fri Jun 15, 2007 1:49 pm    Post subject: Reply with quote

ma...comunque per un'occhio inesperto come il mio riconoscere il tipo di materiale sorgente è un'impresa difficile!
i miei dvd sembrano tutti uguali, anche "frame to frame".
speriamo che qualcuno si inventi un modo per riconoscere il tipo di materiale sorgente...

Ciao e grazie, Luca.


ps: non alzate in troppi le mani!
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Jun 15, 2007 2:05 pm    Post subject: Reply with quote

Autori contattati.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Jun 15, 2007 2:14 pm    Post subject: Reply with quote

lucapost wrote:
ma...comunque per un'occhio inesperto come il mio riconoscere il tipo di materiale sorgente � un'impresa difficile!
i miei dvd sembrano tutti uguali, anche "frame to frame"...


Allora molto probabilmente sono progressivi.

I frame interlacciati sono riconoscibilissimi in quanto il fotogramma appare evidentemente "seghettato"
piu' o meno sui bordi di ogni singolo oggetto presente nel fotogramma stesso.

La prima immagine sulla sinistra dovrebbe aiutarti parecchio a capire di quale effetto visivo stiamo parlando.

Se non vedi nulla di tutto cio' allora e' tutto non interlacciato.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Fri Jun 15, 2007 6:46 pm    Post subject: Reply with quote

quantumwire wrote:
Allora molto probabilmente sono progressivi.

Supponiamo che siano tutti progressivi, quindi, non devo metterci nessuna opzione di quelle tra parentesi in fase di compressione?
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Jun 15, 2007 6:54 pm    Post subject: Reply with quote

lucapost wrote:
quantumwire wrote:
Allora molto probabilmente sono progressivi.

Supponiamo che siano tutti progressivi, quindi, non devo metterci nessuna opzione di quelle tra parentesi in fase di compressione?


Esatto.

PS: Ho dovuto toglierlo, lo ritroverai sul wiki.it appena posso.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Fri Jun 15, 2007 8:11 pm    Post subject: Reply with quote

e dove chiedo altri chiarimenti?...casomai ti contatto in pm...
_________________
LP
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sat Jun 16, 2007 7:57 am    Post subject: Reply with quote

Come si suol dire: MINCHIAZZA LA VACCAZZA!!!
8 ore per comprimere un DVD da 108 minuti, ma la qualità su 1380m è molto buona anche se ogni tanto si vedono delle righe orrizzontali che non so da cosa derivano.
8 ore cmq mi sembra un pò tantino...
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Sat Jun 16, 2007 8:38 am    Post subject: Reply with quote

lucapost wrote:
Come si suol dire: MINCHIAZZA LA VACCAZZA!!!
8 ore per comprimere un DVD da 108 minuti, ma la qualit� su 1380m � molto buona anche se ogni tanto si vedono delle righe orrizzontali che non so da cosa derivano.
8 ore cmq mi sembra un p� tantino...


Righe orizzontali non ce ne devono essere se nel film non ci sono.

Postami l'intero comando che hai usato.

8 ore... certo... mplayer fa tutto due volte in fin dei conti; durante la prima impara e durante la seconda scrive.
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!


Last edited by quantumwire on Sat Jun 16, 2007 3:47 pm; edited 1 time in total
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sat Jun 16, 2007 3:30 pm    Post subject: Reply with quote

ecco a voi il comando:
Code:
mencoder -aid 129 -oac mp3lame -lameopts vbr=2:q=2:vol=7 -vf crop=720:436:0:74,scale=1024:436,hqdn3d=2:1:2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1647:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=1 -mc 1 -o MOVIE.avi MOVIE.vob && mencoder -aid 129 -oac mp3lame -lameopts vbr=2:q=2:vol=7 -vf crop=720:436:0:74,scale=1024:436,hqdn3d=2:1:2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1647:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=2 -mc 1 -o MOVIE.avi MOVIE.vob ; sudo halt

_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Sat Jun 16, 2007 3:51 pm    Post subject: Reply with quote

lucapost wrote:
ecco a voi il comando:...


Non fa una piega mi pare quindi le righe che tu vedi non so da cosa dipendono... a meno che non siano presenti pure nel film :D

Se invece sono righe introdotte dagli algoritmi di compressione e/o da come ti sei compilato gentoo credo tu debba fare un po'
di ricerchine sul gentoo forum e su google.

Controlla pure che il file vob gia' di suo non contenga quelle righe tanto per cominciare...

PS: Io di righe non ne ho mai avute ed uso questa ricetta da 2 anni almeno per un totale di una 50 di film (ovviamente film girati
da mia nonna visto che ha sempre avuto la passione del regista!)
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
lavish
Bodhisattva
Bodhisattva


Joined: 13 Sep 2004
Posts: 4296

PostPosted: Tue Jun 19, 2007 10:18 pm    Post subject: Reply with quote

Sono stati chiariti gli eventuali problemi legali relativi alla guida con i mod internazionali, i quali ci hanno dato il via libera a rimettere l'howto online :D
_________________
minimalblue.com | secgroup.github.io/
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Wed Jun 20, 2007 9:28 am    Post subject: Reply with quote

...e bravi moderatori! :wink:
_________________
LP
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sat Aug 04, 2007 5:47 pm    Post subject: Reply with quote

lucapost wrote:
ecco a voi il comando:
Code:
mencoder -aid 129 -oac mp3lame -lameopts vbr=2:q=2:vol=7 -vf crop=720:436:0:74,scale=1024:436,hqdn3d=2:1:2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1647:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=1 -mc 1 -o MOVIE.avi MOVIE.vob && mencoder -aid 129 -oac mp3lame -lameopts vbr=2:q=2:vol=7 -vf crop=720:436:0:74,scale=1024:436,hqdn3d=2:1:2 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1647:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:keyint=50:vpass=2 -mc 1 -o MOVIE.avi MOVIE.vob ; sudo halt


Quasi tutti i backup dei dvd che ho fatto, li ho lanciati con esattamente questo comando (cambia il crop ed il vbitrate.. ), solo che il mio nuovo lettore LG (non del pc, ma quello collegato al televisore) proprio non arriva a leggere l'.avi generato.
Mi sa che questa tecnica di compressione non è compatibile con il mio lettore, e semplice rimediare in questo verso?
Mi dispiacerebbe cambiare radicalmente metodo visto che il risulato che si ottiene è molto buono...
_________________
LP
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sun Aug 05, 2007 3:05 pm    Post subject: Reply with quote

forse ho trovato il problema: sembra che il mio lettore dvd supporti il formato divx con una risoluzione massima di 800x600 (è quello che ho letto nel manuale d'istruzioni).
Qualcuno ha qualche buon consiglio per superare questo inghippo?
...non penso che la soluzione ottimale sia semplicemente abbassare il filtro "scale=" anche mantenendo le proporzioni :? , penso infatti che ci vorrebbe qualcosa che mi modifichi a puntino il "vbitrate="...

EDT:
ps: questa guida è fatta veramente bene
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Sat Aug 11, 2007 3:19 pm    Post subject: Reply with quote

lucapost wrote:
Mi dispiacerebbe cambiare radicalmente metodo visto che il risulato che si ottiene � molto buono...


Non ho mai fatto quello che stai provando a fare tu... se ci riesci, posta posta posta in coda che mi interessa!
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Thu Aug 23, 2007 9:50 am    Post subject: Reply with quote

quantumwire wrote:

Non ho mai fatto quello che stai provando a fare tu... se ci riesci, posta posta posta in coda che mi interessa!


Quello che sono riuscito ad ottenere è la compatibilità dei rip eseguiti con mencoder con il mio lettore divx da tavolo!!!
Non si trattava di un problema di risoluzione ma l'opzione da aggiungere per ottenere ciò è "-ffourcc DX50".


manuale on-line di mplayer wrote:
Quote:
D:

Perché riproduttori di terze parti non riescono a riprodurre filmati MPEG-4 codificati da MEncoder con versione superiore alla 1.0pre7?
R:

libavcodec, la libreria nativa per la codifica MPEG-4 distribuita usualmente con MEncoder, quando codificava video MPEG-4 era solita impostare il FourCC a 'DIVX' (il FourCC è una tag AVI per identificare il software usato per la codifica e il software relativo da usare per decodificare il video). Ciò portava molte persone a pensare che libavcodec fosse una libreria di codifica DivX, mentre in realtà è una libreria di codifica completamente diversa, che implementa lo standard MPEG-4 molto meglio di come faccia DivX. Così, il nuovo FourCC di default usato da libavcodec è 'FMP4', ma puoi modificare questo comportamente usando l'opzione -ffourcc di MEncoder. Puoi anche cambiare allo stesso modo il FourCC di file esistenti:

mencoder origine.avi -o destinazione.avi -ffourcc XVID

Fai attenzione che questo imposterà il FourCC a XVID invece che a DIVX. Si consiglia così, dato che DIVX significa DivX4, che è un codec MPEG-4 molto basilare, mentre DX50 e XVID indicano entrambi un MPEG-4 completo (ASP). Inoltre, se imposti il FourCC a DIVX, dei brutti software o lettori da tavolo potrebbero annsapare su alcune caratteristiche avanzate che libavcodec supporta, ma DivX no; dall'altro lato Xvid è più simile a libavcodec in termini di funzinalità, ed è supportato da tutti i riproduttori decenti.


Voilà!!!
_________________
LP
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Thu Aug 23, 2007 11:34 am    Post subject: Reply with quote

Ottimo!
_________________
HOWTO 1: Spegnere il laptop!
HOWTO 2: Comprimere i DVDs!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum