|
Premessa:
questo articolo ha lo scopo di informarvi sulle caratteristiche e le potenzialità
del nuovo codec Xvid basato su codice CVS, è un progetto Open-Source,
inoltre le versioni fino ad ora rilasciate sono ancora in fase alpha/beta,
quindi considerate che stiamo valutando un codec (a parere mio molto promettente),
di cui ancora non è stata rilasciata una versione stabile. Il sito
di riferimento e ufficiale è http://www.xvid.org,
in questo trovate i codici sorgente e tutti gli ultimi aggiornamenti, mentre
chi utilizza Windows, conviene andare sul sito di Nic
http://nic.dnsalias.com/, dove trovate il codec e tutti i filtri necessari
per installare e far funzionare il codec sotto Windows, al momento in cui
scrivo l'ultima vesrsione rilasciata è datata 05/04/2002 e l'installazione
avviene automaticamente tramite un installer, non è necessario installare
i file manualmente come prima.
Il codec Xvid
inizialmente era come tutti sanno ilo codec Mpeg4 di Microsoft, poi un hacker
francese, ottimizzò il codec per creare il ben noto Div-X, quando vide
che la sua nuova creazione stava riscuotendo un buon successo, decise di fondare
un progetto, il famoso "Project Mayo", che si fissò come
obiettivo quello di creare un codec Open-Source basato sull'Mpeg-4, chiamato
OPENDIVX. L'hacker francese dopo aver fatto una buona esperienza sul progetto
OPENDIVX, utilizzando le stesse caratteristiche di quest'ultimo ha dato vita
ai codec Div-X 4.xx e 5.xx, solo che da questo momento, non furono più
rilasciati i codici sorgente dei vari codec, non essendo più coperti
dalla licenza GPL (General Purpose License).
La maggior
parte dei sviluppatori che parteciparono al progetto OPENDIVX (Mayo), decisero
di unire le forze e le proprie capacità per creare un nuovo codec,
chimato Xvid, compatibile con il codec Div-X, però con l'obiettivo
di migliorarne la velocità e la qualità, di quest'ultimo. Come
detto prima il progetto Xvid è abbastanza nuovo, infatti è da
poco sbarcato sulle piattaforme Windows, grazie soprattutto a Nic, che ha
effettuato il porting del codec Xvid da Linux a Windows creando anche tutti
i filtri necessari, dato che in precedenza il progetto era destinato solo
al sistema operativo Linux, proprio perchè era un progetto Open-Source
e come molti sapranno tutti i progetti Open-Source sbarcano prima su Linux
e poi se avranno fortuna e successo arrivano nel mondo Windows.
In questo
articolo ho utilizzato Xmpeg 4.31alpha per testare il codec Xvid, confrontando
le prestazioni velocistice e qualitative ottenute da Xvid con quelle dei codec
Div-X 4.12 e Div-X 5.01, come nel caso dei Codec Div-X, le modalità
per arrivare a selezionare il Codec Xvid sono uguali sia sotto Xmpeg sia sotto
Flask Mpeg.
Vi ricordo
che se volete utilizzare Xmpeg 4.31alpha, dovete scaricarvi o prendere da
una versione precedente il file DVD.mism.Xmpeg, perchè nella versione
4.31alpha di Xmpeg tale file non è presente, quindi dovrete inserirlo
voi manualmente nella cartella di Xmpeg, altrimenti non riuscirete ad aprire
e rippare i file .Vob/IFO direttamente con il DeCSS di Xmpeg.
Le impostazioni del Codec
Una
curiosità, per chi non se ne è reso conto, il nome XVID, non
è niente altro che DIVX scritto al contrario.....
Dopo
L'INTRODUZIONE, analizziamo meglio le novità di questo nuovo codec
dal punto di vista tecnico e in modo più approfondito:
Dopo
aver scelto "XviD Mpeg-4 Compressor" dalla finestra AVI Plug-IN
2.5 di Xmpeg, vi apparirà la seguente tabella, con un solo riquadro
chiamato"Encoding", che contiene varie modalità di compressione,
come potete vedere qui sotto:


In base
alla modalità di compressione che selezionate, variano e potrete
variare i parametri di configurazione che si trovano nei campi sottostanti.
Valutiamo
tutte le modalità 1 Pass disponibili nel codec Xvid, in pratica ne
sono tre: 1 Pass - CBR, 1 Pass - quality, 1 Pass - Quantizer, basta che
guardate le immagini qui sotto e capirete:
Nella modalità
1 Pass - CBR identica alla modalità 1 Pass dei codec Div-X, potete
selezionare il valore del Bitrate video in Kbps come i codec Div-X, nel
mio caso ho selezionato 780 (l'impostazione di default è 900 Kbps),
la riga sotto "Reaction Delay Factor" che vi consiglio di rimanerla
al valore di default, a meno che non siete dei perfezionisti e degli esperti,
indica la velocità con cui il codec reagisce al cambio della scena,
se imposterete un valore basso, il codec reagirà prima alla variazione
del tipo di scena, portando dei buoni aumenti di velocità.
Anche la
modalità 1 Pass - quality è identica a quella dei codec Div-X,
quindi non necessario dare ulteriori spiegazioni, guardate lo screenshot
e vi renderete conto, in pratica potete impostare il valore della "Qualità"
(Quality), il valore di default è 85, che corrisponde a circa 900
Kbps di Bitrate.
Passiamo
alla modalità 1 Pass - Quantizer che nei codec Div-X non esiste,
è una modalità di compressione che riguarda soprattutto chi
ricerca la massima qualità e non gurda tanto alla velocità
di compressione, in pratica potete impostare il valore del "Quantizer"
(Quantizzazione), il quale specifica il livello di dettaglio da considerare
in ogni scena compressa, tutto ciò si traduce in una qualità
dei frame costante e quindi avrete una qualità video impeccabile.
Adesso valutiamo
le modalità 2 Pass disponibili nel codec Xvid, che anche in questo
caso sono tre: 2 Pass- 1st pass, 2 Pass - 2nd pass Ext., 2 Pass - 2nd pass
Int. Guardate gli screenshot indicati qui sotto:
Le
modalità 2 Pass in generale garantiscono ripsetto
alle modalità 1 Pass, una maggiore
accuratezza di compressione e di qualità a spese della velocità
e della dimensione finale del file.
Per
quanto riguarda la modalità 2 Pass - 1st pass, tutte le opzioni di
configurazione vanno specificate nel Tab "Advanced Options", mentre
nella modalità 2 Pass - 2nd pass Int., la quale è identica
a quella "2 Pass, 2nd pass" dei Codec Div-X, oltre a configurare
i vari parametri nel Tab "Advanced Options", potete pure specificare
la dimensione finale del file in Kb ("Desidered size Kb"), senza
però considerare l'audio.
Invece la modalità di compressione 2 Pass - 2nd pass Ext., per il
momento non la analizziamo perchè riguarda un metodo di compressione
esterno a Xvid.
E'
arrivato il momento di entrare nel TAB "Advanced options", composto
a sua volta da altri tab minori in cui si trovano moltissime opzioni, a
volte anche complicate da capire e spiegare, cercherò di fare del
mio meglio per essere chiaro e semplice, ecco cosa vedrete dopo aver cliccato
su "Advanced options":


Iniziamo
con il valutare il Tab "Global", come vedete potete impostare
varie opzioni, c'è quella "Motion search precision" che
indica il normale rapporto tra velocità/qualità del video
finale, vi consiglio di riamnere il valore di default cioè "5
- Very High", il quale garantisce il miglior rapporto tra velocità/qualità
di compressione, infatti anche selezionando il valore più alto che
equivale a "6 - Ultra high", avrete un aumento della qualità
molto basso mentre perderete in velocità circa ilo 10%. Comunque
in linea di massima i valori vanno da 1 a 6, più piccolo è
il valore che scegliete meno qualità dell'immagine avrete, però
guadagnerete in velocità di compressione, altrimenti se assegnate
un valore più alto vivrete la situazione contraria.

L'opzione
"Quantization type" permette di scegliere la matrice di quantizzazione,
ci sono 4 tipi di matrici. La H. 263 è la scelta ideale per chi sceglie
un Bitrate basso, quindi vuole avere il film in un unico CD, la MPEG è
invece ottima per chi imposta un Bitrate alto, perchè vuole immagini
di qualità e decide di far stare il film su 2 o più CD. La
MPEG Custom permette di editare a mano la matrice di quantitizzazione. Il
valore Modulated per ora lasciamoloo stare e vi consiglio di non sceglierlo
nelle vostre compressioni. Comunque è ovvio, che dovete usare sempre
la stessa matrice, sia per il 2 Pass- 1st pass sia per il 2 Pass - 2nd pass
è importante.

L'opzione
"FourCC used" specifica al player che codec utilizzare per la
decodifica e la visualizzazione del filmato finale, potete lasciare tranquillamente
XVID non ci sono problemi. Quella "Maximum I-frame interval" è
identica a quella dei codec Div-X e permette di scegliere la distanza massima
in frame, tra due fotogrammi di tipo keyframe (il valore di default è
300 frames lasciatelo pure così).
Il
"lumi masking" è un filtro simile a quello "Psycovisual"
del codec Div-X 5, in quale testerò in seguito, quest'opzione deve
essere usata solo nella modalità 2 Pass - 2nd pass e mai nella 2
Pass - 1st pass oppure 1 Pass CBR, non porterebbe nessun beneficio.
Passiamo
al Tab "Quantizaztion" attivo solo nelle modalità 1 Pass
- CBR/quality e 2Pass 2nd pass Int./Ext., analizziamo a fondo tutte le opzioni
disponibili in questo Tab e a cosa servono:

Il Tab
"Quantization" permette di indicare i valori massimi e minimi
di quantizzazione o di compressione, per i frame di tipo I-frame (quelli
che contengono tutte le scene complete), per i P- frame (dove si memorizza
solo la differenza tra una scena all'altra) e per i frame di tipo B-frame
(il cui uso, verrà implementati nella prossima release) che sono
quasi uguali ai P-frame. Se aumentate il valore massimo di qualche quantizzatore
la compressione la compressione aumenterà però la qualità
sarà più bassa; se invece diminuete il valore massimo di un
quantizzatore di frame, la compressione diminuisce ed aumenta la qualità
(come anche la grandezza del file finale) infine impostando un valore uguale
per i quantizzatori minimi e massimi si ottiene una compressione a bitrate
costante.
>Adesso possiamo
passare al Tab "Two Pass" ricco di opzioni impostabili, vediamo
in dettaglio a cosa servono tutte le opzioni incluse:

Nel riquadro
"Two-pass tuning" si può si può scegliere di quanto
aumentare il Bitrate di un Keyframe (I-frame) rispetto agli altri frame,
grazie a questa opzione potrete ottenere dei Keyframe più grandi
degli altri frame e quindi migliorare anche la qualità dei P-frame,
che si basano proprio sui Keyframe (I-frame), quindi vi consiglio di impostare
un valore alto nel campo I-frame boost %, mentre il campo sottostante indica
il numero minimo di frame che devono esserci nell'intervallo tra due Keyframe.
Cliccando
sulla casella "Discard first pass" durante la modalità
2 Pass - 1st pass, verrà creato solo il log e non il file .Avi, perciò
va selezionatela sempre (è attiva già di default), così
eviterete di dover cancellare il file .Avi alla fine della compressione,
come accade con i codec Div-X; invece selezionando la casella "Dummy
2nd pass" non verrà creato il file .Avi nella modalità
2 Pass 2nd pass, nelle impostazioni di default questa casella è disattivata
e lasciatela così.
Le opzioni
nel riquadro "Curve compression" devo ancora approfondirle, quindi
per adesso non posso spiegarvi con sicurezza a cosa servono e se sono utili
oppure no, vi prometto che appena aggiornerò questa guida ci saranno
anche le spiegazioni relative a queste opzioni, vi dico solo che sono difficili
da capire e interpretare, se qualcuno ci riesce prima di me me l'ho faccia
sapere, sarò molto felice di ricevere un aiuto dai lettori, soprattutto
quando l'aiuto potrebbe essere prezioso come in questo caso. Comunque vi
consiglio di lasciare i valori di default in qualsiasi campo del riquadro
"Curve compression", a meno che non siete sicuri di ciò
che fate.
Nell''opzione
1st pass stats mettete lo stesso file, sia per il primo sia per il secondo
passaggio, mi raccomando; mentre l'opzione 2nd pass stats riguarda il metodo
di compressione 2 Pass - 2nd pass Ext., che come vi ho detto in precedenza
non consideratela, perchè riguarda tutta una cosa esterna ad Xvid.

Ora è
arrivato il momento di parlare del Tab "Alt. Curve", anche in
questo caso vi consiglio di non cambiare le opzioni in questo Tab, a meno
che non siate degli esperti, infatti anche io voglio approfondire meglio
queste opzioni, per capire a cosa servono e quanto sono utili, comunque
appena aggiornerò questa guida, vi prometto di trattare più
approfonditamente anche questo Tab di non facile interpretazione, inoltre
sono tutte opzioni abbastanza nuove che devono essere ancora ottimizzate
nelle prossime versioni, inoltre non sono presenti nemmeno nel codec Div-X,
quindi ecco un altro punto a favore di Xvid, che vi ripeto considero un
ottimo codec futuro.
Passiamo
al Tab "Credits" molto interessante, il quale include delle opzioni
sconosciute ai Codec Div-X, ma molto utili guardiamole insieme:

Nel riquadro
"Credits at start of movie" potete indicare i punti di inizio
e fine dei titoli di testa del vostro film, il valore deve essere inserito
in frame, ma se non lo conoscete, potete ottenerlo moltiplicando il valore
del tempo in sec. dei titoli di testa per il numero 25, e voilà il
gioco è fatto.
Invece nel
riquadro "Credits at end of movie" potete specificare il punto
di inizo e fine dei titoli di coda del vostro film, ovviamente anche in
questo caso il valore deve essere immesso in frame (guardate la piccola
spiegazione sopra).
Il riquadro
"Credits rate reduction" che non funziona nella modalità
1 Pass - CBR, permette di specificare in che % il valore del Bitrate impostato
deve essere diminuito per la compressione dei titoli di testa e di coda
del film, in modo tale da recuparare spazio alla fine, per esempio se voi
avete scelto un Bitrate di 780Kbps e inserite il valore 10 nel campo "Desired
% rate", allora i titoli di testa e di coda verranno compressi con
un Bitrate di 78 Kbps. Se non volete inserire il valore in percentuale del
Bitrate, allora potete scegliere di specificare i valori dei quantizzatori
dei I-frame e dei P-frame, in modo da comprimere i vostri titoli di testa
e coda con un Bitrate costante, l'ultimo campo a disposizione è "Starting
Size" che vi permette di stabilire, solo nella modalità di compressione
2 Pass - 2nd pass Int., la dimensione desiderta in Kb dei titoli di testa
e coda.
Il mio consiglio
è quello di utilizzare la prima funzione, quella "Desidered
% rate",ovviamente nelle modalità di compressione che lo permettono,
infatti basta che impostate il valore in % in cui deve essere diminuito
il Bitrate impostanto all'inizio, e Xvid calcolerà direttamente il
Bitrate di compressione dei titoli di testa e coda, ovviamente impostando
una percentuale alta e più riuscirete a comprimere i vostri titoli
di coda. Invece per chi non vuole seguire il mio consiglio, vi ricordo chepotete
sempre decidere di utilizzare i quantizzatori fissi dei I-frame e P-frame,
attivi in tutte le modalità, tranne quella 1 Pass - CBR.

Conclusione
Concludiamo
con il Tab "CPU", il più semplice di tutti, ma non per
questo il meno efficace, anzi è quello che vi permette di sfruttare
al meglio la vostra Cpu, perchè permette di impostare quali istruzioni
multimediali supportate dal vostro processore devono essere utilizzate per
migliorare la velocità di compressione, anche questo è un
altro punto a favore di Xvid, perchè i codec Div-X non permettono
di impostare tali opzioni. Comunque potete anche far riconoscere automaticamente
al codec Xvid le istruzioni multimediali supportate dalla vostra Cpu, altrimenti
dovete impostarle a mano voi, consiglio ai più bravi di forzare le
ottimizzazioni selezionando "Force optimizations" e spuntando
le caselle che corrispondono alle istruzioni della vostra Cpu:
|
CPU
|
MMX
|
Integer SSE
|
SSE
|
SSE 2
|
3D Now!
|
3D Now! 2
|
|
Intel Pentium 4
|
si
|
>si
|
si
|
si
|
no
|
no
|
|
Intel Pentium III
|
si
|
si
|
si
|
no
|
no
|
no
|
|
Intel Pentium II
|
si
|
no
|
no
|
no
|
no
|
no
|
|
AMD Athlon/Duron Spitfire
|
si
|
no
|
no
|
no
|
si
|
si
|
|
AMD Athlon XP/Duron Morgan
|
si
|
si
|
si
|
no
|
si
|
si
|
|
VIA C3
|
si
|
no (si)
|
no (si)
|
no
|
si
|
no
|
|
|