aboutsummaryrefslogtreecommitdiffhomepage
path: root/DOCS/xml/it/encoding-guide.xml
diff options
context:
space:
mode:
Diffstat (limited to 'DOCS/xml/it/encoding-guide.xml')
-rw-r--r--DOCS/xml/it/encoding-guide.xml5354
1 files changed, 0 insertions, 5354 deletions
diff --git a/DOCS/xml/it/encoding-guide.xml b/DOCS/xml/it/encoding-guide.xml
deleted file mode 100644
index dd326c2fa4..0000000000
--- a/DOCS/xml/it/encoding-guide.xml
+++ /dev/null
@@ -1,5354 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- 44% synced with r22753 (row 2377) -->
-<chapter id="encoding-guide">
-<title>La codifica con <application>MEncoder</application></title>
-
-<sect1 id="menc-feat-dvd-mpeg4">
-<title>Produrre un rip di un film da DVD in un
- MPEG-4 ("DivX") di alta qualità</title>
-
-<para>
-Una domanda frequente è "Come posso generare il rip con la migliore qualità
-per una dimensione data?". Un'altra domanda è "Come posso fare il rip da DVD
-migliore in assoluto? Non mi interessa la dimensione del file, voglio solo la
-più alta qualità."
-</para>
-
-<para>
-L'ultima domanda è perlomeno forse posta malamente. Dopo tutto, se non ti
-interessa la dimensione del file, perché non ti copi semplicemente l'intero
-flusso video MPEG-2 dal DVD? Certo, avrai un AVI di 5GB, prendere o lasciare,
-ma se vuoi la miglior qualità e non ti importa della dimensione, è
-sicuramente la scelta migliore.
-</para>
-
-<para>
-Invero, la ragione per cui vuoi codificare un DVD in MPEG-4 è proprio perché
-ti interessa <emphasis role="bold">davvero</emphasis> la dimensione del file.
-</para>
-
-<para>
-E' difficile offrire una ricetta da libro su come generare un rip da DVD in
-qualità molto alta. Bisogna considerare vari fattori, e dovresti comprendere
-questi dettagli, altrimenti alla fine probabilmente sarai insoddisfatto del
-risultato. Più sotto evidenziamo alcuni di questi argomenti e poi passiamo ad
-esaminare un esempio. Partiamo dal principio che per codificare il video tu
-stia usando <systemitem class="library">libavcodec</systemitem> anche se la
-teoria si applica allo stesso modo agli altri codec.
-</para>
-
-<para>
-Se questo ti sembra troppo, dovresti probabilmente usare una delle belle
-interfacce elencate nella
-<ulink url="http://www.mplayerhq.hu/design7/projects.html#mencoder_frontends">sezione su MEncoder</ulink>
-nella pagina dei progetti collegati (related projects).
-In tal modo riuscirai ad ottenere rip di alta qualità senza pensarci troppo,
-dato che la maggior parte di questi strumenti sono progettati per prendere
-decisioni sagge al tuo posto.
-</para>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-preparing-encode">
-<title>Prepararsi alla codifica: identificare il materiale sorgente e la frequenza fotogrammi (framerate)</title>
-
-<para>
-Prima ancora di pensare a codificare un film, devi fare alcuni passi
-preliminari.
-</para>
-
-<para>
-Il primo e più importante passo prima della codifica dovrebbe essere
-determinare il tipo di contenuto che stai trattando.
-Se il tuo materiale di partenza arriva da un DVD o da TV in
-broadcast/via cavo/satellite, sarà salvato in uno dei due formati: NTSC per
-il Nord America e il Giappone, PAL per l'Europa, etc...
-E' importante tuttavia comprendere che questo è solo il formato per la
-trasmissione in televisione, e spesso <emphasis role="bold">non</emphasis>
-corrisponde al formato originario del film.
-L'esperienza insegna che il materiale NTSC è molto più difficile da
-codificare, perché ci sono più elementi da identificare nel sorgente.
-Per generare una codifica adeguata, devi sapere il formato originario.
-Il non tenerne conto porterà a molti __flaws__ nella tua codifica, inclusi
-artefatti orrendi __combing__ (interlacing) e fotogrammi duplicati o addirittura
-perduti.
-Oltre ad essere brutti, gli artefatti influenzano negativamente l'efficienza
-della codifica: otterrai una peggior qualità a parità di bitrate.
-</para>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-fps">
-<title>Identificare la frequenza fotogrammi (framerate) del sorgente</title>
-
-<para>
-C'è qui un elenco di tipi comuni di materiale sorgente, dove facilmente si
-trovano e le loro proprietà:
-</para>
-
-<itemizedlist>
-<listitem><para>
- <emphasis role="bold">Film standard</emphasis>: prodotti per la visione
- su schermi da cinema a 24fps.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Video PAL</emphasis>: registrati con una videocamera
- PAL a 50 campi al secondo.
- Un campo è composto dalle sole linee pari o dispari di un fotogramma.
- La televisione è stata progettata per aggiornarle alternativamente come un
- metodo economico di compressione analogica.
- L'occhio umano teoricamente compensa la cosa, ma una volta che capisci come
- funziona l'interlacciatura imparerai a vederla anche in TV e non ti piacerà
- più la TV.
- Due campi <emphasis role="bold">non</emphasis> fanno un fotogramma intero,
- poiché sono registrati a 1/50 di secondo di distanza nel tempo e quindi non
- si allineano a meno che non ci sia movimento alcuno.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Video NTSC</emphasis>: registrati con una videocamera
- NTSC a 60000/1001 campi al secondi, o 60 campi al secondo nell'era precedente
- al colore.
- Per il resto sono simili ai PAL.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Animazione</emphasis>: solitamente disegnati a 24fps,
- ma se ne trovano anche in tipologie con frequenza di fotogrammi mista.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Computer Graphics (CG)</emphasis>: possono essere con
- qualsiasi frequenza di fotogrammi, ma alcuni sono più comuni di altri;
- sono tipici 24 e 30 fotogrammi al secondo per NTSC e 25fps per PAL.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Vecchi Film</emphasis>: varie e più basse frequenze di
- fotogrammi.
-</para></listitem>
-</itemizedlist>
-</sect3>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-preparing-encode-material">
-<title>Identificare il materiale sorgente</title>
-
-<para>
-I film composti da fotogrammi sono indicati come "progressivi", mentre quelli
-composti da campi indipendenti sono chiamati "interlacciati" o video - anche se
-quest'ultimo termine è ambiguo.
-</para>
-
-<para>
-Per complicare ulteriormente le cose, alcuni film possono essere un misto di
-molti dei suddetti.
-</para>
-
-<para>
-La più importante distinzione da farsi tra tutti questi formati è che alcuni
-sono basati su fotogrammi mentre gli altri sono basati su campi.
-<emphasis role="bold">Ogniqualvolta</emphasis> un film viene preparato per la
-visualizzazione in televisione (DVD inclusi), viene convertito in un formato
-basato su campi.
-I vari metodi con cui si può fare sono conosciuti nel loro insieme come
-"telecine", di cui il tristemente famoso "3:2 pulldown" NTSC è una tipologia.
-A meno che il materiale originale sia anch'esso basato su campi (e con la stessa
-frequenza di campi) otterrai un filmato in un formato diverso da quello che è
-in origine.
-</para>
-
-<itemizedlist>
-<title>Ci sono vari tipi usuali di "pulldown":</title>
-<listitem><para>
- <emphasis role="bold">Pulldown PAL 2:2</emphasis>: il più bello di tutti.
- Ciascun fotogramma viene mostrato per la durata di due campi, estraendo le
- linee pari e dispari e mostrandole alternativamente.
- Se il materiale di origine è a 24fps questo processo velocizza il filmato
- del 4%.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Pulldown PAL 2:2:2:2:2:2:2:2:2:2:2:3</emphasis>:
- Ogni dodicesimo fotogramma viene mostrato per la durata di tre campi, invece
- che solamente per due.
- Questo evita il problema dell'aumento del 4% di velocità, ma rende il
- processo molto più difficile da __reversare__.
- Solitamente viene usato nelle produzioni musicali, dove modificare del 4% la
- velocità rovinerebbe pesantemente la colonna sonora.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Telecine NTSC 3:2</emphasis>: i fotogrammi vengono
- mostrati alternativamente per la durata di 3 o 2 campi.
- Questo porta ad una frequenza di campi di 2.5 volte la frequenza orginaria.
- Il risultato viene anche leggermente rallentato da 60 campi al secondo fino a
- 60000/1001 campi al secondo, per mantenere la frequenza dei campi di NTSC.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Pulldown NTSC 2:2</emphasis>: utilizzato per mostrare
- materiale a 30fps su NTSC.
- Carino, proprio come il pulldown PAL 2:2.
-</para></listitem>
-</itemizedlist>
-
-<para>
-Ci sono anche alcuni metodi per convertire tra video NTSC e PAL, ma gli
-arogmenti relativi non sono obiettivo di questa guida.
-Se ti trovi di fronte a un film di questo genere e lo vuoi codificare, la tua
-scelta migliore è cercarne una copia nel formato originale.
-La conversione tra questi due formati è altamente distruttiva e non può
-essere __reversed__ in maniera pulita, perciò la tua codifica __soffrirà__
-molto se eseguita da una sorgente convertita.
-</para>
-
-<para>
-Quando il video viene salvato du un DVD, coppie consecutive di campi sono
-raggruppati in un fotogramma, anche se non sono pensati per esser mostrati
-nello stesso momento.
-Lo standard MPEG-2 usato sui DVD e per la TV digitale fornisce un modo sia per
-codificare i fotogrammi progressivi originali, che uno per memorizzare
-nell'intestazione del fotogramma il numero dei campi per cui il fotogramma
-stesso debba essere mostrato.
-Se viene usato questo metodo il filmato verrà spesso indicato come
-"soft telecine", visto che il procedimento indica semplicemente al lettore DVD
-di applicare il pulldown al film, invece che modificare il film stesso.
-Questa situazione è decisamente preferibile, dato che può essere facilmente
-__reversed__ (__actually ignored__) dal condificatore, e dato che mantiene la
-massima qualità.
-Tuttavia, molti studi di produzione DVD e di trasmissione non usano tecniche di
-codifica appropriate, ma al contrario producono filmati con "hard telecine", in
-cui i campi sono sotanzialmente duplicati nell'MPEG-2 codificato.
-</para>
-
-<para>
-Le modalità per gestire questi casi verranno descritte
-<link linkend="menc-feat-telecine">più avanti in questa guida</link>.
-Per adesso ti lasciamo alcune indicazioni su come identificare il tipo di
-materiale che stai trattando:
-</para>
-
-<itemizedlist>
-<title>Regioni NTSC:</title>
-<listitem><para>
- Se <application>MPlayer</application> dice che la frequenza fotogrammi passa
- a 24000/1001 durante la visione del film e non ritorna come prima, è quasi
- sicuramente un qualche contenuto progressivo che è stato modificato in
- "soft telecine".
-</para></listitem>
-<listitem><para>
- Se <application>MPlayer</application> dice che la frequenza fotogrammi va
- avanti e indietro tra 24000/1001 e 30000/1001 e ogni tanto vedi delle "righe",
- allora ci sono varie possibilità.
- Le parti a 24000/1001 fps sono quasi certamente contenuto progressivo, in
- "soft telecine", ma le parti a 30000/1001 fps possono essere sia contenuto in
- "hard telecine" a 24000/1001 fps che video NTSC a 60000/1001 campi al secondo.
- Usa le stesse linee guida dei due casi seguenti per determinare quale.
-</para></listitem>
-<listitem><para>
- Se <application>MPlayer</application> non mostra mai una modifica alla
- frequenza dei fotogrammi e ogni singolo fotogramma con del movimento appare
- "rigato", il tuo filmato è video NTSC a 60000/1001 campi al secondo.
-</para></listitem>
-<listitem><para>
- Se <application>MPlayer</application> non mostra mai una modifica alla
- frequenza dei fotogrammi e due fotogrammi ogni cinque sono "rigati", il tuo
- film è contenuto a 24000/1001fps in "hard telecine".
-</para></listitem>
-</itemizedlist>
-
-<itemizedlist>
-<title>Regioni PAL:</title>
-<listitem><para>
- Se non vedi mai alcuna "riga", il tuo film è pulldown 2:2.
-</para></listitem>
-<listitem><para>
- Se vedi delle "righe" che vanno e vengono ogni mezzo secondo,
- allora il tuo film è pulldown 2:2:2:2:2:2:2:2:2:2:2:3.
-</para></listitem>
-<listitem><para>
- Se vedi sempre "righe" durante il movimento, allora il tuo film è video
- PAL a 50 campi al secondo.
-</para></listitem>
-</itemizedlist>
-
-<note><title>Consiglio:</title>
-<para>
- <application>MPlayer</application> può rallentare la riproduzione del film
- con l'opzione -speed o riprodurlo fotogramma per fotogramma.
- Prova ad usare <option>-speed</option> 0.2 per guardare molto lentamente il
- film o premi ripetutamente il tasto "<keycap>.</keycap>" per riprodurre un
- fotogramma per volta ed identificare la sequenza, se non riesci a vederla a
- velocità normale.
-</para>
-</note>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-2pass">
-<title>Quantizzatore costante vs. multipassaggio</title>
-
-<para>
-E' possibile codificare il filmato in un'ampia gamma di qualità.
-Con i codificatori video moderni e un pelo di compressione pre-codec
-(ridimensionando e ripulendo), è possibile raggiungere una qualità molto
-buona in 700 MB, per un film di 90-110 minuti in widescreen.
-Inoltre tutti i film tranne i più lunghi possono essere codificati con una
-qualità pressoché perfetta in 1400 MB.
-</para>
-
-<para>
-Ci sono tre approcci per codificare il video: bitrate costante (CBR),
-quantizzatore costante, e multipassaggio (ABR, o bitrate medio).
-</para>
-
-<para>
-La complessità dei fotogrammi di un filmato, e di conseguenza il numero di
-bit necessari per comprimerli, può variare molto da una scena ad un'altra.
-I codificatori video moderni possono adattarsi via via a queste necessità
-e cambiare il bitrate.
-In modalità semplici come CBR, tuttavia, i codificatori non sanno il bitrate
-necessario alle scene venture e perciò non possono stare sopra al bitrate
-richiesto per lunghi periodi di tempo.
-Modalità più avanzate, come la codifica in multipassaggio, possono tener
-conto delle statistiche del passo precedente; questo corregge il problema
-suddetto.
-</para>
-
-<note><title>Nota:</title>
-<para>
-La maggior parte dei codec che gestisce la codifica in ABR può usare solo la
-codifica a due passaggi mentre altri come
-<systemitem class="library">x264</systemitem>,
-<systemitem class="library">Xvid</systemitem> e
-<systemitem class="library">libavcodec</systemitem> gestiscono il
-multipassaggio, che migliora leggermente la qualità ad ogni passo, anche se
-tale moglioramento non è più misurabile né visibile veramente oltre il
-quarto passo o giù di lì.
-Perciò in questa sezione due passaggi e multipassaggio avranno lo stesso
-significato.
-</para>
-</note>
-
-<para>
-In ambedue i modi, il codec video (come
-<systemitem class="library">libavcodec</systemitem>) spezza il fotogramma video
-in macroblocchi da 16x16 pixel e poi applica un quantizzatore a ciascun
-macroblocco. Più basso è il quantizzatore, migliore sarà la qualità e
-più alto il bitrate.
-Il metodo usato dal codificatore del filmato per determinare quale quantizzatore
-utilizzare per un dato macroblocco varia ed è altamente configurabile.
-(Questa è una semplificazione estrema del vero processo, ma il concetto di base
-è comodo per capire.)
-</para>
-
-<para>
-Quando specifichi un bitrate constante, il codec video codificherà il video,
-scartando dettagli tanto quanto è necessario e il meno possibile, in modo da
-rimanere al di sotto del bitrate voluto. Se non ti interessa davvero la
-dimensione del file, potresti anche usare CBR e specificare un bitrate
-infinito. (In pratica, questo significa un valore abbastanza alto da non porre
-limiti, come 10000Kbit.) Con nessun limite sul bitrate, il risultato è che il
-codec userà il quantizzatore più basso possibile per ciascun macroblocco
-(come specificato da <option>vqmin</option> per
-<systemitem class="library">libavcodec</systemitem>, che è 2 di default).
-Appena specifichi un bitrate abbastanza basso tale che il codec venga forzato
-ad utilizzare un quantizzatore più alto, allora stai sicuramente diminuendo la
-qualità del tuo video.
-Per evitarlo, dovresti probabilmente ridurre la dimensione del tuo video,
-seguendo il metodo descritto più avanti in questa guida.
-In generale dovresti evitare del tutto CBR se ti interessa la qualità.
-</para>
-
-<para>
-Con il quantizzatore costante, il codec utilizza lo stesso quantizzatore per
-ogni macroblocco, come specificato dall'opzione <option>vqscale</option> (per
-<systemitem class="library">libavcodec</systemitem>).
-Se vuoi la più alta qualità possibile di rip, sempre ignorantdo il bitrate,
-puoi usare <option>vqscale=2</option>.
-Ciò porterà gli stessi bitrate e PSNR (peak signal-to-noise ratio) come CBR
-con <option>vbitrate</option>=infinito e <option>vqmin</option> di default a 2.
-</para>
-
-<para>
-Il problema con la quantizzazione costante è che usa il quantizzatore indicato
-sia che il macroblocco ne abbia bisogno o no. Perciò è possibile che venga
-usato un quantizzatore più alto su un macroblocco senza sacrificare la
-qualità visiva. Perché sprecare i bit di un quantizzatore basso che non
-serve? La tua CPU ha tanti cicli fin quando c'è tempo, ma c'è solo un certo
-numero di bit sul tuo disco rigido.
-</para>
-
-<para>
-Con una codifica a due passi, il primo codificherà il filmato come se fosse
-CBR, ma manterrà una registrazione delle caratteristiche di ogni fotogramma.
-Questi dati sono poi utilizzati durante il secondo passo in modo da effettuare
-scelte intelligenti su quale quantizzatore usare. Durante le scene con azione
-veloce o molti dettagliate, verrano usati più probabilmente quantizzatori più
-alti, e durante scene lente o con pochi dettagli, verranno usati quantizzatori
-più bassi. Solitamente è molto più importante la quantità di movimento
-che la quantità di dettagli.
-</para>
-
-<para>
-Se usi <option>vqscale=2</option>, allora stai sprecando dei bit. Se usi
-<option>vqscale=3</option>, allora non stai ottenendo la miglior qualità.
-Supponi di rippare un DVD a <option>vqscale=3</option> e che il risultato sia
-1800Kbit. Se fai una codifica a due passi con <option>vbitrate=1800</option> il
-video risultante avrà una <emphasis role="bold">qualità superiore</emphasis>
-a <emphasis role="bold">parità di bitrate</emphasis>.
-</para>
-
-<para>
-Dato che ora sei convinto che i due passaggi siano la strada da percorrere, la
-vera domanda adesso è quale bitrate usare? La risposta à che non c'è una
-risposta definitiva. Idealmente vuoi scegliere un bitrate che porti al miglior
-equilibrio tra qualità e dimensione del file. Tutto ciò varia in dipendenza
-del video di origine.
-</para>
-
-<para>
-Se la dimensione non è importante, un buon punto di partenza per un rip di
-qualità molto elevata è intorno a 2000Kbit più o meno 200Kbit.
-Per video con scene di azione veloce o con molti dettagli, oppure se
-semplicemente hai l'occhio critico, potresti scegliere 2400 o 2600.
-Per alcuni DVD potresti non notare alcuna differenza a 1400Kbit. Sperimentare
-con alcune scene a vari bitrate è una buona idea per farsi un'opinione.
-</para>
-
-<para>
-Se punti a una data dimensione, dovrai calcolare il bitrate in un qualche modo.
-Prima di farlo, però, devi sapere quanto spazio devi riservare per la traccia
-(le tracce) audio, per cui devi dapprima fare il
-<link linkend="menc-feat-dvd-mpeg4-audio">rip di queste</link>.
-Puoi calcolare il bitrate con l'equazione che segue:
-<systemitem>bitrate = (dimensione_voluta_in_Mbytes - dimensione_audio_in_Mbytes)
-* 1024 * 1024 / lunghezza_in_secondi * 8 / 1000</systemitem>
-Per esempio, per far stare un film di due ore su un CD da 702MB, con 60MB di
-traccia audio, il bitrate video diventerà:
-<systemitem>(702 - 60) * 1024 * 1024 / (120*60) * 8 / 1000
-= 740kbps</systemitem>
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-constraints">
-<title>Vincoli per una codifica efficiente</title>
-
-<para>
-A causa della natura del tipo di compressione MPEG, ci sono alcuni vincoli da
-seguire per avere la massima qualità.
-L'MPEG divide il video in quadrati da 16x16 chiamati macroblocchi, ciascuno di
-essi composto da blocchi 4x4 con informazioni sulla luminanza (intensità) e
-due blocchi da 8x8 a metà risoluzione per la crominanza (colore) (uno per
-l'asse rosso-ciano e l'altro per l'asse blu-giallo).
-Anche se la larghezza e l'altezza del tuo filmato non sono multipli di 16 il
-codificatore userà tanti macroblocchi 16x16 in modo da coprire tutta la
-superficie dell'immagine, e lo spazio in esubero sarà sprecato.
-Indi, per migliorare la qualità a una dimensione prefissata è una brutta
-idea utilizzare dimensioni che non siano multiple di 16.
-</para>
-
-<para>
-La maggior parte dei DVD ha anche alcune con bordi neri sui lati. Lasciarli lì
-avrà un'influenza <emphasis role="bold">molto</emphasis> negativa sulla
-qualità in svariati modi.
-</para>
-
-<orderedlist>
-<listitem>
- <para>
- Il tipo di compressione MPEG è pesantemente dipendente dalle trasformazioni
- di dominio frequenti, in particolare la "trasformazione discreta del coseno"
- (Discrete Cosine Transform (DCT)), che xxièe' simile alla trasformazione di
- Fourier. Quest'approccio di codifica è efficiente nella rappresentazione di
- motivi e transizioni delicate, ma trova difficoltà con spigoli più
- definiti. Per codificarli deve usare molti più bit oppure apparirà un
- artefatto conosciuto come 'ringing'.
- </para>
-
- <para>
- La trasformazione di frequenza (DCT) prende luogo separatemente in ogni
- macroblocco (praticamente in ogni blocco) perciò questo problema si applica
- solo quando lo spigolo definito è dentro a un blocco. Se il bordo nero inizia
- esattamente sul lato di un multiplo di 16, questo non e' un problema.
- Tuttavia i bordi neri sui DVD difficilmente sono ben allineati, perciò
- nella realtà dovrai sempre tagliarli via per evitare questi problemi.
- </para>
-</listitem>
-</orderedlist>
-
-<para>
-Oltre alle trasformazioni del dominio di frequenza, il tipo di compressione
-MPEG usa dei vettori di movimento per rappresetare le variazioni da un
-fotogramma al successivo. Naturalmente i vettori di movimento funzionano molto
-meno bene per i nuovi contenuti che arrivano dai bordi dell'immagine, dato che
-non erano presenti nel fotogramma precedente. Fintanto che l'immagine arriva
-fino al bordo dell'area codificata, i vettori di movimento non incontrano
-alcun problema con li contenuto che esce dall'immagine. Tuttavia ci possono
-esser problemi quando ci sono dei bordi neri:
-</para>
-
-<orderedlist continuation="continues">
-<listitem>
- <para>
- Per ogni macroblocco il tipo di compressione MPEG memorizza un vettore, che
- identifica quale parte del fotogramma precedente debba essere copiata nel
- macroblocco stesso, come base per predire il fotogramma successivo. Serve
- codificare solo le differenze restanti. Se un macroblocco oltrepassa il
- bordo dell'immagine e contiene parte del bordo nero, allora i vettori di
- movimento provenienti da altre zone dell'immagine ricopriranno il bordo
- nero. Questo significa che si devono utilizzare molti bit o per riannerire il
- bordo che è stato ricoperto, oppure (più verosimilmente) un vettore di
- movimento non sarà proprio usato e tutti i cambiamenti in questo
- macroblocco dovranno venir esplicitamente codificate. In un modo o nell'altro
- si ricuce di gran lunga l'efficienza della codifica.
- </para>
-
- <para>
- Inoltre questo problema si applica solo se i bordi neri non sono allinati
- su limiti di multipli di 16.
- </para>
-</listitem>
-
-<listitem>
- <para>
- Immagina infine di avere un macroblocco all'interno dell'immagine, ed un
- oggetto che passa da questo blocco verso il bordo dell'immagine. La
- codifica MPEG non può dire "copia la parte che è dentro all'immagine, ma
- non il bordo nero". Perciò anche il bordo nero vi verrà copiato
- all'interno, e molti bit saranno sprecati codificando l'immagine che si
- suppone stia lì.
- </para>
-
- <para>
- Se l'immagine arriva al limite della superficie codificata, l'MPEG ha una
- particolare ottimizzazione che consta nel copiare ripetutamente i pixel sul
- bordo dell'immagine quando un vettore di movimento arriva dall'esterno della
- superficie codificata. Questa funzionalità diventa inutile quando il film
- ha dei bordi neri. Diversamente dai problemi 1 e 2, allineare i bordi a
- multipli di 16 in questo caso non aiuta.
- </para>
-</listitem>
-
-<listitem><para>
- A dispetto del fatto che i bordi siano completamente neri e non cambino mai,
- c'è perlomeno un piccolo spreco nell'avere più macroblocchi.
-</para></listitem>
-</orderedlist>
-
-<para>
-Per tutte queste ragioni si consiglia di tagliar via completamente i bordi neri.
-Inoltre, se c'è una zona di rumore/distorsione sui bordi dell'immagine,
-tagliarla migliorerà ancora l'efficienza di codifica. I puristi videofili che
-vogliono mantenere il più possibile l'originale potrebbero obiettare su questo
-taglio, ma a meno di non codificare a una quantizzazione costante, la qualità
-guadagnata tagliando sorpasserà di gran lunga la quantità di informazioni
-perse sui bordi.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-crop">
-<title>Tagliare e Ridimensionare</title>
-
-<para>
-Ricorda dalla sezione precedente che la dimensione finale dell'immagine che
-codifichi dovrebbe essere un multiplo di 16 (sia in larghezza che altezza).
-Si può ottenere ciò tagliando, ridimensionando o combinando le due cose.
-</para>
-
-<para>
-Quando tagli, ci sono alcune linee guida che si devono seguire per evitare di
-rovinare il tuo filmato.
-Il formato YUV abituale, 4:2:0, memorizza le informazioni sulla crominanza
-(colore) sottocampionate, per es. la crominanza viene campionata in ogni
-direzione solo la metà di quanto venga la luminanza (intensità).
-Osserva questo diagramma, dove L indica i punti di campionamente della
-luminanza e C quelli della crominanza.
-</para>
-
-<informaltable>
-<?dbhtml table-width="40%" ?>
-<?dbfo table-width="40%" ?>
-<tgroup cols="8" align="center">
-<colspec colnum="1" colname="col1"/>
-<colspec colnum="2" colname="col2"/>
-<colspec colnum="3" colname="col3"/>
-<colspec colnum="4" colname="col4"/>
-<colspec colnum="5" colname="col5"/>
-<colspec colnum="6" colname="col6"/>
-<colspec colnum="7" colname="col7"/>
-<colspec colnum="8" colname="col8"/>
-<spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
-<spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
-<spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
-<spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
- <tbody>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry spanname="spa1-2">C</entry>
- <entry spanname="spa3-4">C</entry>
- <entry spanname="spa5-6">C</entry>
- <entry spanname="spa7-8">C</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry spanname="spa1-2">C</entry>
- <entry spanname="spa3-4">C</entry>
- <entry spanname="spa5-6">C</entry>
- <entry spanname="spa7-8">C</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- </tbody>
-</tgroup>
-</informaltable>
-
-<para>
-Come puoi vedere, le righe e le colonne dell'immagine vengono sempre a coppie.
-Quindi i tuoi valori di spostamento e dimensione <emphasis>devono</emphasis>
-essere numeri pari.
-Se non lo sono la crominanza non sarà più allineata correttamente con la
-luminanza.
-In teoria è possibile tagliare con uno spostamento dispari, ma richiede che la
-crominanza venga ricampionata, il che potenzialmente è un'operazione in perdita
-e non è gestita dal filtro crop.
-</para>
-
-<para>
-Inoltre, il video interlacciato viene campionato come segue:
-</para>
-
-<informaltable>
-<?dbhtml table-width="80%" ?>
-<?dbfo table-width="80%" ?>
-<tgroup cols="16" align="center">
-<colspec colnum="1" colname="col1"/>
-<colspec colnum="2" colname="col2"/>
-<colspec colnum="3" colname="col3"/>
-<colspec colnum="4" colname="col4"/>
-<colspec colnum="5" colname="col5"/>
-<colspec colnum="6" colname="col6"/>
-<colspec colnum="7" colname="col7"/>
-<colspec colnum="8" colname="col8"/>
-<colspec colnum="9" colname="col9"/>
-<colspec colnum="10" colname="col10"/>
-<colspec colnum="11" colname="col11"/>
-<colspec colnum="12" colname="col12"/>
-<colspec colnum="13" colname="col13"/>
-<colspec colnum="14" colname="col14"/>
-<colspec colnum="15" colname="col15"/>
-<colspec colnum="16" colname="col16"/>
-<spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
-<spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
-<spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
-<spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
-<spanspec spanname="spa9-10" namest="col9" nameend="col10"/>
-<spanspec spanname="spa11-12" namest="col11" nameend="col12"/>
-<spanspec spanname="spa13-14" namest="col13" nameend="col14"/>
-<spanspec spanname="spa15-16" namest="col15" nameend="col16"/>
- <tbody>
- <row>
- <entry namest="col1" nameend="col8">Campo superiore</entry>
- <entry namest="col9" nameend="col16">Campo inferiore</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry spanname="spa1-2">C</entry>
- <entry spanname="spa3-4">C</entry>
- <entry spanname="spa5-6">C</entry>
- <entry spanname="spa7-8">C</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry spanname="spa9-10">C</entry>
- <entry spanname="spa11-12">C</entry>
- <entry spanname="spa13-14">C</entry>
- <entry spanname="spa15-16">C</entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry spanname="spa1-2">C</entry>
- <entry spanname="spa3-4">C</entry>
- <entry spanname="spa5-6">C</entry>
- <entry spanname="spa7-8">C</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- <row>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry spanname="spa9-10">C</entry>
- <entry spanname="spa11-12">C</entry>
- <entry spanname="spa13-14">C</entry>
- <entry spanname="spa15-16">C</entry>
- </row>
- <row>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- <entry>L</entry>
- </row>
- </tbody>
-</tgroup>
-</informaltable>
-
-<para>
-Come puoi notare, il motivo non si ripete fino a dopo 4 linee.
-Quindi per il video interlacciato, il tuo spostamento sull'asse y e l'altezza
-devono essere multipli di 4.
-</para>
-
-<para>
-La risoluzione nativa DVD è 720x480 per NTSC e 720x576 per PAL, ma c'è un
-flag per l'aspetto che indica se è full-screen (4:3) o wide-screen (16:9).
-Molti (se non quasi tutti) i DVD in widescreen non sono esattamente 16:9 e
-possono essere sia 1.85:1 o 2.35:1 (cinescope). Questo significa che nel video
-ci saranno bordi neri che bisogna tagliare via.
-</para>
-
-<para>
-<application>MPlayer</application> fornisce un filtro che rileva i valori di
-taglio e fornisce il rettangolo per crop (<option>-vf cropdetect</option>).
-Esegui <application>MPlayer</application> con <option>-vf cropdetect</option> ed
-emetterà le impostazioni di taglio per crop al fine di rimuovere i bordi.
-Dovresti lasciare andare avanti il film abbastanza da ottenere valori di taglio
-precisi.
-</para>
-
-<para>
-Dopodiché prova con <application>MPlayer</application> i valori ottenuti usando
-la linea comando emessa da <option>cropdetect</option>, e correggi il
-rettangolo se e come serve.
-Il filtro <option>rectangle</option> può esserti di aiuto, dato che ti
-permette di impostare interattivamente la posizione del rettangolo di taglio
-sopra al filmato.
-Ricordati di seguire le linee guida sui multipli in modo da non disallineare
-i piani di crominanza.
-</para>
-
-<para>
-In talune occasioni, il ridimensionamento può essere indesiderabile.
-Il ridimensionamento sulla direzione verticale è difficoltoso con video
-interlacciato e se vuoi mantenere l'interlacciamento, dovresti evitare il
-ridimensionamento.
-Se non ridimensionerai, ma vuoi comunque usare dimensioni multiple di 16,
-dovrai tagliare di più.
-Evita di tagliare di meno, dato che i bordi neri sono un male per la codifica!
-</para>
-
-<para>
-Dato che MPEG-4 usa macroblocchi 16x16 vorrai esser sicuro che ambedue le
-dimensioni del video che stai per codificare siano multiple di 16, altrimenti
-perderai in qualità, soprattutto a bitrate più bassi. Puoi farlo abbassando
-la larghezza e l'altezza del rettangolo di taglio al multiplo di 16 più vicino.
-Come detto precedentemente, quando tagli, vorrai aumentare lo scostamento Y
-della metà della differenza tra la nuova e la vecchia altezza, in modo che il
-video risultante sia preso dal centro del fotogramma. Inoltre, a causa del modo
-in cui il video DVD viene campionato, assicurati che lo scostamento sia un
-numero pari. (Infatti, come regola, non utilizzare mai valori dispari per alcun
-parametro quando tagli e ridimensioni un video.) Se non ti va di scartare dei
-pixel in più, potresti piuttosto preferire il ridimensionamento del video.
-Prenderemo in esame questa situazione più avanti.
-Puoi in verità lasciare che tutte le considerazioni suddette vengano fatte
-dal filtro <option>cropdetect</option>, visto che ha un parametro
-<option>round</option> facoltativo, che è impostato a 16 di default.
-</para>
-
-<para>
-Fai anche attenzione ai pixel "mezzi neri" sui bordi. Assicurati di tagliare
-anch'essi, altrimenti sprecherai bit più utili altrove.
-</para>
-
-<para>
-Dopo aver detto e fatto tutto ciò, probabilmente avrei un vide i cui pixel
-non saranno proprio 1.85:1 o 2.35:1, ma piuttosto un valore vicino. Potresti
-calcolare a mano il nuovo rapporto di aspetto, ma
-<application>MEncoder</application> ha un'opzione per <systemitem
-class="library">libavcodec</systemitem> chiamata <option>autoaspect</option>
-che lo farà per te. Non aumentare assolutamente le dimensioni del video per
-avere i pixel quadrati, a meno che tu non voglia sprecare il tuo spazio disco.
-Il ridimensionamento dovrebbe essere eseguito in riproduzione, e per definire
-la risoluzione giusta il riproduttore userà l'aspetto memorizzato nell'AVI.
-Sfortunatamente non tutti i riproduttori verificano l'informazione sul rapporto
-perciò potresti voler comunque effettuare il ridimensionamento.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-resolution-bitrate">
-<title>Scegliere la risoluzione e il bitrate</title>
-
-<para>
-A meno che tu non stia per codificare con quantizzazione costante devi
-impostare un bitrate.
-La logica del bitrate è abbastanza semplice.
-Normalmente il bitrate viene misurato in kilobit (1000 bit) al secondo.
-La dimensione del filmato sul disco è il bitrate moltiplicato per la durata
-del filmato, più un piccolo quantitativo in "surplus" (vedi per esempio la
-sezione sul
-<link linkend="menc-feat-dvd-mpeg4-muxing-avi-limitations">contenitore AVI</link>).
-Altri parametri come ridimensionamento, taglio, etc...
-<emphasis role="bold">non</emphasis> influiscono sulla dimensione del file a
-meno che tu non cambi anche il bitrate!
-</para>
-
-<para>
-Il bitrate <emphasis role="bold">non</emphasis> è direttamente proporzionale
-alla risoluzione.
-Tanto per capirci, un file 320x240 a 200 kbit/sec non avrà la stessa qualità
-dello stesso filmato a 640x480 e 800 kbit/sec!
-Ci sono due ragioni per ciò:
-<orderedlist>
-<listitem><para>
- <emphasis role="bold">Percettiva</emphasis>: noti di più gli artefatti MPEG
- quando sono più grandi!
- Gli artefatti appaiono a livello dei blocchi (8x8).
- Il tuo occhio non noterà errori in 4800 piccoli blocchi tanti quanti ne
- vedrà in 1200 grossi blocchi (assumendo che tu li stia ridimensionando tutti
- e due a schermo intero).
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Teorica</emphasis> : quando rimpicciolisci un immagine
- ma usi la stessa dimensione dei blocchi (8x8) per la trasformazione spaziale
- della frequenza, hai più dati nelle bande ad alta frequenza. In parole
- povere, ogni pixel contiene più dettagli di quanti ne contenesse prima.
- Quindi anche se la tua immagine rimpicciolita contiene 1/4 delle informazioni
- sulle direzioni spaziali, potrebbe ancora contenere una gran parte delle
- informazioni nel dominio delal frequenza (assumendo che le alte frequenze
- siano sotto-utilizzate nell'immagine di origine a 640x480).
-</para></listitem>
-</orderedlist>
-</para>
-
-<para>
-Guide precendenti hanno consigliato di scegliere un bitrate e una risoluzione
-in base ad un approccio "bit al secondo", ma di solito ciò non è valido a
-causa delle ragioni suddette.
-Una stima migliore pare essere che il bitrate è proporzionale alla radice
-quadrata della risoluzione, per cui 320x240 e 400 kbit/sec sarà
-paragonabile a 640x480 a 800 kbit/sec.
-Tuttavia ciò non è stato verificato con certezza empirica o teorica.
-Inoltre, dato che i filmati hanno diversi livelli di disturbo, dettaglio, angoli
-di movimento, etc..., è vano dare consigli generici su bit per lunghezza della
-diagonale (analogamente a bit per pixel, usando la radice quadrata).
-</para>
-<para>
-Finora abbiamo parlato della difficoltà nel scegliere un bitrate e una
-risoluzione.
-</para>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-resolution-bitrate-compute">
-<title>Calcolare la risoluzione</title>
-
-<para>
-I passaggi seguenti ti guideranno nel calcolo della risoluzione per la tua
-codifica senza distorcere troppo il video, tenendo in considerazione vari tipo
-di informazioni riguardo la sorgente video.
-Per prima cosa dovresti calcolare il rapporto di aspetto codificato:
-<systemitem>ARc = (Wc x (ARa / PRdvd )) / Hc</systemitem>
-
-<itemizedlist>
-<title>dove:</title>
-<listitem><para>
- Wc e Hc sono la larghezza e l'altezza del video tagliato,
-</para></listitem>
-<listitem><para>
- ARa è il rapporto di aspetto mostrato, che di solito è 4/3 o 16/9,
-</para></listitem>
-<listitem><para>
- PRdvd à il rapporto del pixel del DVD che è uguale a 1.25=(720/576) per DVD
- PAL e 1.5=(720/480) per DVD NTSC.
-</para></listitem>
-</itemizedlist>
-</para>
-
-<para>
-Dopo puoi calcolare la risoluzione X e Y, basandoti su un dato fattore
-di qualità di compressione (Compression Quality, CQ):
-<systemitem>ResY = INT(SQRT( 1000*Bitrate/25/ARc/CQ )/16) * 16</systemitem>
-and
-<systemitem>ResX = INT( ResY * ARc / 16) * 16</systemitem>
-</para>
-
-<para>
-Okay, ma cos'è la CQ?
-Il CQ rappresenta il numero di bit per pixel e per fotogramma in codifica.
-Parlando più semplicemente, più alto è la CQ, più difficilmente si vedranno
-codificati degli artefatti.
-Tuttavia, se desideri una particolare dimensione per il tuo film (per esempio
-1 o 2 CD), hai un numero limitato di bit da utilizzare; devi quindi trovare un
-buon compromesso tra compressione e qualità.
-</para>
-
-<para>
-La CQ dipende dal bitrate, dall'efficienza del codec video e dalla risoluzione
-del filmato.
-Per alzare la CQ, di solito dovrai rimpicciolire il filmato visto che il bitrate
-viene calcolato in funzione della dimensione voluta e della lunghezza del
-filmato, che sono delle costanti.
-Con codec MPEG-4 ASP come <systemitem class="library">Xvid</systemitem> e
-<systemitem class="library">libavcodec</systemitem>, una CQ inferiore a 0.18
-solitamente genera un'immagine abbastanza squadrettata, perché non ci sono
-abbastanza bit per codificare l'informazione di ogni macroblocco. (MPEG4, come
-molti altri codec, ragruppa i pixel in blocchi di pixel per comprimere
-l'immagine; se non ci sono abbastanza bit, si vedono i bordi dei blocchi.)
-E' saggio anche prendere una CQ compresa tra 0.20 e 0.22 per un rip a 1 CD,
-e 0.26-0.28 per un rip a 2 CD con impostazioni standard di codifica.
-Opzioni più evolute di codifica come quelle qui indicate per
-<link linkend="menc-feat-mpeg4-lavc-example-settings"><systemitem class="library">libavcodec</systemitem></link>
-e
-<link linkend="menc-feat-xvid-example-settings"><systemitem class="library">Xvid</systemitem></link>
-dovrebbero permetterti di ottenere la stessa qualità con CQ compresa tra
-0.18 e 0.20 per un rip da 1 CD, e da 0.24 a 0.26 per 2 CD.
-Con codec MPEG-4 AVC come <systemitem class="library">x264</systemitem>,
-puoi usare una CQ che varia da 0.14 a 0.16 con opzioni standard di codifica, e
-dovresti riuscire a scendere tra 0.10 e 0.12 con <link linkend="menc-feat-x264-example-settings">impostazioni avanzate di codifica
-<systemitem class="library">x264</systemitem></link>.
-</para>
-
-<para>
-Prendi per favore nota che CQ è solo un valore indicativo, dato che dipende dal
-contenuto che viene codificato, una CQ di 0.18 può andar bene per un Bergman,
-mentre per un film come Matrix, che contiene molte scene ad alta velocità, no.
-D'altro canto è inutile portare la CQ oltre 0.30 dato che sprecherai dei bit
-senza avere alcun guadagno visibile in qualità.
-Nota anche che come detto precedentemente in questa guida, per video a bassa
-risoluzione serve una CQ più alta (in rapporto, per esempio, alla risoluzione
-DVD) perché si vedano bene.
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-filtering">
-<title>Filtraggio</title>
-
-<para>
-Imparare come usare i filtri video di <application>MEncoder</application> è
-essenziale per produrre delle buone codfiche.
-Tutta l'elaborazione video è eseguita attraverso i filtri -- taglio,
-ridimensionamento, aggiustamento del colore, rimozione del disturbo, rilevamento
-margini, deinterlacciatura, telecine, telecine inverso, e deblocco, solo per
-nominarne qualcuno.
-Insieme con la vasta gamma di formati di entrata gestiti, la varietà dei
-filtri disponibili in <application>MEncoder</application> è uno dei suoi
-più grandi vantaggi sugli altri programmi similari.
-</para>
-
-<para>
-I filtri vengono caricati in catena usando l'opzione -vf:
-
-<screen>-vf filtro1=opzioni,filtro2=opzioni,...</screen>
-
-La maggior parte dei filtri riceve alcune opzioni numeriche separate da due
-punti, ma la sintassi per le opzioni cambia da filtro a filtro, indi leggiti la
-pagina man per i dettagli sul filtro che desideri usare.
-</para>
-
-<para>
-I filtri lavorano sul video nell'ordine in cui vengono caricati.
-Per esempio la catena seguente:
-
-<screen>-vf crop=688:464:12:4,scale=640:464</screen>
-
-dapprima taglia la zona 688x464 dell'immagine con uno scostamento dall'alto a
-sinistra di (12,4), e poi ridimensiona il risultato a 640x464.
-</para>
-
-<para>
-Taluni filtri devono essere caricati all'inizio o vicino all'inizio della
-catena di filtri, in modo da trarre vantaggio dalle informazioni che arrivano
-dal decoder video, che potrebbero essere perse o invalidate da altri filtri.
-Gli esempi principali sono <option>pp</option> (post elaborazione
-(postprocessing), solo quando esegue operazioni di deblock o dering),
-<option>spp</option> (un altra post elaborazione per eliminare artefatti MPEG),
-<option>pullup</option> (telecine inverso), e <option>softpulldown</option>
-(per passare da telecine soft a hard).
-</para>
-
-<para>
-In generale vorrai filtrare il meno possibile in modo da rimaner fedele alla
-sorgente DVD originale. Il taglio è spesso necessario (com detto sopra), ma
-evita di ridimensionare il video. Anche se alcune volte si preferisce
-rimpicciolire per poter usare quantizzatori più alti, vogliamo evitare ciò:
-ricorda che abbiamo sin dall'inizio deciso di investire bit in qualità.
-</para>
-
-<para>
-In più, non reimpostare la gamma, il contrasto, la luminosità, etc...
-Quello che si vede bene sul tuo schermo potrebbe non vedersi bene su altro.
-Queste modifiche dovrebbero esser fatte solo durante la riproduzione.
-</para>
-
-<para>
-Una cosa che voresti però fare è tuttavia far passare il video attraverso un
-leggero filtro di rimozione disturbo, come <option>-vf hqdn3d=2:1:2</option>.
-Ancora, è una questione di poter meglio utilizzare quei bit: perché sprecarli
-codificando disturbo mentre puoi semplicemente aggiungerlo di nuovo durante la
-riproduzione? Alzando i parametri per <option>hqdn3d</option> aumenterà
-ancora la compressione, ma se aumenti troppo i valori, rischi un degrado pesante
-dell'immagine. I valori sopra consigliati (<option>2:1:2</option>) sono
-abbastanza conservativi; sentiti libero di sperimentare con valori più alti e
-verificare da solo il risultato.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-interlacing">
-<title>Interlacciamento e Telecine</title>
-
-<para>
-Quasi tutti i film vengono ripresi a 24 fps. Dato che NTSC è 30000/1001 fps,
-si devono eseguire alcune elaborazioni affinché questo video a 24 fps sia
-letto al giusto framerate NTSC. Il processo è chiamato "3:2 pulldown", meglio
-conosciuto come "telecine" (poiché pulldown viene spesso applicato durante il
-processo di telecine), e descritto rozzamente, agisce rallentando il film a
-24000/1001 fps, e ripetendo ogni quarto fotogramma.
-</para>
-
-<para>
-Non viene invece eseguita alcuna elaborazione sul video per i DVD PAL, che
-girano a 25 fps. (Tecnicamente, PAL può subire il telecine, chiamato
-"2:2 pulldown", ma non è usanza abituale.) Il film a 24 fps viene
-semplicemente riprodotto a 25 fps. Il risultato è che il filmato è leggermente
-più veloce, ma a meno che tu non sia un alieno, probabilmente non noterai la
-differenza.
-La maggior parte dei DVD PAL hanno audio corretto ai picchi, in modo che quando
-siano riprodotti a 25 fps le cose suonino giuste, anche se la traccia audio
-(e quindi tutto il filmato) ha un tempo di riproduzione che è il 4% inferiore
-ai DVD NTSC.
-</para>
-
-<para>
-A causa del fatto che il video nei DVD PAL non è stato alterato, non dovrai
-preoccuperti molto della frequenza fotogrammi. La sorgente è 25 fps, e il tuo
-rip sarà a 25 fps. Tuttavia, se stai codificando un film da DVD NTSC,
-potresti dover applicare il telecine inverso.
-</para>
-
-<para>
-Per film ripresi a 24 fps, il video sul DVD NTSC è o con telecine a 30000/1001,
-oppure è progressivo a 24000/1001 fps e destinato a subire il telecine al volo
-da un lettore DVD. D'altro canto le serie TV sono solitamente solo
-interlacciate, senza telecine. Questa non è una regola ferrea: alcune serie TV
-sono interlacciate (come Buffy the Vampire Slayer) mentre alcune sono un misto
-di progressivo e interlacciato (come Angel, o 24).
-</para>
-
-<para>
-Si consiglia vivamente di leggere la sezione su
-<link linkend="menc-feat-telecine">Come trattare il telecine e l'interlacciamento nei DVD NTSC</link>
-per imparare come gestire le varie possibilità.
-</para>
-
-<para>
-Ciononostante, se stai principalmente rippando solo film, solitamente ti
-troverai di fronte a video a 24 fps progressivo o con telecine, nel qual caso
-puoi usare il filtro <option>pullup</option> <option>-vf
-pullup,softskip</option>.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-encoding-interlaced">
-<title>Codificare video interlacciato</title>
-
-<para>
-Se il film che vuoi codificare è interlacciato (video NTSC o PAL) dovrai
-scegliere se vuoi de-interlacciare o no.
-Se da un lato de-interlacciare renderà il tuo filmato utilizzabile su
-schermi a scansione progressiva come monitor di computer o proiettori, porta
-con sé un costo: la frequenza dei campi di 50 o 60000/1001 campi al secondo
-viene dimezzata a 25 o 30000/1001 fotogrammi al secondo, e circa la metà delle
-informazioni nel tuo film saranno perdute, in scene con movimento significativo.
-</para>
-
-<para>
-Per di più, se stai codificando puntando ad alta qualità di archiviazione.
-si consiglia di non de-interlacciare.
-Puoi sempre de-interlacciare il film durante la riproduzione attraverso
-dispositivi a scansione progressiva.
-La potenza dei computer attuali forza per i riproduttori l'utilizzo di un filtro
-di de-interlacciamento, che porta un leggero degrado dell'immagine.
-Ma i lettori del futuro saranno in grado di simulare lo schermo di una TV,
-de-interlacciando a piena frequenza di campi e interpolando 50 o 60000/1001
-fotogrammi interi al secondo dal video interlacciato
-</para>
-
-<para>
-Bisogna porre speciale attenzione quando si lavora con video interlacciato:
-</para>
-
-<orderedlist>
-<listitem><para>
- Altezza e scostamento del taglio devono essere multipli di 4.
-</para></listitem>
-<listitem><para>
- Qualsiasi ridimensionamento verticale va fatto in modalità interlacciata.
-</para></listitem>
-<listitem><para>
- I filtri di post elaborazione e di rimozione disturbo potrebbero non
- funzionare come ci si aspetta a meno che tu non ponga particolare attenzione
- per farli lavorare su un campo per volta, e possono rovinare il video quando
- usati in modo non corretto.
-</para></listitem>
-</orderedlist>
-
-<para>
-Tenendo a mente queste cose, ecco il nostro primo esempio:
-<screen>
-mencoder <replaceable>capture.avi</replaceable> -mc 0 -oac lavc -ovc lavc -lavcopts \
- vcodec=mpeg2video:vbitrate=6000:ilme:ildct:acodec=mp2:abitrate=224
-</screen>
-Nota le opzioni <option>ilme</option> e <option>ildct</option>.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-av-sync">
-<title>Note sulla sincronizzazione Audio/Video</title>
-
-<para>
-Gli algoritmi di sincronizzazione audio/video di
-<application>MEncoder</application> sono stati progettati con l'intento di
-recuperare file con sincronia danneggiata.
-In alcuni casi tuttavia, possono generare inutili duplicazioni o scarti di
-fotogrammi, e possibilmente leggera desincronia A/V quando vengono usati con
-sorgenti buone (i problemi di sincronizzazione A/V accadono solo se elabori o
-copi la traccia audio mentre transcodifichi il video, il che è decisamente
-consigliato).
-Perciò potresti dover passare ad una sincronizzazione di base con l'opzione
-<option>-mc 0</option>, o metterla nel tuo file di configurazione
-<systemitem>~/.mplayer/mencoder</systemitem>, sempre che tu stia lavorando con
-buone sorgenti (DVD, acquisizione TV, rip MPEG-4 ad alta qualità, etc) e non
-con file ASF/RM/MOV rovinati.
-</para>
-
-<para>
-Se vuoi proteggerti ulteriormente da strani salti e duplicazioni di fotogrammi,
-puoi usare sia <option>-mc 0</option> che <option>-noskip</option>.
-Questo disabiliterà <emphasis>tutte</emphasis> le sincronizzazioni A/V, e
-copierà i fotogrammi uno ad uno, perciò è inutilizzabile se stai usando dei
-filtri che aggiungono o rimuovono arbitrariamente fotogrammi, ovvero se il
-tuo file sorgente ha una frequenza fotogrammi non costante!
-Quindi l'utilizzo di <option>-noskip</option> in linea di massima si sconsiglia.
-</para>
-
-<para>
-Si sa che la cosiddetta codifica audio in "tre passi", che
-<application>MEncoder</application> gestisce, può causare desincronizzazione
-A/V.
-Il che capiterà prontamente se viene usata insieme con alcuni filtri, per cui
-si consiglia di <emphasis>non</emphasis> usare la modalità audio a tre passi.
-Questa caratteristica viene lasciata solo per finalità di compatibilità e
-per utenti esperti che sanno quando sia adeguato usarla e quando no.
-Se non hai mai sentito parlar prima della modalità a tre passi, dimenticati
-di averla anche solo sentita nominare!
-</para>
-
-<para>
-Ci sono anche stati rapporti di desincronia A/V codificando con
-<application>MEncoder</application> da stdin.
-Non farlo! Usa sempre come ingresso un file o un dispositivo CD/DVD/etc.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-codec">
-<title>Scegliere il codec video</title>
-
-<para>
-Quale possa esere il miglior codec video dipende da molti fattori, come
-dimensione, qualità, possibilita di farne lo streaming, usabilit, diffusione,
-alcuni dei quali dipendono fortemente dai gusti personali e dalle variabili
-tecniche in gioco.
-</para>
-<itemizedlist>
-<listitem>
- <para>
- E' abbastanza facile da capire che i codec più recenti sono fatti per
- aumentare qualità e compressione.
- Quindi gli autori di questa guida e moltra altra gente suggeriscono che non
- potete sbagliare
- <footnote id='fn-menc-feat-dvd-mpeg4-codec-cpu'><para>
- Fai comunque attenzione: la decodifica di video MPEG-4 AVC a risoluzione DVD
- richiede una macchina veloce (per es. un Pentium 4 oltre 1.5GHz o un Pentium
- M superiore a 1GHz).
- </para></footnote>
- quando scegliete un qualche codec MPEG-4 AVC come
- <systemitem class="library">x264</systemitem> piuttosto che un codec MPEG-4
- ASP come l'MPEG-4 di <systemitem class="library">libavcodec</systemitem> o
- <systemitem class="library">Xvid</systemitem>.
- (Per sviluppatori avenzati di codec potrebbe essere interessante leggere
- l'opinione di Michael Niedermayer sul
- "<ulink url="http://guru.multimedia.cx/?p=10">perché MPEG-4 ASP faccia schifo</ulink>"
- (in inglese).)
- Analogamente dovresti ottenere una miglior qualità usando MPEG-4 ASP rispetto
- a quella ottenuta con codec MPEG-2.
- </para>
-
- <para>
- Tuttavia, i codec più recenti che sono sotto pesante sviluppo possono avere
- problemi che non sono ancora stati scoperti, e che possono rovinare una
- codifica.
- Questo è semplicemente il contrappasso per usare la tecnologia di punta.
- </para>
-
- <para>
- Inoltre iniziare ad utilizzare un codec nuovo richiede l'utilizzo di un po'
- di tempo per familiarizzare con le sue opzioni, affinché tu sappia cosa
- impostare per ottenere la qualità dell'immagine voluta.
- </para>
-</listitem>
-
-<listitem><para>
- <emphasis role="bold">Compatibilità Hardware</emphasis>:
- Solitamente ci va un po' di tempo prima che i lettori da tavolo incomincino ad
- includere il supporto per il video codec più recente.
- Il risultato è che la maggior parte legge MPEG-1 (come i VCD, XVCD e KVCD),
- MPEG-2 (come DVD, SVCD e KVCD) e MPEG-4 ASP (come DivX,
- LMP4 di <systemitem class="library">libavcodec</systemitem> e
- <systemitem class="library">Xvid</systemitem>)
- (attenzione: solitamente non sono gestite tutte le caratteristiche
- MPEG-4 ASP).
- Fai per favore riferimento alle specifiche tecniche del tuo lettore (ove
- disponibili) o cerca su internet per ulteriori informazioni.
-</para></listitem>
-
-<listitem>
- <para>
- <emphasis role="bold">Miglior qualità per tempo di codifica</emphasis>:
- Codec che sono in giro da parecchio tempo (come MPEG-4 di
- <systemitem class="library">libavcodec</systemitem> e
- <systemitem class="library">Xvid</systemitem>) sono spesso molto ottimizzati
- con ogni tipo di algoritmo furbo e codice SIMD in assembly.
- Per questo tendono a fornire il miglior rapporto tra qualità e tempo di
- codifica. Tuttavia, possono avere delle opzioni avanzate che, quando
- abilitate, rendono la codifica molto lenta fornendo poco guadagno.
- </para>
-
- <para>
- Se stai cercando di incrementare la velocità dovresti cercare di non
- modificare troppo le impostazioni di default del codec video (anche se
- dovresti comunque provare le altre opzioni che sono citate in altre sezioni
- di questa guida).
- </para>
-
- <para>
- Puoi tenere in considerazione anche la scelta di un codec che possa eseguire
- elaborazioni multi-thread, anche se ciò è utile solo per utenti di macchine
- con più di una CPU.
- MPEG-4 di <systemitem class="library">libavcodec</systemitem> lo permette,
- ma il guadagno in velocità è limitato, e c'è un leggere effetto negativo
- sulla qualità dell'immagine.
- La codifica multi-thread di <systemitem class="library">Xvid</systemitem>,
- attivata dall'opzione <option>threads</option>, può essere usata per
- accelerare la velocità di codifica &mdash; tipicamente di circa il 40-60%
- &mdash; con poco se non nessun degrado dell'immagine.
- Anche <systemitem class="library">x264</systemitem> permette la codifica in
- multi-thread, la quale attualmente velocizza la codifica del 94% per core di
- CPU mentre abbassa il PSNR tra 0.005dB e 0.01dB, con impostazioni tipiche.
- </para>
-</listitem>
-
-<listitem>
- <para>
- <emphasis role="bold">Gusto personale</emphasis>:
- Qui è dove capita l'irrazionale: per la stessa ragione per cui alcuni
- restano attaccati a DivX&nbsp;3 per anni, mentre nuovi codec stanno
- facendo meraviglie, alcuni personaggi preferiranno
- <systemitem class="library">Xvid</systemitem> o MPEG-4 di
- <systemitem class="library">libavcodec</systemitem> a
- <systemitem class="library">x264</systemitem>.
- </para>
- <para>
- Dovresti prendere le tue decisioni; non prendere consigli da gente che
- fanno giuramenti su un codec.
- Prendi alcuni pezzi di esempio da sorgenti grezze e compara le diverse
- opzioni di codifica e di codec per trovare quello che ti garba di più.
- Il miglior codec è quello che riesci a gestire al meglio, e quello che ai
- tuoi occhi e sul tuo schermo si vede meglio.
- <footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'><para>
- La stessa codifica potrebbe non apparire uguale sullo schermo di qualcun
- altro o se riprodotta con un decodificatore differente, perciò controlla
- i tuoi risultati riproducendoli in diverse condizioni.
- </para></footnote>!
- </para>
-</listitem>
-</itemizedlist>
-
-<para>
-Fai per favore riferimento alla sezione
-<link linkend="menc-feat-selecting-codec">selezionare codec e formati contenitore</link>
-per avere un elenco dei codec usabili.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-audio">
-<title>Audio</title>
-
-<para>
-L'audio è un problema di decisamente più facile soluzione: se ti interessa la
-qualità, lascialo semplicemente com'è.
-Anche i flussi AC-3 5.1 sono al massimo a 448Kbit/s, e ne valgono ogni bit.
-Potresti esser tentato di trascodificare l'audio in Vorbis ad alta qualità, ma
-solo perché a tutt'oggi non hai un decodificatore AC-3 pass-through ciò non
-significa che non ne avrai uno in futuro. Assicura un futuro ai tuoi rip da DVD
-preservando il flusso in AC-3.
-Puoi mantenere il flusso AC-3 anche copiandolo direttamente nel flusso video
-<link linkend="menc-feat-mpeg4">durante la codifica</link>.
-Puoi anche estrarre il flusso AC-3 al fine di farne il mux in contenitori come
-NUT o Matroska.
-<screen>
-mplayer <replaceable>file_sorgente.vob</replaceable> -aid 129 -dumpaudio -dumpfile <replaceable>suono.ac3</replaceable>
-</screen>
-effettuerà il dump della traccia audio numero 129 dal file
-<replaceable>file_sorgente.vob</replaceable> nel file
-<replaceable>suono.ac3</replaceable> (NB: i file VOB da DVD spesso usano una
-numerazione dell'audio diversa, il che significa che la traccia audio 129 è la
-seconda traccia del file).
-</para>
-
-<para>
-Alcune volte invece, non hai davvero altra scelta se non comprimere
-ulteriormente il suono per poter usare più bit per il video.
-La maggior parte delle persone sceglie di comprimere l'audio con i codec MP3
-ovvero Vorbis.
-Mentre quest'ultimo è un codec decisamente efficiente per lo spazio, MP3 è
-meglio supportato dai lettori da tavolo, anche se la situazione sta cambiando.
-</para>
-
-<para>
-<emphasis>Non</emphasis> usare <option>-nosound</option> mentre codifichi un
-file con dell'audio, anche se farai la codifica e il mux dell'audio
-separatamente in seguito.
-Anche se potesse andar bene in casi ideali, facilmente usare
-<option>-nosound</option> nasconderà alcuni problemi nelle tue impostazioni di
-codifica sulla riga comando.
-In altre parole mantenere la colonna sonora durante la codifica ti assicura,
-a patto che tu non veda messaggi del tipo
-<quote>Troppi pacchetti audio nel buffer</quote>, di ottenere un'adeguata
-sincronizzazione.
-</para>
-
-<para>
-Devi fare in modo che <application>MEncoder</application> processi il suono.
-Puoi per esempio copiare la colonna sonora originaria durante la codifica con
-<option>-oac copy</option>, o convertirla in un "leggero" PCM WAV mono a 4 kHz
-con <option>-oac pcm -channels 1 -srate 4000</option>.
-In caso contrario in alcuni casi verrà generato un file video che sarà
-desincronizzato con l'audio.
-Casi del genere sono quelli in cui il numero dei fotogrammi video nel file di
-origine non corrisponde alla lunghezza totale dei fotogrammi audio oppure
-ogniqualvolta vi siano delle discontinuità/splice in cui mancano o ci sono
-fotogrammi audio in più.
-Il modo giusto di gestire questo tipo di problemi è inserire del silenzio o
-tagliare l'audio in quei punti.
-Tuttavia <application>MPlayer</application> non è in grado di farlo, per cui se
-fai il demux dell'audio AC-3 e lo codifichi con un'altro programma (o ne fai il
-dump in PCM con <application>MPlayer</application>), gli splice rimarranno
-sbagliati e l'unico modo per correggerli è scartare/duplicare fotogrammi video
-nel punto di splice.
-Fintantochè <application>MEncoder</application> vede l'audio mentre codifica il
-video, può eseguire questo scarto/duplicazione (che solitamente è OK, dato che
-capita con scene nere o cambi scena), ma se <application>MEncoder</application>
-non vede l'audio, processerà i fotogrammi così come sono e alla fine non
-corrisponderanno al flusso audio finale quando per esempio inserirai i flussi
-audio e video dentro a un file Matroska.
-</para>
-
-<para>
-Prima di tutto dovrai convertire l'audio DVD in un file WAV che il codec audio
-possa usare come ingresso.
-Per esempio:
-<screen>
-mplayer <replaceable>file_sorgente.vob</replaceable> -ao pcm:file=<replaceable>suono_destinazione.wav</replaceable> \
- -vc dummy -aid 1 -vo null
-</screen>
-eseguirà il dump della seconda traccia audio dal file
-<replaceable>file_sorgente.vob</replaceable> sul file
-<replaceable>suono_destinazione.wav</replaceable>.
-Potresti voler normalizzare il suono prima della codifica, visto che le tracce
-audio dei DVD spesso sono registrate a volumi bassi.
-Puoi usare per esempio lo strumento <application>normalize</application>, che
-è disponibile nella maggior parte delle distribuzioni.
-Se stai usando Windows, lo stesso mestiere lo può fare uno strumento tipo
-<application>BeSweet</application>.
-Effettuerai la compressione in Vorbis ovvero in MP3.
-
-Per esempio:
-<screen>oggenc -q1 <replaceable>suono_destinazione.wav</replaceable></screen>
-codificherà <replaceable>suono_destinazione.wav</replaceable> con qualità
-di codifica 1, che equivale circa a 80Kb/s, ed è la qualità minima in cui
-dovresti codificare se ti interessa la qualità.
-Fai per favore attenzione che attualmente <application>MEncoder</application>
-non è in grado di fare il mux di tracce audio Vorbis nel file di uscita,
-perché gestisce solo contenitori AVI e MPEG in uscita, ognuno dei quali può
-portare a problemi di sincronizzazione audio/video durante la riproduzione con
-alcuni lettori quando il file AVI contiene flussi audio VBR come Vorbis.
-Non preoccuparti, questa documentazione ti mostrerà come tu possa farlo
-comunque con programmi di terze parti.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-muxing">
-<title>Muxing</title>
-
-<para>
-Ora che hai codificato il tuo video, vorrai verosimilmente farne il mux in un
-contenitore di filmati con una o più tracce audio, come AVI, MPEG, Matroska o
-NUT.
-<application>MEncoder</application> è attualmente in grado di generare in modo
-nativo solo video in formati contenitore MPEG o AVI.
-Per esempio:
-<screen>
-mencoder -oac copy -ovc copy -o <replaceable>film_in_uscita.avi</replaceable> \
- -audiofile <replaceable>audio_in_ingresso.mp2</replaceable> <replaceable>video_in_ingresso.avi</replaceable>
-</screen>
-Questo miscelerà i file video <replaceable>video_in_ingresso.avi</replaceable>
-e audio <replaceable>audio_in_ingresso.mp2</replaceable> nel file AVI
-<replaceable>film_in_uscita.avi</replaceable>.
-Questo comando funziona con audio MPEG-1 layer I, II e III (più comunemente
-conosciuto come MP3), WAV e qualche altro formato audio.
-</para>
-
-<para>
-<application>MEncoder</application> vanta un supporto sperimentale per
-<systemitem class="library">libavformat</systemitem>, che è una libreria del
-progetto FFmpeg che può fare il mux e il demux di svariati contenitori.
-Per esempio:
-<screen>
-mencoder -oac copy -ovc copy -o <replaceable>film_di_uscita.asf</replaceable> -audiofile <replaceable>audio_in_ingresso.mp2</replaceable> \
- <replaceable>video_in_ingresso.avi</replaceable> -of lavf -lavfopts format=asf
-</screen>
-Questo farà la stessa cosa dell'esempio precedente, trannce che il contenitore
-di uscita sarà ASF.
-Per favore nota che questo supporto è altamente sperimentale (ma migliora di
-giorno in giorno), e funzionerà solo se hai compilato
-<application>MPlayer</application> con il supporto per
-<systemitem class="library">libavformat</systemitem> abilitato (il che
-significa che una versione precompilata nella maggior parte dei casi non
-funzionerà).
-</para>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-muxing-filter-issues">
-<title>Migliorare il mux e l'affidabilità di sincronizzazione A/V</title>
-
-<para>
-Potresti avere dei seri problemi di sincronizzazione cercando di fare il mux
-del tuo video con alcune tracce audio, indipendentemente da come tu corregga il
-ritardo audio, non otterrai mai una sincronia corretta.
-Ciò potrebbe succedere quando usi un qualche filtro video che scarti o duplichi
-alcuni fotogrammi, come il filtro di telecine inverso.
-Si consiglia vivamente di appendere il filtro video <option>harddup</option>
-alla fine della catena dei filtri, per evitare questo tipo di problema.
-</para>
-
-<para>
-Senza <option>harddup</option>, se <application>MEncoder</application> vuole
-duplicare un fotogramma, chiede al muxer di mettere un segno sul contenitore
-affinché l'ultimo fotogramma venga mostrato di nuovo per mantenere la
-sincronia, senza scriverne effettivamente alcuno.
-Con <option>harddup</option>, <application>MEncoder</application> farà
-semplicemente passare di nuovo l'ultimo fotogramma nella catena di filtri.
-Questo significa che il codificatore riceve <emphasis>esattamente</emphasis> lo
-stesso fotogramma due volte, e lo comprime.
-Ciò genera un file leggermente più grosso, ma non causerà problemi
-effettuando il demux o il remux in altri formati contenitore.
-</para>
-
-<para>
-Potresti non avere altra scelta che usare <option>harddup</option> con formati
-contenitore che non siano così legati a <application>MEncoder</application>
-come quelli gestiti attraverso
-<systemitem class="library">libavformat</systemitem>, e che possano non gestire
-la duplicazione fotogrammi a livello contenitore.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-muxing-avi-limitations">
-<title>Limitazioni del contenitore AVI</title>
-
-<para>
-Anche se AVI è il formato contenitore più ampiamente gestito dopo MPEG-1, ha
-anche molti gravi inconvenienti.
-Forse il più ovvio è lo spreco di banda.
-Per ogni blocco del file AVI, 24 byte sono sprecati per intestazione e indice.
-Questo porta a poco più di 5 MB per ora, o 1-2.5% di dimensione supplementare
-per un film da 700 MB. Potrebbe non sembrare poi così tanto, ma potrebbe far
-la differenza tra poter utilizzare 700 oppure 714 kbit/sec per il video, e ogni
-bit è importante per la qualità.
-</para>
-
-<para>
-Oltre a questa grave inefficenza, AVI ha anche le grandi limitazioni che
-seguono:
-</para>
-
-<orderedlist>
-<listitem><para>
- Può essere immagazzinato solo contenuto a fps costanti. Questo è decisamente
- limitante se il materiale di origine che vuoi codificare è contenuto misto,
- per esempio un misto di video NTSC e film.
- Ci sono invero alcuni trucchi che possono essere usati per salvare negli AVI
- contenuto a frequenza di fotogrammi mista, ma aumentano il (già immenso)
- spreco di banda di cinque volte o giù di lì e quindi non sono pratici.
-</para></listitem>
-<listitem><para>
- L'audio nei file AVI deve essere a bitrate costante (CBR) o a dimensione di
- fotogramma fissa (per es. tutti i fotogrammi decodificano lo stesso numero di
- campioni).
- Sfortunatamente, il codec più efficente, Vorbis, non ha alcuna delle suddette
- caratteristiche.
- Se decidi di salvare il tuo film in AVI, dovrai perciò usare un codec meno
- efficente, come MP3 o AC-3.
-</para></listitem>
-</orderedlist>
-
-<para>
-Detto tutto ciò, <application>MEncoder</application> non gestisce attualmente
-la codifica in uscita a fps variabile o la codifica in Vorbis.
-Quindi non noterai le limitazioni su citate se
-<application>MEncoder</application> è l'unico strumento che userai per produrre
-le tue codifiche.
-Tuttavia è possibile usare <application>MEncoder</application> solo per la
-codifica del video, e poi utilizzare strumenti di terze parti per codificare
-l'audio e farne il mux in un altro formato contenitore.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-dvd-mpeg4-muxing-matroska">
-<title>Mux nel contenitore Matroska</title>
-
-<para>
-Matroska è un formato contenitore libero, a standard aperti, che punta ad
-offrire molte caratteristiche avanzate, che contenitori più vecchi come AVI non
-sono in grado di manipolare.
-Per esempio Matroska supporta contenuto audio a bitrate variabile (VBR),
-frequenza fotogrammi variabile (VFR), capitoli, file allegati, codice di
-gestione errori (EDC) e Codec A/V moderni come "Advanced Audio Coding" (AAC),
-"Vorbis" or "MPEG-4 AVC" (H.264), comparato al nulla gestito da AVI.
-</para>
-
-<para>
-Gli strumenti necessari per creare file Matroska sono chiamati nel loro insieme
-<application>mkvtoolnix</application> e sono disponibili per la maggior parte
-delle piattaforme Unix, così come per <application>Windows</application>.
-Dato che Matroska è uno standard aperto, potresti trovare altri strumenti che
-ti tornino più utili, ma dato che mkvtoolnix è il più diffuso, ed è
-supportato dal team stesso di Matroska, illustreremo il suo solo utilizzo.
-</para>
-
-<para>
-Probabilmente il modo più semplice di avvicinarsi a Matroska è utilizzare
-<application>MMG</application>, il frontend grafico fornito con
-<application>mkvtoolnix</application>, e seguire la <ulink url="http://www.bunkus.org/videotools/mkvtoolnix/doc/mkvmerge-gui.html">guida della GUI di mkvmerge (mmg)</ulink>.
-</para>
-
-<para>
-Puoi anche fare il mux dei file audio e video usando la riga comando:
-<screen>
-mkvmerge -o <replaceable>destinazione.mkv</replaceable> <replaceable>video_sorgente.avi</replaceable> <replaceable>audio_sorgente1.mp3</replaceable> <replaceable>audio_sorgente2.ac3</replaceable>
-</screen>
-Questo unirà il file video <replaceable>video_sorgente.avi</replaceable> e i
-due file audio <replaceable>audio_sorgente1.mp3</replaceable> e
-<replaceable>audio_sorgente2.ac3</replaceable> nel file Matroska
-<replaceable>destinazione.mkv</replaceable>.
-Matroska, come detto precedentemente, è in grado di far molto più di questo,
-come tracce audio multiple (inclusa una fine sincronia audio/video), capitoli,
-sottotitoli, salti, etc...
-Fai per favore riferimento alla documentazione di queste applicazioni per
-maggiori delucidazioni.
-</para>
-</sect3>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-telecine">
-<title>Come trattare telecine e interlacciamento nei DVD NTSC</title>
-
-<sect2 id="menc-feat-telecine-intro">
-<title>Introduzione</title>
-
-<formalpara>
-<title>Cos'è telecine?</title>
-<para>
-Se non comprendi molto quello che è scritto in questo documento, leggi la
-<ulink url="http://en.wikipedia.org/wiki/Telecine">definizione di telecine su Wikipedia</ulink>
-(<ulink url="http://en.wikipedia.org/wiki/Telecine">pagina inglese</ulink>).
-E' una descrizione comprensibile e ragionevolmente completa di cosa si indichi
-con telecine.
-</para></formalpara>
-
-<formalpara>
-<title>Una nota riguardo i numeri.</title>
-<para>
-Molti documenti, inclusa la guida su indicata, fanno riferimento al valore dei
-campi per secondo del video NTSC come 59.94 e i valori corrispondenti di
-fotogrammi al secondo come 29.97 (con telecine e interlacciamento) e 23.976
-(per il progressivo). Per semplicità alcune documentazioni arrotondano tali
-cifre a 60, 30 e 24.
-</para></formalpara>
-
-<para>
-Strettamente parlando, tutti questi numeri sono approssimati. Il video NTSC in
-bianco e nero era esattamente 60 campi al secondo, ma successivamente venne
-scelto 60000/1001 per incastrare i dati del colore e rimanere compatibili con
-le televisioni bianco e nero contemporanee. Anche il video NTSC digitale (come
-quello sui DVD) è a 60000/1001 campi al secondo. Da ciò discende che il video
-interlacciato e telecine è 30000/1001 fotogrammi al secondo; il video
-progressivo è 24000/1001 fotogrammi al secondo.
-</para>
-
-<para>
-Precedenti versioni della documentazioni di <application>MEncoder</application>
-a molti post archiviati della mailig list fanno riferimento a 59.94, 29.97 e
-23.976.
-Tutta la documentazioni di <application>MEncoder</application> è stata
-aggiornata per usare i valori in frazione, e anche tu dovresti usare questi.
-</para>
-
-<para>
-<option>-ofps 23.976</option> è sbagliato.
-<option>-ofps 24000/1001</option> dovrebbe invece essere usato.
-</para>
-
-<formalpara>
-<title>Come viene usato telecine.</title>
-<para>
-Tutto il video pensato per essere riprodotto su televisione NTSC deve essere a
-60000/1001 campi al secondo. I film per la TV e gli spettacoli sono spesso
-registrati direttamente a 60000/1001 campi al secondo, ma la stragrande
-maggioranzna dei film per cinema è filmata a 24 o 24000/1001 fotogrammi al
-secondo. Quando i film da cinema vengono masterizzati su DVD, il video viene
-quindi convertito per la televisione usando un processo chiamato telecine
-(o telecinema).
-</para></formalpara>
-
-<para>
-Su un DVD il video non è praticamente mai memorizzato con 60000/1001 campi al
-secondo. Per un video che originariamente era 60000/1001, ogni coppia di campi
-viene combinata in un fotogramma, risultando in 30000/1001 fotogrammi al
-secondo. I lettori DVD hardware leggono quindi un parametro codificato nel
-flusso video pe rdeterminare se le linee pari o quelle dispari debbano formare
-il primo campo.
-</para>
-
-<para>
-Solitamente il contenuto a 24000/1001 fotogrammi per secondi resta così com'è
-quando viene codificato per un DVD, e il lettore DVD deve eseguire il telecine
-al momento. Alcune volte invece, il video subisce il telecine
-<emphasis>prima</emphasis> di essere scritto su DVD; anche se in origine era a
-24000/1001 fotogrammi al secondi, diventa 60000/1001 campi al secondo. Quando
-viene memorizzato su DVD, le coppie di campi vengono assemblate per formare
-30000/1001 fotogrammi al secondo.
-</para>
-
-<para>
-Guardando i singoli fotogrammi generati da video a 60000/1001 campi al secondo,
-che sia telecine o no, l'interlacciamento è chiaramente visibile ovunque vi sia
-del movimento, dato che un campo (diciamo le linee pari) rappresenta un istante
-nel tempo 1/(60000/1001) secondi dopo l'altro. Riprodurre video interlacciato
-su un computer risulta brutto sia perché il monitor ha una risoluzione maggiore
-sia perché il video viene mostrato un fotogramma dopo l'altro invece che un
-campo dopo l'altro.
-</para>
-
-<itemizedlist>
-<title>Note:</title>
-<listitem><para>
- Questa sezione si applica solo ai DVD NTSC, e non a quelli PAL.
-</para></listitem>
-<listitem><para>
- Le righe di esempio per <application>MEncoder</application> proposte nella
- documentazione <emphasis role="bold">non</emphasis> sono pensate per un
- utilizzo reale. Sono solo quelle minimali richieste per codificare la
- relativa categoria di video. Come fare buoni rip di DVD o configurare bene
- <systemitem class="library">libavcodec</systemitem> per la massima qualità
- non è lo scopo di questa documentazione.
-</para></listitem>
-<listitem><para>
- Ci sono alcune note a piè di pagina specifiche di questa guida, così
- indicate:
- <link linkend="menc-feat-telecine-footnotes">[1]</link>
-</para></listitem>
-</itemizedlist>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-telecine-ident">
-<title>Come scoprire il tipo di video che possiedi</title>
-
-<sect3 id="menc-feat-telecine-ident-progressive">
-<title>Progressivo</title>
-
-<para>
-Il video progressivo è stato originariamente filmato a 24000/1001 fps, e
-memorizzato sul DVD senza modifica alcuna.
-</para>
-
-<para>
-Quando riproduci un DVD progressivo con <application>MPlayer</application>,
-<application>MPlayer</application> emette la riga seguente appena il video
-inizia la riproduzione:
-<screen>
-demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate.
-</screen>
-Da qui in poi, demux_mpg non dovrebbe mai comunicare di aver trovato
-"30000/1001 fps NTSC content" (contenuto NTSC a 30000/1001 fps).
-</para>
-
-<para>
-Quando guardi video progressivo, non dovresti mai vedere alcuna interlacciatura.
-Fai tuttavia attenzione, poiché alcune volte c'è una piccola parte in telecine
-infilata dove non te la aspetteresti. Ho trovato alcuni DVD di spettacoli
-televisivi che hanno un secondo di telecine ad ogni cambio di scena, o anche in
-momenti casuali. Una volta ho guardato un DVD che aveva una prima parte
-progressiva e la seconda in telecine. Se vuoi esserne
-<emphasis>davvero</emphasis> certo, devi controllare tutto il video:
-<screen>mplayer dvd://1 -nosound -vo null -benchmark</screen>
-Using <option>-benchmark</option> makes
-L'utilizzo di <option>-benchmark</option> fa sì che
-<application>MPlayer</application> riproduca il filmato il più velocemente
-possibile; tuttavia, in dipendenza dal tuo hardware, può metterci un po'.
-Ogni volta che demux_mpg segnala un cambio nella frequenza fotogrammi
-(framerate), la linea immediatamente sopra ti dirà il tempo ove è cambiata.
-</para>
-
-<para>
-Alcune volte il video progressivo sui DVD viene indicato come "soft-telecine"
-perché è fatto in modo che il lettore DVD esegua il telecine.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-ident-telecined">
-<title>Telecine</title>
-
-<para>
-Il video in telecine è stato filmato in origine a 24000/1001, ma ha subito il
-telecine <emphasis>prima</emphasis> di essere scritto sul DVD.
-</para>
-
-<para>
-Quando <application>MPlayer</application> riproduce video in telecine non
-segnala (mai) alcun cambio di framerate.
-</para>
-
-<para>
-Guardado un video in telecine, noterai artefatti che sembrano "lampeggiare":
-appaiono e scompaiono ripetutamente.
-Puoi notarlo meglio facendo quello che segue
-<orderedlist>
-<listitem><screen>mplayer dvd://1</screen></listitem>
-<listitem><para>
- Ricerca una parte con movimento.
-</para></listitem>
-<listitem><para>
- Usa il tasto <keycap>.</keycap> per avanzare di un fotogramma per volta.
-</para></listitem>
-<listitem><para>
- Guarda il pattern dei fotogrammi che paiono interlacciati e di quelli
- progressivi. Se il pattern che vedi è PPPII,PPPII,PPPII,... allora il video
- è in telecine. Se vedi qualche altro pattern, allora il video può aver
- subito il telecine attraverso qualche metodo strano;
- <application>MEncoder</application> può effettuare la conversione senza
- perdita da telecine non standard a progressivo. Se non vedi alcun pattern,
- allora molto probabilmente è interlacciato.
-</para></listitem>
-</orderedlist>
-</para>
-
-<para>
-Alcune volte il video in telecine sui DVD viene indicato come "hard-telecine".
-Dato che l'hard-telecine è già a 60000/1001 campi al secondi, il lettore DVD
-riproduce il video senza elaborazione alcuna.
-</para>
-
-<para>
-Un altro modo per scoprire se la tua sorgente è in telecine o no è riprodurla
-con le opzioni <option>-vf pullup</option> e <option>-v</option> da riga
-comando per vedere come <option>pullup</option> relaziona i fotogrammi.
-Se la sorgente è in telecine, dovresti vedere sulla console un pattern 3:2 con
-<systemitem>0+.1.+2</systemitem> e <systemitem>0++1</systemitem> che si
-alternano.
-Questa tecnica ha il vantaggio di evitare di guardare la sorgente per doverla
-identificare, il che può tornare utile se vuoi automatizzare la procedura di
-codifica ovvero se vuoi eseguire tale procedura in remoto su una connessione
-lenta.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-ident-interlaced">
-<title>Interlacciato</title>
-
-<para>
-Il video interlacciato è stato filmato in origine a 60000/1001 campi al
-secondo ed è memorizzato sul DVD a 30000/1001 fotogrammi al secondo. L'effetto
-di interlacciatura (spesso chimato "combing") è un risultato di coppie di
-campi che vengono combinate in fotogrammi. Ogni campo è spostato di
-1/(60000/1001) secondi e quando vengono mostrati contemporaneamente la
-differenza si nota.
-</para>
-
-<para>
-Come per il video in telecine, <application>MPlayer</application> non dovrebbe
-mai segnalare alcun cambio di framerete, riproducendo contenuto interlacciato.
-</para>
-
-<para>
-Quando guardi attentamente un video interlacciato avanzando fotogramma per
-fotogramma col tasto <keycap>.</keycap>, noterai che ogni singolo fotogramma è
-interlacciato.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-ident-mixedpt">
-<title>Progressivo e telecine mescolati</title>
-
-<para>
-Tutto il contenuto di un video "progressivo e telecine mescolati" è stato
-in origine filmato a 24000/1001 fotogrammi al secondo, ma alcune parti alla
-fine hanno subito il telecine.
-</para>
-
-<para>
-Quando <application>MPlayer</application> riproduce questa tipologia di video
-salta (spesso ripetutamente) avanti e indietro tra "30000/1001 fps NTSC" e
-"24000/1001 fps progressive NTSC". Controlla le ultime righe dell'emissione di
-<application>MPlayer</application> per vedere questi messaggi.
-</para>
-
-<para>
-Dovresti controllare le sezioni "30000/1001 fps NTSC" per assicurarti che siano
-davvero in telecine e non solamente interlacciate.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-ident-mixedpi">
-<title>Progressivo e interlacciato mescolati</title>
-
-<para>
-Nei contenuti con video "progressivo e interlacciato mescolati", il video
-progressivo e interlacciato sono mescolati tra loro.
-</para>
-
-<para>
-Questa categoria è decisamente simile a "progressivo e telecine mescolati",
-fino a quando non controlli le parti a 30000/1001 fps e scopri che non hanno
-il pattern del telecine.
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-telecine-encode">
-<title>Come codificare ciascuna categoria</title>
-<para>
-Come menzionato all'inizio, le linee di esempio qui sotto per
-<application>MEncoder</application> <emphasis role="bold">non</emphasis> sono
-pensate per essere usate davvero; dimostrano solamente i parametri minimi per
-codificare correttamente ciascuna categoria.
-</para>
-
-
-<sect3 id="menc-feat-telecine-encode-progressive">
-<title>Progressivo</title>
-<para>
-Il video progressivo non richiede particolari filtri per la codifica. L'unico
-parametrioche devi assicurarti di usare è <option>-ofps 24000/1001</option>.
-Se non lo usi, <application>MEncoder</application> cercherà di codificare a
-30000/1001 fps e duplicherà i fotogrammi.
-</para>
-
-<para>
-<screen>mencoder dvd://1 -oac copy -ovc lavc -ofps 24000/1001</screen>
-</para>
-
-<para>
-Spesso e volentieri capita che un video che sembra progressivo contenga anche
-alcune brevi parti di telecine mescolate. A meno che tu non sia sicuro,
-conviene trattare il video come
-<link linkend="menc-feat-telecine-encode-mixedpt">progressivo e telecine mescolati</link>.
-Il calo di prestazioni è piccolo
-<link linkend="menc-feat-telecine-footnotes">[3]</link>.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-encode-telecined">
-<title>Telecine</title>
-
-<para>
-Il telecine può essere invertito per ricavare il contenuto originario a
-24000/1001 usando un processo conosciuto come telecine-inverso.
-<application>MPlayer</application> include vari filtri per ottenere ciò;
-il filtro migliore, <option>pullup</option>, è descritto nella sezione
-<link linkend="menc-feat-telecine-encode-mixedpt">progressivo e telecine
-mescolati</link>.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-encode-interlaced">
-<title>Interlacciato</title>
-
-<para>
-Nella maggior parte dei casi reali non è possibile ricavare un video
-progressivo completo da contenuto interlacciato. L'unico modo di farlo senza
-perdere metà della risoluzione verticale è raddoppiare il framerate e provare
-ad "indovinare" quello che forma le linee corrispondenti per ogni campo
-(questo ha delle controindicazioni - vedi il metodo 3).
-</para>
-
-<orderedlist>
-<listitem><para>
- Codifica il video in forma interlacciata. Normalmente l'interlacciatura fa a
- pugni con l'abilità del codificatore di comprimere bene, ma
- <systemitem class="library">libavcodec</systemitem> ha due parametri
- appositamente per gestire un pochino meglio il video interlacciato:
- <option>ildct</option> e <option>ilme</option>. Inoltre viene caldamente
- consigliato l'utilizzo di <option>mbd=2</option>
- <link linkend="menc-feat-telecine-footnotes">[2] </link> poiché
- codificherà i macroblocchi come non interlacciati in posti dove non c'è
- movimento. Nota che <option>-ofps</option> qui NON serve.
- <screen>mencoder dvd://1 -oac copy -ovc lavc -lavcopts ildct:ilme:mbd=2</screen>
-</para></listitem>
-<listitem><para>
- Usa un filtro di de-interlacciatura prima della codifica. Ci sono vari filtri
- disponibili tra cui scegliere, ognuno dei quali con i suoi pro e i suoi
- contro. Controlla <option>mplayer -pphelp</option> e
- <option>mplayer -vf help</option> per vedere cosa c'è disponibile
- (fa in grep per "deint"), leggi il <ulink url="http://guru.multimedia.cx/deinterlacing-filters/">confronto tra filtri di deinterlacciatura
- (Deinterlacing filters comparison)</ulink> di Michael Niedermayer, e cerca
- nelle <ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
- mailing list di MPlayer</ulink> per trovare discussioni riguardanti i vari
- filtri.
- Di nuovo il framerate non cambia, indi niente <option>-ofps</option>.
- Inoltre, la deinterlacciatura dovrebbe essere eseguita dopo il ritaglio
- <link linkend="menc-feat-telecine-footnotes">[1]</link> e prima del
- ridimensionamento.
- <screen>mencoder dvd://1 -oac copy -vf yadif -ovc lavc</screen>
-</para></listitem>
-<listitem><para>
- Sfortunatamente, quest'opzione non funziona bene con
- <application>MEncoder</application>; dovrebbe funzionar bene con
- <application>MEncoder G2</application>, ma ancora non esiste. Puoi subire
- dei crash. Tuttavia l'obiettivo di <option>-vf tfields</option> è di
- generare un fotogramma completo da ogni campo, portando il framerate a
- 60000/1001. Il vantaggio di questo approccio è che non viene mai perso alcun
- dato; d'altro canto, dato che ogni fotogramma deriva da un solo campo, le
- righe mancanti devono essere interpolate in qualche modo. Non ci sono metodi
- veramente validi per ricreare i dati mancanti, quindi il risultato apparirà
- molto simile a quando vengono usati dei filtri di deinterlacciatura.
- La generazione delle righe che mancano è foriera di altri problemi,
- solamente per il fatto che i dati sono raddoppiati. Conseguentemente per
- mantenere la qualità si rendono necessari bitrate più elevati e viene usata
- una maggior potenza di CPU sia per la codifica che la decodifica.
- tfields ha varie opzioni su come generare le righe mancanti di ogni
- fotogramma. Se usi questo metodo, fai riferimento al manuale, e scegli
- l'opzione che può andar meglio per il tuo materiale sorgente. Fai attenzione
- che usando <option>tfields</option> <emphasis role="bold">devi</emphasis>
- specificare sia <option>-fps</option> che <option>-ofps</option> pari al
- doppio della sorgente originaria.
- <screen>
-mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc \
- -fps 60000/1001 -ofps 60000/1001<!--
- --></screen>
-</para></listitem>
-<listitem><para>
- Se conti di ridurre drasticamente le dimensioni puoi estrarre e decodificare
- sono uno dei due campi. Perderai di sicuro metà della risoluzione verticale,
- ma se pensi di ridurla almeno a 1/2 dell'originale, la perdità non sarà poi
- molta. Il risultato sarà un file progressivo a 30000/1001 fotogrammi per
- secondo. La procedura è utilizzare <option>-vf field</option>, poi crop
- <link linkend="menc-feat-telecine-footnotes">[1]</link> e scale in modo
- corretto. Ricorda che dovrai correggere scale per compensare la risoluzione
- verticale dimezzata.
- <screen>mencoder dvd://1 -oac copy -vf field=0 -ovc lavc</screen>
-</para></listitem>
-</orderedlist>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-encode-mixedpt">
-<title>Progressivo e telecine mescolati</title>
-
-<para>
-Per poter portare un video progressivo e telecine mescolati in un video
-completamente progressivo, le parti in telecine devono essere passate in
-telecine inverso. Ci son tre modi per ottenere ciò, e sono descritti qui sotto.
-Nota che dovresti <emphasis role="bold">sempre</emphasis> effettuare il
-telecine inverso prima di ogni ridimensionamento; a meno che tu non sappia
-davvero cosa tu stia facendo, applica il telecine inverso anche prima del ritaglio (crop)
-<link linkend="menc-feat-telecine-footnotes">[1]</link>.
-In questo caso serve <option>-ofps 24000/1001</option> perché il video in
-uscita sarà a 24000/1001 fotogrammi al secondo.
-</para>
-
-<itemizedlist>
-<listitem><para>
- <option>-vf pullup</option> è studiata per togliere il telecine da materiale
- in telecine lasciando stare le parti in progressivo. Per poter funzionare
- correttamente, <option>pullup</option> <emphasis role="bold">deve</emphasis>
- essere seguita dal filtro <option>softskip</option> altrimenti
- <application>MEncoder</application> andrà in crash.
- <option>pullup</option> è tuttavia il modo migliore e più preciso disponibile
- per codificare sia telecine che "progressivo e telecine mescolati".
- <screen>
-mencoder dvd://1 -oac copy -vf pullup,softskip
- -ovc lavc -ofps 24000/1001<!--
- --></screen>
-</para></listitem>
-<listitem><para>
- Un metodo più vecchio, invece di togliere il telecine dove c'è, è portare
- in telecine le parti che non lo sono e dopo invertire il telecine su tutto il
- video. Sembra incasinato? softpulldown è un filtro che prende tutto il video
- e lo porta in telecine. Se facciamo seguire a softpulldown
- <option>detc</option> oppure <option>ivtc</option>, il risultato finale sarà
- completamente progressivo. Serve <option>-ofps 24000/1001</option>.
- <screen>
-mencoder dvd://1 -oac copy -vf softpulldown,ivtc=1 -ovc lavc -ofps 24000/1001
- </screen>
-</para></listitem>
-
-<listitem><para>
- Non ho usato <option>-vf filmdint</option>, ma questa è l'opinione che ne ha
- D Richard Felker III:
-
- <blockquote><para>E' OK, ma IMO cerca troppo spesso di deinterlacciare
- piuttosto che invertire il telecine (come molti lettori DVD da tavolo &amp;
- televisioni progressive), il che porta orrendi sfarfallii e altri
- artefatti. Se vuoi utilizzarlo devi perlomeno spendere un po' di tempo ad
- impostare le opzioni e controllare i risultati prima di esser certo che non
- faccia danni.
- </para></blockquote>
-</para></listitem>
-</itemizedlist>
-</sect3>
-
-
-<sect3 id="menc-feat-telecine-encode-mixedpi">
-<title>Progressivo e interlacciato mescolati</title>
-
-<para>
-Ci sono due opzioni per gestire questa categoria, ognuna delle quali è un
-compromesso. Dovresti decidere basandoti sulla lunghezza/durata di uno dei due
-tipi.
-</para>
-
-<itemizedlist>
-<listitem>
- <para>
- Trattarlo come progressivo. Le parti interlacciate sembreranno interlacciate,
- e alcuni dei campi interlacciati dovranno essere scartati, apportando un
- pelino di saltellamenti impari. Se vuoi puoi utilizzare un filtro di
- postelaborazione, ma potrebbe leggermente inficiare le parti progressive.
- </para>
-
- <para>
- Questa opzione non sarebbe decisamente da usare se casomai ti interessi
- riprodurre il video su un dispositivo interlacciato (con una sche da TV, per
- esempio). Se hai fotogrammi interlacciati in un video a 24000/1001 fotogrammi
- al secondo, verranno messi in telecine con i fotogrammi progressivi.
- Metà dei "fotogrammi" interlacciati saranno mostrati per la durata di tre
- campi (3/(60000/1001) secondi), risultando in un effetto alla "salto indietro
- nel tempo" che è bruttino. Se solo provi a far in questo modo,
- <emphasis role="bold">devi</emphasis> usare in filtro di deinterlacciamento
- come <option>lb</option> o <option>l5</option>.
- </para>
-
- <para>
- Può anche essere una brutta idea per un display progressivo. Scarterà coppie
- di campi interlacciati consecutivi, dando una discontinuità che si vede
- maggiormente con il secondo metodo, che mostra per due volte alcuni
- fotogrammi progressivi. Il video interlacciato a 30000/1001 fotogrammi per
- secondo è di suo un pochino zoppo dato che sarebbe da mostrare a 60000/1001
- campi al secondo, quindi i fotogrammi duplicati non si notano così tanto.
- </para>
-
- <para>
- In ogni modo è meglio tenere in considerazione il tuo contenuto e come
- intendi riprodurlo. Se il tuo video è al 90% progressivo e non pensi di
- riprodurlo mai su una TV, dovresti propendere per l'approccio progressivo.
- Se è progressivo solo per metà, probabilmente ti converrà codificarlo come
- se fosse interlacciato.
- </para>
-</listitem>
-
-<listitem><para>
- Trattarlo come interlacciato. Alcuni fotogrammi delle parti progressive
- verranno duplicati, portando saltelli impari. Ancora, i filtri di
- deinterlacciamento potrebbero inficiare le parti progressive.
-</para></listitem>
-</itemizedlist>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-telecine-footnotes">
-<title>Note a pie' pagina</title>
-
-<orderedlist>
-<listitem>
- <formalpara>
- <title>Riguardo il taglio (crop):</title>
- <para>
- I dati video sui DVD sono memorizzati in un formato conosciuto come YUV 4:2:0.
- In un video YUV, la luminosità ("luma") e il colore ("chroma") vengono
- salvati separatamente. Dato che l'occhio umano è in qualche modo meno
- sensibile al colore che alla luminosità, in un'immagine YUV 4:2:0 c'è solo
- un pixel chroma ogni quattro pixel luma. In un'immagine progressiva, ogni
- quadrato di quattro pixel luma (due per lato) ha in comune un pixel chroma.
- Devi prima ridimensionare lo YUV 4:2:0 progressivo a una risoluzione pari, e
- anche utilizzare lo scostamento. Per esempio,
- <option>crop=716:380:2:26</option> è OK ma
- <option>crop=716:380:3:26 </option> non lo è.
- </para>
- </formalpara>
-
- <para>
- Quando gestisci YUV 4:2:0 interlacciato, la situazione è un pelo più
- complessa. Invece di avere quattro pixel luma nel
- <emphasis>fotogramma</emphasis> che condividono un pixel chroma, quattro
- pixel in ogni <emphasis>campo</emphasis> condividono un pixel chroma.
- Quando i campi vengono interlacciati per formare un fotogramma, ogni
- "scanline" è alta un pixel. Ora, invece di avere tutti i quattro pixel luma
- in un quadrato, ci sono due pixel affiancati, e gli altri due pixel sono
- affiancati due scanline più sotto. I due pixel luma nella scanline di mezzo
- sono di un altro campo, e quindi condividono un pixel chroma differente con
- due pixel due scanline dopo. Tutta questa confusione rende necessario avere
- dimensione verticale pari e lo scostamento deve essere un multiplo di quattro.
- La dimensione orizzontale può rimanere dispari.
- </para>
-
- <para>
- Per video in telecine, si consiglia di effettuare il taglio dopo l'inversione
- del telecine. Una volta che il video è progressivo ti serve solo tagliare di
- numeri dispari. Se davvero vuoi ottenere il piccolo aumento di velocità che
- puoi avere tagliando prima, devi prima tagliare in verticale di multipli di
- quattro, altrimenti il filtro di telecine inverso non riceverà dati corretti.
- </para>
-
- <para>
- Per video interlacciato (non in telecine), devi sempre tagliare
- verticalmente di multipli di quattro a meno che tu non stia usando
- <option>-vf field</option> prima del taglio.
- </para>
-</listitem>
-
-<listitem><formalpara>
- <title>Riguardo i parameti di codifica e la qualità:</title>
- <para>
- Il fatto che qui venga cosigliata <option>mbd=2</option> non significa che
- non si debba usare altrimenti. Insieme con <option>trell</option>,
- <option>mbd=2</option> è una delle due opzioni di
- <systemitem class="library">libavcodec</systemitem> che ottimizzano al
- meglio la qualità e sarebbero sempre da utilizzare entrambe a meno che
- l'aumento della velocità di codifica sua proibitivo (ad es. per la codifica
- in tempo reale (realtime)). Ci sono molte altre opzioni di
- <systemitem class="library">libavcodec</systemitem> che aumentano la
- qualità (e rallentano la codifica), ma questo non è l'obiettivo di
- questa documentaziione.
- </para>
-</formalpara></listitem>
-
-<listitem><formalpara>
- <title>About the performance of pullup:</title>
- <para>
- It is safe to use <option>pullup</option> (along with <option>softskip
- </option>) on progressive video, and is usually a good idea unless
- the source has been definitively verified to be entirely progressive.
- The performace loss is small for most cases. On a bare-minimum encode,
- <option>pullup</option> causes <application>MEncoder</application> to
- be 50% slower. Adding sound processing and advanced <option>lavcopts
- </option> overshadows that difference, bringing the performance
- decrease of using <option>pullup</option> down to 2%.
- </para>
-</formalpara></listitem>
-</orderedlist>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-enc-libavcodec">
-<title>Encoding with the <systemitem class="library">libavcodec</systemitem>
- codec family</title>
-
-<para>
-<systemitem class="library">libavcodec</systemitem>
-provides simple encoding to a lot of interesting video and audio formats.
-You can encode to the following codecs (more or less up to date):
-</para>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-enc-libavcodec-video-codecs">
-<title><systemitem class="library">libavcodec</systemitem>'s
- video codecs</title>
-
-<para>
-<informaltable frame="all">
-<tgroup cols="2">
-<thead>
- <row><entry>Video codec name</entry><entry>Description</entry></row>
-</thead>
-<tbody>
-<row>
- <entry>mjpeg</entry>
- <entry>Motion JPEG</entry>
-</row>
-<row>
- <entry>ljpeg</entry>
- <entry>lossless JPEG</entry>
-</row>
-<row>
- <entry>jpegls</entry>
- <entry>JPEG LS</entry>
-</row>
-<row>
- <entry>targa</entry>
- <entry>Targa image</entry>
-</row>
-<row>
- <entry>gif</entry>
- <entry>GIF image</entry>
-</row>
-<row>
- <entry>bmp</entry>
- <entry>BMP image</entry>
-</row>
-<row>
- <entry>png</entry>
- <entry>PNG image</entry>
-</row>
-<row>
- <entry>h261</entry>
- <entry>H.261</entry>
-</row>
-<row>
- <entry>h263</entry>
- <entry>H.263 </entry>
-</row>
-<row>
- <entry>h263p</entry>
- <entry>H.263+</entry>
-</row>
-<row>
- <entry>mpeg4</entry>
- <entry>ISO standard MPEG-4 (DivX, Xvid compatible)</entry>
-</row>
-<row>
- <entry>msmpeg4</entry>
- <entry>pre-standard MPEG-4 variant by MS, v3 (AKA DivX3)</entry>
-</row>
-<row>
- <entry>msmpeg4v2</entry>
- <entry>pre-standard MPEG-4 by MS, v2 (used in old ASF files)</entry>
-</row>
-<row>
- <entry>wmv1</entry>
- <entry>Windows Media Video, version 1 (AKA WMV7)</entry>
-</row>
-<row>
- <entry>wmv2</entry>
- <entry>Windows Media Video, version 2 (AKA WMV8)</entry>
-</row>
-<row>
- <entry>rv10</entry>
- <entry>RealVideo 1.0</entry>
-</row>
-<row>
- <entry>rv20</entry>
- <entry>RealVideo 2.0</entry>
-</row>
-<row>
- <entry>mpeg1video</entry>
- <entry>MPEG-1 video</entry>
-</row>
-<row>
- <entry>mpeg2video</entry>
- <entry>MPEG-2 video</entry>
-</row>
-<row>
- <entry>huffyuv</entry>
- <entry>lossless compression</entry>
-</row>
-<row>
- <entry>ffvhuff</entry>
- <entry>FFmpeg modified huffyuv lossless</entry>
-</row>
-<row>
- <entry>asv1</entry>
- <entry>ASUS Video v1</entry>
-</row>
-<row>
- <entry>asv2</entry>
- <entry>ASUS Video v2</entry>
-</row>
-<row>
- <entry>ffv1</entry>
- <entry>FFmpeg's lossless video codec</entry>
-</row>
-<row>
- <entry>svq1</entry>
- <entry>Sorenson video 1</entry>
-</row>
-<row>
- <entry>flv</entry>
- <entry>Sorenson H.263 used in Flash Video</entry>
-</row>
-<row>
- <entry>flashsv</entry>
- <entry>Flash Screen Video</entry>
-</row>
-<row>
- <entry>dvvideo</entry>
- <entry>Sony Digital Video</entry>
-</row>
-<row>
- <entry>snow</entry>
- <entry>FFmpeg's experimental wavelet-based codec</entry>
-</row>
-<row>
- <entry>zbmv</entry>
- <entry>Zip Blocks Motion Video</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-
-The first column contains the codec names that should be passed after the
-<literal>vcodec</literal> config,
-like: <option>-lavcopts vcodec=msmpeg4</option>
-</para>
-
-<informalexample><para>
-An example with MJPEG compression:
-<screen>
-mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vcodec=mjpeg -oac copy
-</screen>
-</para></informalexample>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-enc-libavcodec-audio-codecs">
-<title><systemitem class="library">libavcodec</systemitem>'s
- audio codecs</title>
-
-<para>
-<informaltable frame="all">
-<tgroup cols="2">
-<thead>
-<row><entry>Audio codec name</entry><entry>Description</entry></row>
-</thead>
-<tbody>
-<row>
- <entry>ac3</entry>
- <entry>Dolby Digital (AC-3)</entry>
-</row>
-<row>
- <entry>adpcm_*</entry>
- <entry>Adaptive PCM formats - see supplementary table</entry>
-</row>
-<row>
- <entry>flac</entry>
- <entry>Free Lossless Audio Codec (FLAC)</entry>
-</row>
-<row>
- <entry>g726</entry>
- <entry>G.726 ADPCM</entry>
-</row>
-<row>
- <entry>libfaac</entry>
- <entry>Advanced Audio Coding (AAC) - using FAAC</entry>
-</row>
-<row>
- <entry>libgsm</entry>
- <entry>ETSI GSM 06.10 full rate</entry>
-</row>
-<row>
- <entry>libgsm_ms</entry>
- <entry>Microsoft GSM</entry>
-</row>
-<row>
- <entry>libmp3lame</entry>
- <entry>MPEG-1 audio layer 3 (MP3) - using LAME</entry>
-</row>
-<row>
- <entry>mp2</entry>
- <entry>MPEG-1 audio layer 2 (MP2)</entry>
-</row>
-<row>
- <entry>pcm_*</entry>
- <entry>PCM formats - see supplementary table</entry>
-</row>
-<row>
- <entry>roq_dpcm</entry>
- <entry>Id Software RoQ DPCM</entry>
-</row>
-<row>
- <entry>sonic</entry>
- <entry>experimental FFmpeg lossy codec</entry>
-</row>
-<row>
- <entry>sonicls</entry>
- <entry>experimental FFmpeg lossless codec</entry>
-</row>
-<row>
- <entry>vorbis</entry>
- <entry>Vorbis</entry>
-</row>
-<row>
- <entry>wmav1</entry>
- <entry>Windows Media Audio v1</entry>
-</row>
-<row>
- <entry>wmav2</entry>
- <entry>Windows Media Audio v2</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-
-The first column contains the codec names that should be passed after the
-<literal>acodec</literal> option, like: <option>-lavcopts acodec=ac3</option>
-</para>
-
-<informalexample><para>
-An example with AC-3 compression:
-<screen>
-mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -oac lavc -lavcopts acodec=ac3 -ovc copy
-</screen>
-</para></informalexample>
-
-<para>
-Contrary to <systemitem class="library">libavcodec</systemitem>'s video
-codecs, its audio codecs do not make a wise usage of the bits they are
-given as they lack some minimal psychoacoustic model (if at all)
-which most other codec implementations feature.
-However, note that all these audio codecs are very fast and work
-out-of-the-box everywhere <application>MEncoder</application> has been
-compiled with <systemitem class="library">libavcodec</systemitem> (which
-is the case most of time), and do not depend on external libraries.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-lavc-encoding-options">
-<title>Encoding options of libavcodec</title>
-
-<para>
-Ideally, you would probably want to be able to just tell the encoder to switch
-into "high quality" mode and move on.
-That would probably be nice, but unfortunately hard to implement as different
-encoding options yield different quality results depending on the source
-material. That is because compression depends on the visual properties of the
-video in question.
-For example, anime and live action have very different properties and
-thus require different options to obtain optimum encoding.
-The good news is that some options should never be left out, like
-<option>mbd=2</option>, <option>trell</option>, and <option>v4mv</option>.
-See below for a detailed description of common encoding options.
-</para>
-
-<itemizedlist>
-<title>Options to adjust:</title>
-<listitem><para>
- <emphasis role="bold">vmax_b_frames</emphasis>: 1 or 2 is good, depending on
- the movie.
- Note that if you need to have your encode be decodable by DivX5, you
- need to activate closed GOP support, using
- <systemitem class="library">libavcodec</systemitem>'s <option>cgop</option>
- option, but you need to deactivate scene detection, which
- is not a good idea as it will hurt encode efficiency a bit.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vb_strategy=1</emphasis>: helps in high-motion scenes.
- On some videos, vmax_b_frames may hurt quality, but vmax_b_frames=2 along
- with vb_strategy=1 helps.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">dia</emphasis>: motion search range. Bigger is better
- and slower.
- Negative values are a completely different scale.
- Good values are -1 for a fast encode, or 2-4 for slower.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">predia</emphasis>: motion search pre-pass.
- Not as important as dia. Good values are 1 (default) to 4. Requires preme=2
- to really be useful.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">cmp, subcmp, precmp</emphasis>: Comparison function for
- motion estimation.
- Experiment with values of 0 (default), 2 (hadamard), 3 (dct), and 6 (rate
- distortion).
- 0 is fastest, and sufficient for precmp.
- For cmp and subcmp, 2 is good for anime, and 3 is good for live action.
- 6 may or may not be slightly better, but is slow.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">last_pred</emphasis>: Number of motion predictors to
- take from the previous frame.
- 1-3 or so help at little speed cost.
- Higher values are slow for no extra gain.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">cbp, mv0</emphasis>: Controls the selection of
- macroblocks. Small speed cost for small quality gain.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">qprd</emphasis>: adaptive quantization based on the
- macroblock's complexity.
- May help or hurt depending on the video and other options.
- This can cause artifacts unless you set vqmax to some reasonably small value
- (6 is good, maybe as low as 4); vqmin=1 should also help.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">qns</emphasis>: very slow, especially when combined
- with qprd.
- This option will make the encoder minimize noise due to compression
- artifacts instead of making the encoded video strictly match the source.
- Do not use this unless you have already tweaked everything else as far as it
- will go and the results still are not good enough.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vqcomp</emphasis>: Tweak ratecontrol.
- What values are good depends on the movie.
- You can safely leave this alone if you want.
- Reducing vqcomp puts more bits on low-complexity scenes, increasing it puts
- them on high-complexity scenes (default: 0.5, range: 0-1. recommended range:
- 0.5-0.7).
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vlelim, vcelim</emphasis>: Sets the single coefficient
- elimination threshold for luminance and chroma planes.
- These are encoded separately in all MPEG-like algorithms.
- The idea behind these options is to use some good heuristics to determine
- when the change in a block is less than the threshold you specify, and in
- such a case, to just encode the block as "no change".
- This saves bits and perhaps speeds up encoding. vlelim=-4 and vcelim=9
- seem to be good for live movies, but seem not to help with anime;
- when encoding animation, you should probably leave them unchanged.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">qpel</emphasis>: Quarter pixel motion estimation.
- MPEG-4 uses half pixel precision for its motion search by default,
- therefore this option comes with an overhead as more information will be
- stored in the encoded file.
- The compression gain/loss depends on the movie, but it is usually not very
- effective on anime.
- qpel always incurs a significant cost in CPU decode time (+25% in
- practice).
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">psnr</emphasis>: does not affect the actual encoding,
- but writes a log file giving the type/size/quality of each frame, and
- prints a summary of PSNR (Peak Signal to Noise Ratio) at the end.
-</para></listitem>
-</itemizedlist>
-
-<itemizedlist>
-<title>Options not recommended to play with:</title>
-<listitem><para>
- <emphasis role="bold">vme</emphasis>: The default is best.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">lumi_mask, dark_mask</emphasis>: Psychovisual adaptive
- quantization.
- You do not want to play with those options if you care about quality.
- Reasonable values may be effective in your case, but be warned this is very
- subjective.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">scplx_mask</emphasis>: Tries to prevent blocky
- artifacts, but postprocessing is better.
-</para></listitem>
-</itemizedlist>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-mpeg4-lavc-example-settings">
-<title>Encoding setting examples</title>
-
-<para>
-The following settings are examples of different encoding
-option combinations that affect the speed vs quality tradeoff
-at the same target bitrate.
-</para>
-
-<para>
-All the encoding settings were tested on a 720x448 @30000/1001 fps
-video sample, the target bitrate was 900kbps, and the machine was an
-AMD-64 3400+ at 2400 MHz in 64 bits mode.
-Each encoding setting features the measured encoding speed (in
-frames per second) and the PSNR loss (in dB) compared to the "very
-high quality" setting.
-Please understand that depending on your source, your machine type
-and development advancements, you may get very different results.
-</para>
-
-<para>
-<informaltable frame="all">
-<tgroup cols="4">
-<thead>
-<row>
- <entry>Description</entry>
- <entry>Encoding options</entry>
- <entry>speed (in fps)</entry>
- <entry>Relative PSNR loss (in dB)</entry>
-</row>
-</thead>
-<tbody>
-<row>
- <entry>Very high quality</entry>
- <entry><option>vcodec=mpeg4:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vmax_b_frames=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:qns=2</option></entry>
- <entry>6fps</entry>
- <entry>0dB</entry>
-</row>
-<row>
- <entry>High quality</entry>
- <entry><option>vcodec=mpeg4:mbd=2:trell:v4mv:last_pred=2:dia=-1:vmax_b_frames=2:vb_strategy=1:cmp=3:subcmp=3:precmp=0:vqcomp=0.6:turbo</option></entry>
- <entry>15fps</entry>
- <entry>-0.5dB</entry>
-</row>
-<row>
- <entry>Fast</entry>
- <entry><option>vcodec=mpeg4:mbd=2:trell:v4mv:turbo</option></entry>
- <entry>42fps</entry>
- <entry>-0.74dB</entry>
-</row>
-<row>
- <entry>Realtime</entry>
- <entry><option>vcodec=mpeg4:mbd=2:turbo</option></entry>
- <entry>54fps</entry>
- <entry>-1.21dB</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="custommatrices">
-<title>Custom inter/intra matrices</title>
-
-<para>
-With this feature of
-<systemitem class="library">libavcodec</systemitem>
-you are able to set custom inter (I-frames/keyframes) and intra
-(P-frames/predicted frames) matrices. It is supported by many of the codecs:
-<systemitem>mpeg1video</systemitem> and <systemitem>mpeg2video</systemitem>
-are reported as working.
-</para>
-
-<para>
-A typical usage of this feature is to set the matrices preferred by the
-<ulink url="http://www.kvcd.net/">KVCD</ulink> specifications.
-</para>
-
-<para>
-The <emphasis role="bold">KVCD "Notch" Quantization Matrix:</emphasis>
-</para>
-
-<para>
-Intra:
-<screen>
- 8 9 12 22 26 27 29 34
- 9 10 14 26 27 29 34 37
-12 14 18 27 29 34 37 38
-22 26 27 31 36 37 38 40
-26 27 29 36 39 38 40 48
-27 29 34 37 38 40 48 58
-29 34 37 38 40 48 58 69
-34 37 38 40 48 58 69 79
-</screen>
-
-Inter:
-<screen>
-16 18 20 22 24 26 28 30
-18 20 22 24 26 28 30 32
-20 22 24 26 28 30 32 34
-22 24 26 30 32 32 34 36
-24 26 28 32 34 34 36 38
-26 28 30 32 34 36 38 40
-28 30 32 34 36 38 42 42
-30 32 34 36 38 40 42 44
-</screen>
-</para>
-
-<para>
-Usage:
-<screen>
-mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replaceable> -oac copy -ovc lavc \
- -lavcopts inter_matrix=...:intra_matrix=...
-</screen>
-</para>
-
-<para>
-<screen>
-mencoder <replaceable>input.avi</replaceable> -ovc lavc -lavcopts \
-vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,\
-12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26,27,29,36,39,38,40,48,27,\
-29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79\
-:inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,\
-28,30,32,34,22,24,26,30,32,32,34,36,24,26,28,32,34,34,36,38,26,28,30,32,34,\
-36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg
-</screen>
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-dvd-mpeg4-example">
-<title>Example</title>
-
-<para>
-So, you have just bought your shiny new copy of Harry Potter and the Chamber
-of Secrets (widescreen edition, of course), and you want to rip this DVD
-so that you can add it to your Home Theatre PC. This is a region 1 DVD,
-so it is NTSC. The example below will still apply to PAL, except you will
-omit <option>-ofps 24000/1001</option> (because the output framerate is the
-same as the input framerate), and of course the crop dimensions will be
-different.
-</para>
-
-<para>
-After running <option>mplayer dvd://1</option>, we follow the process
-detailed in the section <link linkend="menc-feat-telecine">How to deal
-with telecine and interlacing in NTSC DVDs</link> and discover that it is
-24000/1001 fps progressive video, which means that we need not use an inverse
-telecine filter, such as <option>pullup</option> or
-<option>filmdint</option>.
-</para>
-
-<para id="menc-feat-dvd-mpeg4-example-crop">
-Next, we want to determine the appropriate crop rectangle, so we use the
-cropdetect filter:
-<screen>mplayer dvd://1 -vf cropdetect</screen>
-Make sure you seek to a fully filled frame (such as a bright scene,
-past the opening credits and logos), and
-you will see in <application>MPlayer</application>'s console output:
-<screen>crop area: X: 0..719 Y: 57..419 (-vf crop=720:362:0:58)</screen>
-We then play the movie back with this filter to test its correctness:
-<screen>mplayer dvd://1 -vf crop=720:362:0:58</screen>
-And we see that it looks perfectly fine. Next, we ensure the width and
-height are a multiple of 16. The width is fine, however the height is
-not. Since we did not fail 7th grade math, we know that the nearest
-multiple of 16 lower than 362 is 352.
-</para>
-
-<para>
-We could just use <option>crop=720:352:0:58</option>, but it would be nice
-to take a little off the top and a little off the bottom so that we
-retain the center. We have shrunk the height by 10 pixels, but we do not
-want to increase the y-offset by 5-pixels since that is an odd number and
-will adversely affect quality. Instead, we will increase the y-offset by
-4 pixels:
-<screen>mplayer dvd://1 -vf crop=720:352:0:62</screen>
-Another reason to shave pixels from both the top and the bottom is that we
-ensure we have eliminated any half-black pixels if they exist. Note that if
-your video is telecined, make sure the <option>pullup</option> filter (or
-whichever inverse telecine filter you decide to use) appears in the filter
-chain before you crop. If it is interlaced, deinterlace before cropping.
-(If you choose to preserve the interlaced video, then make sure your
-vertical crop offset is a multiple of 4.)
-</para>
-
-<para>
-If you are really concerned about losing those 10 pixels, you might
-prefer instead to scale the dimensions down to the nearest multiple of 16.
-The filter chain would look like:
-<screen>-vf crop=720:362:0:58,scale=720:352</screen>
-Scaling the video down like this will mean that some small amount of
-detail is lost, though it probably will not be perceptible. Scaling up will
-result in lower quality (unless you increase the bitrate). Cropping
-discards those pixels altogether. It is a tradeoff that you will want to
-consider for each circumstance. For example, if the DVD video was made
-for television, you might want to avoid vertical scaling, since the line
-sampling corresponds to the way the content was originally recorded.
-</para>
-
-<para>
-On inspection, we see that our movie has a fair bit of action and high
-amounts of detail, so we pick 2400Kbit for our bitrate.
-</para>
-
-<para>
-We are now ready to do the two pass encode. Pass one:
-<screen>
-mencoder dvd://1 -ofps 24000/1001 -oac copy -o <replaceable>Harry_Potter_2.avi</replaceable> -ovc lavc \
- -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:autoaspect:vpass=1 \
- -vf pullup,softskip,crop=720:352:0:62,hqdn3d=2:1:2
-</screen>
-And pass two is the same, except that we specify <option>vpass=2</option>:
-<screen>
-mencoder dvd://1 -ofps 24000/1001 -oac copy -o <replaceable>Harry_Potter_2.avi</replaceable> -ovc lavc \
- -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:autoaspect:vpass=2 \
- -vf pullup,softskip,crop=720:352:0:62,hqdn3d=2:1:2
-</screen>
-</para>
-
-<para>
-The options <option>v4mv:mbd=2:trell</option> will greatly increase the
-quality at the expense of encoding time. There is little reason to leave
-these options out when the primary goal is quality. The options
-<option>cmp=3:subcmp=3</option> select a comparison function that
-yields higher quality than the defaults. You might try experimenting with
-this parameter (refer to the man page for the possible values) as
-different functions can have a large impact on quality depending on the
-source material. For example, if you find
-<systemitem class="library">libavcodec</systemitem> produces too much
-blocky artifacting, you could try selecting the experimental NSSE as
-comparison function via <option>*cmp=10</option>.
-</para>
-
-<para>
-For this movie, the resulting AVI will be 138 minutes long and nearly
-3GB. And because you said that file size does not matter, this is a
-perfectly acceptable size. However, if you had wanted it smaller, you
-could try a lower bitrate. Increasing bitrates have diminishing
-returns, so while we might clearly see an improvement from 1800Kbit to
-2000Kbit, it might not be so noticeable above 2000Kbit. Feel
-free to experiment until you are happy.
-</para>
-
-<para>
-Because we passed the source video through a denoise filter, you may want
-to add some of it back during playback. This, along with the
-<option>spp</option> post-processing filter, drastically improves the
-perception of quality and helps eliminate blocky artifacts in the video.
-With <application>MPlayer</application>'s <option>autoq</option> option,
-you can vary the amount of post-processing done by the spp filter
-depending on available CPU. Also, at this point, you may want to apply
-gamma and/or color correction to best suit your display. For example:
-<screen>
-mplayer <replaceable>Harry_Potter_2.avi</replaceable> -vf spp,noise=9ah:5ah,eq2=1.2 -autoq 3
-</screen>
-</para>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-xvid">
-<title>Encoding with the <systemitem class="library">Xvid</systemitem>
- codec</title>
-
-<para>
-<systemitem class="library">Xvid</systemitem> is a free library for
-encoding MPEG-4 ASP video streams.
-Before starting to encode, you need to <link linkend="xvid">
-set up <application>MEncoder</application> to support it</link>.
-</para>
-
-<para>
-This guide mainly aims at featuring the same kind of information
-as x264's encoding guide.
-Therefore, please begin by reading
-<link linkend="menc-feat-x264-encoding-options-intro">the first part</link>
-of that guide.
-</para>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-xvid-intro">
-<title>What options should I use to get the best results?</title>
-
-<para>
-Please begin by reviewing the
-<systemitem class="library">Xvid</systemitem> section of
-<application>MPlayer</application>'s man page.
-This section is intended to be a supplement to the man page.
-</para>
-
-<para>
-The Xvid default settings are already a good tradeoff between
-speed and quality, therefore you can safely stick to them if
-the following section puzzles you.
-</para>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-xvid-encoding-options">
-<title>Encoding options of <systemitem class="library">Xvid</systemitem></title>
-
-<itemizedlist>
-<listitem><para>
- <emphasis role="bold">vhq</emphasis>
- This setting affects the macroblock decision algorithm, where the
- higher the setting, the wiser the decision.
- The default setting may be safely used for every encode, while
- higher settings always help PSNR but are significantly slower.
- Please note that a better PSNR does not necessarily mean
- that the picture will look better, but tells you that it is
- closer to the original.
- Turning it off will noticeably speed up encoding; if speed is
- critical for you, the tradeoff may be worth it.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">bvhq</emphasis>
- This does the same job as vhq, but does it on B-frames.
- It has a negligible impact on speed, and slightly improves quality
- (around +0.1dB PSNR).
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">max_bframes</emphasis>
- A higher number of consecutive allowed B-frames usually improves
- compressibility, although it may also lead to more blocking artifacts.
- The default setting is a good tradeoff between compressibility and
- quality, but you may increase it up to 3 if you are bitrate-starved.
- You may also decrease it to 1 or 0 if you are aiming at perfect
- quality, though in that case you should make sure your
- target bitrate is high enough to ensure that the encoder does not
- have to increase quantizers to reach it.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">bf_threshold</emphasis>
- This controls the B-frame sensitivity of the encoder, where a higher
- value leads to more B-frames being used (and vice versa).
- This setting is to be used together with <option>max_bframes</option>;
- if you are bitrate-starved, you should increase both
- <option>max_bframes</option> and <option>bf_threshold</option>,
- while you may increase <option>max_bframes</option> and reduce
- <option>bf_threshold</option> so that the encoder may use more
- B-frames in places that only <emphasis role="bold">really</emphasis>
- need them.
- A low number of <option>max_bframes</option> and a high value of
- <option>bf_threshold</option> is probably not a wise choice as it
- will force the encoder to put B-frames in places that would not
- benefit from them, therefore reducing visual quality.
- However, if you need to be compatible with standalone players that
- only support old DivX profiles (which only supports up to 1
- consecutive B-frame), this would be your only way to
- increase compressibility through using B-frames.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">trellis</emphasis>
- Optimizes the quantization process to get an optimal tradeoff
- between PSNR and bitrate, which allows significant bit saving.
- These bits will in return be spent elsewhere on the video,
- raising overall visual quality.
- You should always leave it on as its impact on quality is huge.
- Even if you are looking for speed, do not disable it until you
- have turned down <option>vhq</option> and all other more
- CPU-hungry options to the minimum.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">hq_ac</emphasis>
- Activates a better coefficient cost estimation method, which slightly
- reduces filesize by around 0.15 to 0.19% (which corresponds to less
- than 0.01dB PSNR increase), while having a negligible impact on speed.
- It is therefore recommended to always leave it on.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">cartoon</emphasis>
- Designed to better encode cartoon content, and has no impact on
- speed as it just tunes the mode decision heuristics for this type
- of content.
-</para></listitem>
-<listitem>
- <para>
- <emphasis role="bold">me_quality</emphasis>
- This setting is to control the precision of the motion estimation.
- The higher <option>me_quality</option>, the more
- precise the estimation of the original motion will be, and the
- better the resulting clip will capture the original motion.
- </para>
- <para>
- The default setting is best in all cases;
- thus it is not recommended to turn it down unless you are
- really looking for speed, as all the bits saved by a good motion
- estimation would be spent elsewhere, raising overall quality.
- Therefore, do not go any lower than 5, and even that only as a last
- resort.
- </para>
-</listitem>
-<listitem><para>
- <emphasis role="bold">chroma_me</emphasis>
- Improves motion estimation by also taking the chroma (color)
- information into account, whereas <option>me_quality</option>
- alone only uses luma (grayscale).
- This slows down encoding by 5-10% but improves visual quality
- quite a bit by reducing blocking effects and reduces filesize by
- around 1.3%.
- If you are looking for speed, you should disable this option before
- starting to consider reducing <option>me_quality</option>.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">chroma_opt</emphasis>
- Is intended to increase chroma image quality around pure
- white/black edges, rather than improving compression.
- This can help to reduce the "red stairs" effect.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">lumi_mask</emphasis>
- Tries to give less bitrate to part of the picture that the
- human eye cannot see very well, which should allow the encoder
- to spend the saved bits on more important parts of the picture.
- The quality of the encode yielded by this option highly depends
- on personal preferences and on the type and monitor settings
- used to watch it (typically, it will not look as good if it is
- bright or if it is a TFT monitor).
-</para></listitem>
-<listitem>
- <para>
- <emphasis role="bold">qpel</emphasis>
- Raise the number of candidate motion vectors by increasing
- the precision of the motion estimation from halfpel to
- quarterpel.
- The idea is to find better motion vectors which will in return
- reduce bitrate (hence increasing quality).
- However, motion vectors with quarterpel precision require a
- few extra bits to code, but the candidate vectors do not always
- give (much) better results.
- Quite often, the codec still spends bits on the extra precision,
- but little or no extra quality is gained in return.
- Unfortunately, there is no way to foresee the possible gains of
- <option>qpel</option>, so you need to actually encode with and
- without it to know for sure.
- </para>
- <para>
- <option>qpel</option> can be almost double encoding time, and
- requires as much as 25% more processing power to decode.
- It is not supported by all standalone players.
- </para>
-</listitem>
-<listitem><para>
- <emphasis role="bold">gmc</emphasis>
- Tries to save bits on panning scenes by using a single motion
- vector for the whole frame.
- This almost always raises PSNR, but significantly slows down
- encoding (as well as decoding).
- Therefore, you should only use it when you have turned
- <option>vhq</option> to the maximum.
- <systemitem class="library">Xvid</systemitem>'s GMC is more
- sophisticated than DivX's, but is only supported by few
- standalone players.
-</para></listitem>
-</itemizedlist>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-xvid-encoding-profiles">
-<title>Encoding profiles</title>
-
-<para>
-Xvid supports encoding profiles through the <option>profile</option> option,
-which are used to impose restrictions on the properties of the Xvid video
-stream such that it will be playable on anything which supports the
-chosen profile.
-The restrictions relate to resolutions, bitrates and certain MPEG-4
-features.
-The following table shows what each profile supports.
-</para>
-
-<informaltable>
-<tgroup cols="16" align="center">
-<colspec colnum="1" colname="col1"/>
-<colspec colnum="2" colname="col2"/>
-<colspec colnum="3" colname="col3"/>
-<colspec colnum="4" colname="col4"/>
-<colspec colnum="5" colname="col5"/>
-<colspec colnum="6" colname="col6"/>
-<colspec colnum="7" colname="col7"/>
-<colspec colnum="8" colname="col8"/>
-<colspec colnum="9" colname="col9"/>
-<colspec colnum="10" colname="col10"/>
-<colspec colnum="11" colname="col11"/>
-<colspec colnum="12" colname="col12"/>
-<colspec colnum="13" colname="col13"/>
-<colspec colnum="14" colname="col14"/>
-<colspec colnum="15" colname="col15"/>
-<colspec colnum="16" colname="col16"/>
-<colspec colnum="17" colname="col17"/>
-<spanspec spanname="spa2-5" namest="col2" nameend="col5"/>
-<spanspec spanname="spa6-11" namest="col6" nameend="col11"/>
-<spanspec spanname="spa12-17" namest="col12" nameend="col17"/>
-<tbody>
-<row>
- <entry></entry>
- <entry spanname="spa2-5">Simple</entry>
- <entry spanname="spa6-11">Advanced Simple</entry>
- <entry spanname="spa12-17">DivX</entry>
-</row>
-<row>
- <entry>Profile name</entry>
- <entry>0</entry>
- <entry>1</entry>
- <entry>2</entry>
- <entry>3</entry>
- <entry>0</entry>
- <entry>1</entry>
- <entry>2</entry>
- <entry>3</entry>
- <entry>4</entry>
- <entry>5</entry>
- <entry>Handheld</entry>
- <entry>Portable NTSC</entry>
- <entry>Portable PAL</entry>
- <entry>Home Theater NTSC</entry>
- <entry>Home Theater PAL</entry>
- <entry>HDTV</entry>
-</row>
-<row>
- <entry>Width [pixels]</entry>
- <entry>176</entry>
- <entry>176</entry>
- <entry>352</entry>
- <entry>352</entry>
- <entry>176</entry>
- <entry>176</entry>
- <entry>352</entry>
- <entry>352</entry>
- <entry>352</entry>
- <entry>720</entry>
- <entry>176</entry>
- <entry>352</entry>
- <entry>352</entry>
- <entry>720</entry>
- <entry>720</entry>
- <entry>1280</entry>
-</row>
-<row>
- <entry>Height [pixels]</entry>
- <entry>144</entry>
- <entry>144</entry>
- <entry>288</entry>
- <entry>288</entry>
- <entry>144</entry>
- <entry>144</entry>
- <entry>288</entry>
- <entry>288</entry>
- <entry>576</entry>
- <entry>576</entry>
- <entry>144</entry>
- <entry>240</entry>
- <entry>288</entry>
- <entry>480</entry>
- <entry>576</entry>
- <entry>720</entry>
-</row>
-<row>
- <entry>Frame rate [fps]</entry>
- <entry>15</entry>
- <entry>15</entry>
- <entry>15</entry>
- <entry>15</entry>
- <entry>30</entry>
- <entry>30</entry>
- <entry>15</entry>
- <entry>30</entry>
- <entry>30</entry>
- <entry>30</entry>
- <entry>15</entry>
- <entry>30</entry>
- <entry>25</entry>
- <entry>30</entry>
- <entry>25</entry>
- <entry>30</entry>
-</row>
-<row>
- <entry>Max average bitrate [kbps]</entry>
- <entry>64</entry>
- <entry>64</entry>
- <entry>128</entry>
- <entry>384</entry>
- <entry>128</entry>
- <entry>128</entry>
- <entry>384</entry>
- <entry>768</entry>
- <entry>3000</entry>
- <entry>8000</entry>
- <entry>537.6</entry>
- <entry>4854</entry>
- <entry>4854</entry>
- <entry>4854</entry>
- <entry>4854</entry>
- <entry>9708.4</entry>
-</row>
-<row>
- <entry>Peak average bitrate over 3 secs [kbps]</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>800</entry>
- <entry>8000</entry>
- <entry>8000</entry>
- <entry>8000</entry>
- <entry>8000</entry>
- <entry>16000</entry>
-</row>
-<row>
- <entry>Max. B-frames</entry>
- <entry>0</entry>
- <entry>0</entry>
- <entry>0</entry>
- <entry>0</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>0</entry>
- <entry>1</entry>
- <entry>1</entry>
- <entry>1</entry>
- <entry>1</entry>
- <entry>2</entry>
-</row>
-<row>
- <entry>MPEG quantization</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
-</row>
-<row>
- <entry>Adaptive quantization</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
-</row>
-<row>
- <entry>Interlaced encoding</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
-</row>
-<row>
- <entry>Quaterpixel</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
-</row>
-<row>
- <entry>Global motion compensation</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry>X</entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
- <entry></entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-xvid-example-settings">
-<title>Encoding setting examples</title>
-
-<para>
-The following settings are examples of different encoding
-option combinations that affect the speed vs quality tradeoff
-at the same target bitrate.
-</para>
-
-<para>
-All the encoding settings were tested on a 720x448 @30000/1001 fps
-video sample, the target bitrate was 900kbps, and the machine was an
-AMD-64 3400+ at 2400 MHz in 64 bits mode.
-Each encoding setting features the measured encoding speed (in
-frames per second) and the PSNR loss (in dB) compared to the "very
-high quality" setting.
-Please understand that depending on your source, your machine type
-and development advancements, you may get very different results.
-</para>
-
-<informaltable frame="all">
-<tgroup cols="4">
-<thead>
-<row><entry>Description</entry><entry>Encoding options</entry><entry>speed (in fps)</entry><entry>Relative PSNR loss (in dB)</entry></row>
-</thead>
-<tbody>
-<row>
- <entry>Very high quality</entry>
- <entry><option>chroma_opt:vhq=4:bvhq=1:quant_type=mpeg</option></entry>
- <entry>16fps</entry>
- <entry>0dB</entry>
-</row>
-<row>
- <entry>High quality</entry>
- <entry><option>vhq=2:bvhq=1:chroma_opt:quant_type=mpeg</option></entry>
- <entry>18fps</entry>
- <entry>-0.1dB</entry>
-</row>
-<row>
- <entry>Fast</entry>
- <entry><option>turbo:vhq=0</option></entry>
- <entry>28fps</entry>
- <entry>-0.69dB</entry>
-</row>
-<row>
- <entry>Realtime</entry>
- <entry><option>turbo:nochroma_me:notrellis:max_bframes=0:vhq=0</option></entry>
- <entry>38fps</entry>
- <entry>-1.48dB</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-x264">
-<title>Encoding with the
- <systemitem class="library">x264</systemitem> codec</title>
-
-<para>
-<systemitem class="library">x264</systemitem> is a free library for
-encoding H.264/AVC video streams.
-Before starting to encode, you need to
-<link linkend="x264">set up <application>MEncoder</application> to support it</link>.
-</para>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-x264-encoding-options">
-<title>Encoding options of x264</title>
-
-<para>
-Please begin by reviewing the
-<systemitem class="library">x264</systemitem> section of
-<application>MPlayer</application>'s man page.
-This section is intended to be a supplement to the man page.
-Here you will find quick hints about which options are most
-likely to interest most people. The man page is more terse,
-but also more exhaustive, and it sometimes offers much better
-technical detail.
-</para>
-
-
-<sect3 id="menc-feat-x264-encoding-options-intro">
-<title>Introduction</title>
-
-<para>
-This guide considers two major categories of encoding options:
-</para>
-
-<orderedlist>
-<listitem><para>
- Options which mainly trade off encoding time vs. quality
-</para></listitem>
-<listitem><para>
- Options which may be useful for fulfilling various personal
- preferences and special requirements
-</para></listitem>
-</orderedlist>
-
-<para>
-Ultimately, only you can decide which options are best for your
-purposes. The decision for the first class of options is the simplest:
-you only have to decide whether you think the quality differences
-justify the speed differences. For the second class of options,
-preferences may be far more subjective, and more factors may be
-involved. Note that some of the "personal preferences and special
-requirements" options can still have large impacts on speed or quality,
-but that is not what they are primarily useful for. A couple of the
-"personal preference" options may even cause changes that look better
-to some people, but look worse to others.
-</para>
-
-<para>
-Before continuing, you need to understand that this guide uses only one
-quality metric: global PSNR.
-For a brief explanation of what PSNR is, see
-<ulink url="http://en.wikipedia.org/wiki/PSNR">the Wikipedia article on PSNR</ulink>.
-Global PSNR is the last PSNR number reported when you include
-the <option>psnr</option> option in <option>x264encopts</option>.
-Any time you read a claim about PSNR, one of the assumptions
-behind the claim is that equal bitrates are used.
-</para>
-
-<para>
-Nearly all of this guide's comments assume you are using two pass.
-When comparing options, there are two major reasons for using
-two pass encoding.
-First, using two pass often gains around 1dB PSNR, which is a
-very big difference.
-Secondly, testing options by doing direct quality comparisons
-with one pass encodes introduces a major confounding
-factor: bitrate often varies significantly with each encode.
-It is not always easy to tell whether quality changes are due
-mainly to changed options, or if they mostly reflect essentially
-random differences in the achieved bitrate.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-x264-encoding-options-speedvquality">
-<title>Options which primarily affect speed and quality</title>
-
-<itemizedlist>
-<listitem>
- <para>
- <emphasis role="bold">subq</emphasis>:
- Of the options which allow you to trade off speed for quality,
- <option>subq</option> and <option>frameref</option> (see below) are usually
- by far the most important.
- If you are interested in tweaking either speed or quality, these
- are the first options you should consider.
- On the speed dimension, the <option>frameref</option> and
- <option>subq</option> options interact with each other fairly
- strongly.
- Experience shows that, with one reference frame,
- <option>subq=5</option> (the default setting) takes about 35% more time than
- <option>subq=1</option>.
- With 6 reference frames, the penalty grows to over 60%.
- <option>subq</option>'s effect on PSNR seems fairly constant
- regardless of the number of reference frames.
- Typically, <option>subq=5</option> achieves 0.2-0.5 dB higher global
- PSNR in comparison <option>subq=1</option>.
- This is usually enough to be visible.
- </para>
- <para>
- <option>subq=6</option> is slower and yields better quality at a reasonable
- cost.
- In comparison to <option>subq=5</option>, it usually gains 0.1-0.4 dB
- global PSNR with speed costs varying from 25%-100%.
- Unlike other levels of <option>subq</option>, the behavior of
- <option>subq=6</option> does not depend much on <option>frameref</option>
- and <option>me</option>. Instead, the effectiveness of <option>subq=6
- </option> depends mostly upon the number of B-frames used. In normal
- usage, this means <option>subq=6</option> has a large impact on both speed
- and quality in complex, high motion scenes, but it may not have much effect
- in low-motion scenes. Note that it is still recommended to always set
- <option>bframes</option> to something other than zero (see below).
- </para>
- <para>
- <option>subq=7</option> is the slowest, highest quality mode.
- In comparison to <option>subq=6</option>, it usually gains 0.01-0.05 dB
- global PSNR with speed costs varying from 15%-33%.
- Since the tradeoff encoding time vs. quality is quite low, you should
- only use it if you are after every bit saving and if encoding time is
- not an issue.
- </para>
-</listitem>
-<listitem>
- <para>
- <emphasis role="bold">frameref</emphasis>:
- <option>frameref</option> is set to 1 by default, but this
- should not be taken to imply that it is reasonable to set it to 1.
- Merely raising <option>frameref</option> to 2 gains around
- 0.15dB PSNR with a 5-10% speed penalty; this seems like a good tradeoff.
- <option>frameref=3</option> gains around 0.25dB PSNR over
- <option>frameref=1</option>, which should be a visible difference.
- <option>frameref=3</option> is around 15% slower than
- <option>frameref=1</option>.
- Unfortunately, diminishing returns set in rapidly.
- <option>frameref=6</option> can be expected to gain only
- 0.05-0.1 dB over <option>frameref=3</option> at an additional
- 15% speed penalty.
- Above <option>frameref=6</option>, the quality gains are
- usually very small (although you should keep in mind throughout
- this whole discussion that it can vary quite a lot depending on your source).
- In a fairly typical case, <option>frameref=12</option>
- will improve global PSNR by a tiny 0.02dB over
- <option>frameref=6</option>, at a speed cost of 15%-20%.
- At such high <option>frameref</option> values, the only really
- good thing that can be said is that increasing it even further will
- almost certainly never <emphasis role="bold">harm</emphasis>
- PSNR, but the additional quality benefits are barely even
- measurable, let alone perceptible.
- </para>
- <note><title>Note:</title>
- <para>
- Raising <option>frameref</option> to unnecessarily high values
- <emphasis role="bold">can</emphasis> and
- <emphasis role="bold">usually does</emphasis>
- hurt coding efficiency if you turn CABAC off.
- With CABAC on (the default behavior), the possibility of setting
- <option>frameref</option> "too high" currently seems too remote
- to even worry about, and in the future, optimizations may remove
- the possibility altogether.
- </para></note>
- <para>
- If you care about speed, a reasonable compromise is to use low
- <option>subq</option> and <option>frameref</option> values on
- the first pass, and then raise them on the second pass.
- Typically, this has a negligible negative effect on the final
- quality: You will probably lose well under 0.1dB PSNR, which
- should be much too small of a difference to see.
- However, different values of <option>frameref</option> can
- occasionally affect frametype decision.
- Most likely, these are rare outlying cases, but if you want to
- be pretty sure, consider whether your video has either
- fullscreen repetitive flashing patterns or very large temporary
- occlusions which might force an I-frame.
- Adjust the first-pass <option>frameref</option> so it is large
- enough to contain the duration of the flashing cycle (or occlusion).
- For example, if the scene flashes back and forth between two images
- over a duration of three frames, set the first pass
- <option>frameref</option> to 3 or higher.
- This issue is probably extremely rare in live action video material,
- but it does sometimes come up in video game captures.
- </para>
-</listitem>
-<listitem>
- <para>
- <emphasis role="bold">me</emphasis>:
- This option is for choosing the motion estimation search method.
- Altering this option provides a straightforward quality-vs-speed
- tradeoff. <option>me=dia</option> is only a few percent faster than
- the default search, at a cost of under 0.1dB global PSNR. The
- default setting (<option>me=hex</option>) is a reasonable tradeoff
- between speed and quality. <option>me=umh</option> gains a little under
- 0.1dB global PSNR, with a speed penalty that varies depending on
- <option>frameref</option>. At high values of
- <option>frameref</option> (e.g. 12 or so), <option>me=umh</option>
- is about 40% slower than the default <option> me=hex</option>. With
- <option>frameref=3</option>, the speed penalty incurred drops to
- 25%-30%.
- </para>
- <para>
- <option>me=esa</option> uses an exhaustive search that is too slow for
- practical use.
- </para>
-</listitem>
-<listitem><para>
- <emphasis role="bold">partitions=all</emphasis>:
- This option enables the use of 8x4, 4x8 and 4x4 subpartitions in
- predicted macroblocks (in addition to the default partitions).
- Enabling it results in a fairly consistent
- 10%-15% loss of speed. This option is rather useless in source
- containing only low motion, however in some high-motion source,
- particularly source with lots of small moving objects, gains of
- about 0.1dB can be expected.
-</para></listitem>
-<listitem>
- <para>
- <emphasis role="bold">bframes</emphasis>:
- If you are used to encoding with other codecs, you may have found
- that B-frames are not always useful.
- In H.264, this has changed: there are new techniques and block
- types that are possible in B-frames.
- Usually, even a naive B-frame choice algorithm can have a
- significant PSNR benefit.
- It is interesting to note that using B-frames usually speeds up
- the second pass somewhat, and may also speed up a single
- pass encode if adaptive B-frame decision is turned off.
- </para>
- <para>
- With adaptive B-frame decision turned off
- (<option>x264encopts</option>'s <option>nob_adapt</option>),
- the optimal value for this setting is usually no more than
- <option>bframes=1</option>, or else high-motion scenes can suffer.
- With adaptive B-frame decision on (the default behavior), it is
- safe to use higher values; the encoder will reduce the use of
- B-frames in scenes where they would hurt compression.
- The encoder rarely chooses to use more than 3 or 4 B-frames;
- setting this option any higher will have little effect.
- </para>
-</listitem>
-<listitem>
- <para>
- <emphasis role="bold">b_adapt</emphasis>:
- Note: This is on by default.
- </para>
- <para>
- With this option enabled, the encoder will use a reasonably fast
- decision process to reduce the number of B-frames used in scenes that
- might not benefit from them as much.
- You can use <option>b_bias</option> to tweak how B-frame-happy
- the encoder is.
- The speed penalty of adaptive B-frames is currently rather modest,
- but so is the potential quality gain.
- It usually does not hurt, however.
- Note that this only affects speed and frametype decision on the
- first pass.
- <option>b_adapt</option> and <option>b_bias</option> have no
- effect on subsequent passes.
- </para>
-</listitem>
-<listitem><para>
- <emphasis role="bold">b_pyramid</emphasis>:
- You might as well enable this option if you are using >=2 B-frames;
- as the man page says, you get a little quality improvement at no
- speed cost.
- Note that these videos cannot be read by libavcodec-based decoders
- older than about March 5, 2005.
-</para></listitem>
-<listitem>
- <para>
- <emphasis role="bold">weight_b</emphasis>:
- In typical cases, there is not much gain with this option.
- However, in crossfades or fade-to-black scenes, weighted
- prediction gives rather large bitrate savings.
- In MPEG-4 ASP, a fade-to-black is usually best coded as a series
- of expensive I-frames; using weighted prediction in B-frames
- makes it possible to turn at least some of these into much smaller
- B-frames.
- Encoding time cost is minimal, as no extra decisions need to be made.
- Also, contrary to what some people seem to guess, the decoder
- CPU requirements are not much affected by weighted prediction,
- all else being equal.
- </para>
- <para>
- Unfortunately, the current adaptive B-frame decision algorithm
- has a strong tendency to avoid B-frames during fades.
- Until this changes, it may be a good idea to add
- <option>nob_adapt</option> to your x264encopts, if you expect
- fades to have a large effect in your particular video
- clip.
- </para>
-</listitem>
-<listitem id="menc-feat-x264-encoding-options-speedvquality-threads">
- <para>
- <emphasis role="bold">threads</emphasis>:
- This option allows to spawn threads to encode in parallel on multiple CPUs.
- You can manually select the number of threads to be created or, better, set
- <option>threads=auto</option> and let
- <systemitem class="library">x264</systemitem> detect how many CPUs are
- available and pick an appropriate number of threads.
- If you have a multi-processor machine, you should really consider using it
- as it can to increase encoding speed linearly with the number of CPU cores
- (about 94% per CPU core), with very little quality reduction (about 0.005dB
- for dual processor, about 0.01dB for a quad processor machine).
- </para>
-</listitem>
-</itemizedlist>
-</sect3>
-
-
-<sect3 id="menc-feat-x264-encoding-options-misc-preferences">
-<title>Options pertaining to miscellaneous preferences</title>
-
-<itemizedlist>
-<listitem>
- <para>
- <emphasis role="bold">Two pass encoding</emphasis>:
- Above, it was suggested to always use two pass encoding, but there
- are still reasons for not using it. For instance, if you are capturing
- live TV and encoding in realtime, you are forced to use single-pass.
- Also, one pass is obviously faster than two passes; if you use the
- exact same set of options on both passes, two pass encoding is almost
- twice as slow.
- </para>
- <para>
- Still, there are very good reasons for using two pass encoding. For
- one thing, single pass ratecontrol is not psychic, and it often makes
- unreasonable choices because it cannot see the big picture. For example,
- suppose you have a two minute long video consisting of two distinct
- halves. The first half is a very high-motion scene lasting 60 seconds
- which, in isolation, requires about 2500kbps in order to look decent.
- Immediately following it is a much less demanding 60-second scene
- that looks good at 300kbps. Suppose you ask for 1400kbps on the theory
- that this is enough to accomodate both scenes. Single pass ratecontrol
- will make a couple of "mistakes" in such a case. First of all, it
- will target 1400kbps in both segments. The first segment may end up
- heavily overquantized, causing it to look unacceptably and unreasonably
- blocky. The second segment will be heavily underquantized; it may look
- perfect, but the bitrate cost of that perfection will be completely
- unreasonable. What is even harder to avoid is the problem at the
- transition between the two scenes. The first seconds of the low motion
- half will be hugely over-quantized, because the ratecontrol is still
- expecting the kind of bitrate requirements it met in the first half
- of the video. This "error period" of heavily over-quantized low motion
- will look jarringly bad, and will actually use less than the 300kbps
- it would have taken to make it look decent. There are ways to
- mitigate the pitfalls of single-pass encoding, but they may tend to
- increase bitrate misprediction.
- </para>
- <para>
- Multipass ratecontrol can offer huge advantages over a single pass.
- Using the statistics gathered from the first pass encode, the encoder
- can estimate, with reasonable accuracy, the "cost" (in bits) of
- encoding any given frame, at any given quantizer. This allows for
- a much more rational, better planned allocation of bits between the
- expensive (high-motion) and cheap (low-motion) scenes. See
- <option>qcomp</option> below for some ideas on how to tweak this
- allocation to your liking.
- </para>
- <para>
- Moreover, two passes need not take twice as long as one pass. You can
- tweak the options in the first pass for higher speed and lower quality.
- If you choose your options well, you can get a very fast first pass.
- The resulting quality in the second pass will be slightly lower because size
- prediction is less accurate, but the quality difference is normally much
- too small to be visible. Try, for example, adding
- <option>subq=1:frameref=1</option> to the first pass
- <option>x264encopts</option>. Then, on the second pass, use slower,
- higher-quality options:
- <option>subq=6:frameref=15:partitions=all:me=umh</option>
- </para>
-</listitem>
-<listitem><para>
- <emphasis role="bold">Three pass encoding</emphasis>?
- x264 offers the ability to make an arbitrary number of consecutive
- passes. If you specify <option>pass=1</option> on the first pass,
- then use <option>pass=3</option> on a subsequent pass, the subsequent
- pass will both read the statistics from the previous pass, and write
- its own statistics. An additional pass following this one will have
- a very good base from which to make highly accurate predictions of
- framesizes at a chosen quantizer. In practice, the overall quality
- gain from this is usually close to zero, and quite possibly a third
- pass will result in slightly worse global PSNR than the pass before
- it. In typical usage, three passes help if you get either bad bitrate
- prediction or bad looking scene transitions when using only two passes.
- This is somewhat likely to happen on extremely short clips. There are
- also a few special cases in which three (or more) passes are handy
- for advanced users, but for brevity, this guide omits discussing those
- special cases.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">qcomp</emphasis>:
- <option>qcomp</option> trades off the number of bits allocated
- to "expensive" high-motion versus "cheap" low-motion frames. At
- one extreme, <option>qcomp=0</option> aims for true constant
- bitrate. Typically this would make high-motion scenes look completely
- awful, while low-motion scenes would probably look absolutely
- perfect, but would also use many times more bitrate than they
- would need in order to look merely excellent. At the other extreme,
- <option>qcomp=1</option> achieves nearly constant quantization parameter
- (QP). Constant QP does not look bad, but most people think it is more
- reasonable to shave some bitrate off of the extremely expensive scenes
- (where the loss of quality is not as noticeable) and reallocate it to
- the scenes that are easier to encode at excellent quality.
- <option>qcomp</option> is set to 0.6 by default, which may be slightly
- low for many peoples' taste (0.7-0.8 are also commonly used).
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">keyint</emphasis>:
- <option>keyint</option> is solely for trading off file seekability against
- coding efficiency. By default, <option>keyint</option> is set to 250. In
- 25fps material, this guarantees the ability to seek to within 10 seconds
- precision. If you think it would be important and useful to be able to
- seek within 5 seconds of precision, set <option>keyint=125</option>;
- this will hurt quality/bitrate slightly. If you care only about quality
- and not about seekability, you can set it to much higher values
- (understanding that there are diminishing returns which may become
- vanishingly low, or even zero). The video stream will still have seekable
- points as long as there are some scene changes.
-</para></listitem>
-<listitem>
- <para>
- <emphasis role="bold">deblock</emphasis>:
- This topic is going to be a bit controversial.
- </para>
- <para>
- H.264 defines a simple deblocking procedure on I-blocks that uses
- pre-set strengths and thresholds depending on the QP of the block
- in question.
- By default, high QP blocks are filtered heavily, and low QP blocks
- are not deblocked at all.
- The pre-set strengths defined by the standard are well-chosen and
- the odds are very good that they are PSNR-optimal for whatever
- video you are trying to encode.
- The <option>deblock</option> allow you to specify offsets to the preset
- deblocking thresholds.
- </para>
- <para>
- Many people seem to think it is a good idea to lower the deblocking
- filter strength by large amounts (say, -3).
- This is however almost never a good idea, and in most cases,
- people who are doing this do not understand very well how
- deblocking works by default.
- </para>
- <para>
- The first and most important thing to know about the in-loop
- deblocking filter is that the default thresholds are almost always
- PSNR-optimal.
- In the rare cases that they are not optimal, the ideal offset is
- plus or minus 1.
- Adjusting deblocking parameters by a larger amount is almost
- guaranteed to hurt PSNR.
- Strengthening the filter will smear more details; weakening the
- filter will increase the appearance of blockiness.
- </para>
- <para>
- It is definitely a bad idea to lower the deblocking thresholds if
- your source is mainly low in spacial complexity (i.e., not a lot
- of detail or noise).
- The in-loop filter does a rather excellent job of concealing
- the artifacts that occur.
- If the source is high in spacial complexity, however, artifacts
- are less noticeable.
- This is because the ringing tends to look like detail or noise.
- Human visual perception easily notices when detail is removed,
- but it does not so easily notice when the noise is wrongly
- represented.
- When it comes to subjective quality, noise and detail are somewhat
- interchangeable.
- By lowering the deblocking filter strength, you are most likely
- increasing error by adding ringing artifacts, but the eye does
- not notice because it confuses the artifacts with detail.
- </para>
- <para>
- This <emphasis role="bold">still</emphasis> does not justify
- lowering the deblocking filter strength, however.
- You can generally get better quality noise from postprocessing.
- If your H.264 encodes look too blurry or smeared, try playing with
- <option>-vf noise</option> when you play your encoded movie.
- <option>-vf noise=8a:4a</option> should conceal most mild
- artifacting.
- It will almost certainly look better than the results you
- would have gotten just by fiddling with the deblocking filter.
- </para>
-</listitem>
-</itemizedlist>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-x264-example-settings">
-<title>Encoding setting examples</title>
-
-<para>
-The following settings are examples of different encoding
-option combinations that affect the speed vs quality tradeoff
-at the same target bitrate.
-</para>
-
-<para>
-All the encoding settings were tested on a 720x448 @30000/1001 fps
-video sample, the target bitrate was 900kbps, and the machine was an
-AMD-64 3400+ at 2400 MHz in 64 bits mode.
-Each encoding setting features the measured encoding speed (in
-frames per second) and the PSNR loss (in dB) compared to the "very
-high quality" setting.
-Please understand that depending on your source, your machine type
-and development advancements, you may get very different results.
-</para>
-
-<informaltable frame="all">
-<tgroup cols="4">
-<thead>
-<row>
- <entry>Description</entry>
- <entry>Encoding options</entry>
- <entry>speed (in fps)</entry>
- <entry>Relative PSNR loss (in dB)</entry>
-</row>
-</thead>
-<tbody>
-<row>
- <entry>Very high quality</entry>
- <entry><option>subq=6:partitions=all:8x8dct:me=umh:frameref=5:bframes=3:b_pyramid:weight_b</option></entry>
- <entry>6fps</entry>
- <entry>0dB</entry>
-</row>
-<row>
- <entry>High quality</entry>
- <entry><option>subq=5:8x8dct:frameref=2:bframes=3:b_pyramid:weight_b</option></entry>
- <entry>13fps</entry>
- <entry>-0.89dB</entry>
-</row>
-<row>
- <entry>Fast</entry>
- <entry><option>subq=4:bframes=2:b_pyramid:weight_b</option></entry>
- <entry>17fps</entry>
- <entry>-1.48dB</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-video-for-windows">
-<title>
- Encoding with the <systemitem class="library">Video For Windows</systemitem>
- codec family
-</title>
-
-<para>
-Video for Windows provides simple encoding by means of binary video codecs.
-You can encode with the following codecs (if you have more, please tell us!)
-</para>
-
-<para>
-Note that support for this is very experimental and some codecs may not work
-correctly. Some codecs will only work in certain colorspaces, try
-<option>-vf format=bgr24</option> and <option>-vf format=yuy2</option>
-if a codec fails or gives wrong output.
-</para>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-enc-vfw-video-codecs">
-<title>Video for Windows supported codecs</title>
-
-<para>
-<informaltable frame="all">
-<tgroup cols="4">
-<thead>
-<row>
- <entry>Video codec file name</entry>
- <entry>Description (FourCC)</entry>
- <entry>md5sum</entry>
- <entry>Comment</entry>
-</row>
-</thead>
-<tbody>
-<row>
- <entry>aslcodec_vfw.dll</entry>
- <entry>Alparysoft lossless codec vfw (ASLC)</entry>
- <entry>608af234a6ea4d90cdc7246af5f3f29a</entry>
- <entry></entry>
-</row>
-<row>
- <entry>avimszh.dll</entry>
- <entry>AVImszh (MSZH)</entry>
- <entry>253118fe1eedea04a95ed6e5f4c28878</entry>
- <entry>needs <option>-vf format</option></entry>
-</row>
-<row>
- <entry>avizlib.dll</entry>
- <entry>AVIzlib (ZLIB)</entry>
- <entry>2f1cc76bbcf6d77d40d0e23392fa8eda</entry>
- <entry></entry>
-</row>
-<row>
- <entry>divx.dll</entry>
- <entry>DivX4Windows-VFW</entry>
- <entry>acf35b2fc004a89c829531555d73f1e6</entry>
- <entry></entry>
-</row>
-<row>
- <entry>huffyuv.dll</entry>
- <entry>HuffYUV (lossless) (HFYU)</entry>
- <entry>b74695b50230be4a6ef2c4293a58ac3b</entry>
- <entry></entry>
-</row>
-<row>
- <entry>iccvid.dll</entry>
- <entry>Cinepak Video (cvid)</entry>
- <entry>cb3b7ee47ba7dbb3d23d34e274895133</entry>
- <entry></entry>
-</row>
-<row>
- <entry>icmw_32.dll</entry>
- <entry>Motion Wavelets (MWV1)</entry>
- <entry>c9618a8fc73ce219ba918e3e09e227f2</entry>
- <entry></entry>
-</row>
-<row>
- <entry>jp2avi.dll</entry>
- <entry>ImagePower MJPEG2000 (IPJ2)</entry>
- <entry>d860a11766da0d0ea064672c6833768b</entry>
- <entry><option>-vf flip</option></entry>
-</row>
-<row>
- <entry>m3jp2k32.dll</entry>
- <entry>Morgan MJPEG2000 (MJ2C)</entry>
- <entry>f3c174edcbaef7cb947d6357cdfde7ff</entry>
- <entry></entry>
-</row>
-<row>
- <entry>m3jpeg32.dll</entry>
- <entry>Morgan Motion JPEG Codec (MJPG)</entry>
- <entry>1cd13fff5960aa2aae43790242c323b1</entry>
- <entry></entry>
-</row>
-<row>
- <entry>mpg4c32.dll</entry>
- <entry>Microsoft MPEG-4 v1/v2</entry>
- <entry>b5791ea23f33010d37ab8314681f1256</entry>
- <entry></entry>
-</row>
-<row>
- <entry>tsccvid.dll</entry>
- <entry>TechSmith Camtasia Screen Codec (TSCC)</entry>
- <entry>8230d8560c41d444f249802a2700d1d5</entry>
- <entry>shareware error on windows</entry>
-</row>
-<row>
- <entry>vp31vfw.dll</entry>
- <entry>On2 Open Source VP3 Codec (VP31)</entry>
- <entry>845f3590ea489e2e45e876ab107ee7d2</entry>
- <entry></entry>
-</row>
-<row>
- <entry>vp4vfw.dll</entry>
- <entry>On2 VP4 Personal Codec (VP40)</entry>
- <entry>fc5480a482ccc594c2898dcc4188b58f</entry>
- <entry></entry>
-</row>
-<row>
- <entry>vp6vfw.dll</entry>
- <entry>On2 VP6 Personal Codec (VP60)</entry>
- <entry>04d635a364243013898fd09484f913fb</entry>
- <entry></entry>
-</row>
-<row>
- <entry>vp7vfw.dll</entry>
- <entry>On2 VP7 Personal Codec (VP70)</entry>
- <entry>cb4cc3d4ea7c94a35f1d81c3d750bc8d</entry>
- <entry>wrong FourCC?</entry>
-</row>
-<row>
- <entry>ViVD2.dll</entry>
- <entry>SoftMedia ViVD V2 codec VfW (GXVE)</entry>
- <entry>a7b4bf5cac630bb9262c3f80d8a773a1</entry>
- <entry></entry>
-</row>
-<row>
- <entry>msulvc06.DLL</entry>
- <entry>MSU Lossless codec (MSUD)</entry>
- <entry>294bf9288f2f127bb86f00bfcc9ccdda</entry>
- <entry>
- Decodable by <application>Window Media Player</application>,
- not <application>MPlayer</application> (yet).
- </entry>
-</row>
-<row>
- <entry>camcodec.dll</entry>
- <entry>CamStudio lossless video codec (CSCD)</entry>
- <entry>0efe97ce08bb0e40162ab15ef3b45615</entry>
- <entry>sf.net/projects/camstudio</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-
-The first column contains the codec names that should be passed after the
-<literal>codec</literal> parameter,
-like: <option>-xvfwopts codec=divx.dll</option>
-The FourCC code used by each codec is given in the parentheses.
-</para>
-
-<informalexample>
-<para>
-An example to convert an ISO DVD trailer to a VP6 flash video file
-using compdata bitrate settings:
-<screen>
-mencoder -dvd-device <replaceable>zeiram.iso</replaceable> dvd://7 -o <replaceable>trailer.flv</replaceable> \
--ovc vfw -xvfwopts codec=vp6vfw.dll:compdata=onepass.mcf -oac mp3lame \
--lameopts cbr:br=64 -af lavcresample=22050 -vf yadif,scale=320:240,flip \
--of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames
-</screen>
-</para>
-</informalexample>
-</sect2>
-
-<sect2 id="menc-feat-video-for-windows-bitrate-settings">
-<title>Using vfw2menc to create a codec settings file.</title>
-
-<para>
-To encode with the Video for Windows codecs, you will need to set bitrate
-and other options. This is known to work on x86 on both *NIX and Windows.
-</para>
-<para>
-First you must build the <application>vfw2menc</application> program.
-It is located in the <filename class="directory">TOOLS</filename> subdirectory
-of the MPlayer source tree.
-To build on Linux, this can be done using <application>Wine</application>:
-<screen>winegcc vfw2menc.c -o vfw2menc -lwinmm -lole32</screen>
-
-To build on Windows in <application>MinGW</application> or
-<application>Cygwin</application> use:
-<screen>gcc vfw2menc.c -o vfw2menc.exe -lwinmm -lole32</screen>
-
-To build on <application>MSVC</application> you will need getopt.
-Getopt can be found in the original <application>vfw2menc</application>
-archive available at:
-The <ulink url="http://oss.netfarm.it/mplayer-win32.php">MPlayer on win32</ulink> project.
-</para>
-<informalexample>
-<para>
-Below is an example with the VP6 codec.
-<screen>
-vfw2menc -f VP62 -d vp6vfw.dll -s firstpass.mcf
-</screen>
-This will open the VP6 codec dialog window.
-Repeat this step for the second pass
-and use <option>-s <replaceable>secondpass.mcf</replaceable></option>.
-</para>
-</informalexample>
-<para>
-Windows users can use
-<option>-xvfwopts codec=vp6vfw.dll:compdata=dialog</option> to have
-the codec dialog display before encoding starts.
-</para>
-</sect2>
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-quicktime-7">
-<title>Using <application>MEncoder</application> to create
-<application>QuickTime</application>-compatible files</title>
-
-
-<sect2 id="menc-feat-quicktime-7-why-use-it">
-<title>Why would one want to produce <application>QuickTime</application>-compatible Files?</title>
-
-<para>
- There are several reasons why producing
- <application>QuickTime</application>-compatible files can be desirable.
-</para>
-<itemizedlist>
-<listitem><para>
- You want any computer illiterate to be able to watch your encode on
- any major platform (Windows, Mac OS X, Unices &hellip;).
-</para></listitem>
-<listitem><para>
- <application>QuickTime</application> is able to take advantage of more
- hardware and software acceleration features of Mac OS X than
- platform-independent players like <application>MPlayer</application>
- or <application>VLC</application>.
- That means that your encodes have a chance to be played smoothly by older
- G4-powered machines.
-</para></listitem>
-<listitem><para>
- <application>QuickTime</application> 7 supports the next-generation codec H.264,
- which yields significantly better picture quality than previous codec
- generations (MPEG-2, MPEG-4 &hellip;).
-</para></listitem>
-</itemizedlist>
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-constraints">
-<title><application>QuickTime</application> 7 limitations</title>
-
-<para>
- <application>QuickTime</application> 7 supports H.264 video and AAC audio,
- but it does not support them muxed in the AVI container format.
- However, you can use <application>MEncoder</application> to encode
- the video and audio, and then use an external program such as
- <application>mp4creator</application> (part of the
- <ulink url="http://mpeg4ip.sourceforge.net/">MPEG4IP suite</ulink>)
- to remux the video and audio tracks into an MP4 container.
-</para>
-
-<para>
- <application>QuickTime</application>'s support for H.264 is limited,
- so you will need to drop some advanced features.
- If you encode your video with features that
- <application>QuickTime</application> 7 does not support,
- <application>QuickTime</application>-based players will show you a pretty
- white screen instead of your expected video.
-</para>
-
-<itemizedlist>
-<listitem><para>
- <emphasis role="bold">B-frames</emphasis>:
- <application>QuickTime</application> 7 supports a maximum of 1 B-frame, i.e.
- <option>-x264encopts bframes=1</option>. This means that
- <option>b_pyramid</option> and <option>weight_b</option> will have no
- effect, since they require <option>bframes</option> to be greater than 1.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Macroblocks</emphasis>:
- <application>QuickTime</application> 7 does not support 8x8 DCT macroblocks.
- This option (<option>8x8dct</option>) is off by default, so just be sure
- not to explicitly enable it. This also means that the <option>i8x8</option>
- option will have no effect, since it requires <option>8x8dct</option>.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">Aspect ratio</emphasis>:
- <application>QuickTime</application> 7 does not support SAR (sample
- aspect ratio) information in MPEG-4 files; it assumes that SAR=1. Read
- <link linkend="menc-feat-quicktime-7-scale">the section on scaling</link>
- for a workaround.
-</para></listitem>
-</itemizedlist>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-crop">
-<title>Cropping</title>
-<para>
- Suppose you want to rip your freshly bought copy of "The Chronicles of
- Narnia". Your DVD is region 1,
- which means it is NTSC. The example below would still apply to PAL,
- except you would omit <option>-ofps 24000/1001</option> and use slightly
- different <option>crop</option> and <option>scale</option> dimensions.
-</para>
-
-<para>
- After running <option>mplayer dvd://1</option>, you follow the process
- detailed in the section <link linkend="menc-feat-telecine">How to deal
- with telecine and interlacing in NTSC DVDs</link> and discover that it is
- 24000/1001 fps progressive video. This simplifies the process somewhat,
- since you do not need to use an inverse telecine filter such as
- <option>pullup</option> or a deinterlacing filter such as
- <option>yadif</option>.
-</para>
-
-<para>
- Next, you need to crop out the black bars from the top and bottom of the
- video, as detailed in <link linkend="menc-feat-dvd-mpeg4-example-crop">this</link>
- previous section.
-</para>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-scale">
-<title>Scaling</title>
-
-<para>
- The next step is truly heartbreaking.
- <application>QuickTime</application> 7 does not support MPEG-4 videos
- with a sample aspect ratio other than 1, so you will need to upscale
- (which wastes a lot of disk space) or downscale (which loses some
- details of the source) the video to square pixels.
- Either way you do it, this is highly inefficient, but simply cannot
- be avoided if you want your video to be playable by
- <application>QuickTime</application> 7.
- <application>MEncoder</application> can apply the appropriate upscaling
- or downscaling by specifying respectively <option>-vf scale=-10:-1</option>
- or <option>-vf scale=-1:-10</option>.
- This will scale your video to the correct width for the cropped height,
- rounded to the closest multiple of 16 for optimal compression.
- Remember that if you are cropping, you should crop first, then scale:
-
- <screen>-vf crop=720:352:0:62,scale=-10:-1</screen>
-</para>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-avsync">
-<title>A/V sync</title>
-
-<para>
- Because you will be remuxing into a different container, you should
- always use the <option>harddup</option> option to ensure that duplicated
- frames are actually duplicated in the video output. Without this option,
- <application>MEncoder</application> will simply put a marker in the video
- stream that a frame was duplicated, and rely on the client software to
- show the same frame twice. Unfortunately, this "soft duplication" does
- not survive remuxing, so the audio would slowly lose sync with the video.
-</para>
-
-<para>
- The final filter chain looks like this:
- <screen>-vf crop=720:352:0:62,scale=-10:-1,harddup</screen>
-</para>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-bitrate">
-<title>Bitrate</title>
-
-<para>
- As always, the selection of bitrate is a matter of the technical properties
- of the source, as explained
- <link linkend="menc-feat-dvd-mpeg4-resolution-bitrate">here</link>, as
- well as a matter of taste.
- This movie has a fair bit of action and lots of detail, but H.264 video
- looks good at much lower bitrates than XviD or other MPEG-4 codecs.
- After much experimentation, the author of this guide chose to encode
- this movie at 900kbps, and thought that it looked very good.
- You may decrease bitrate if you need to save more space, or increase
- it if you need to improve quality.
-</para>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-example">
-<title>Encoding example</title>
-
-<para>
- You are now ready to encode the video. Since you care about
- quality, of course you will be doing a two-pass encode. To shave off
- some encoding time, you can specify the <option>turbo</option> option
- on the first pass; this reduces <option>subq</option> and
- <option>frameref</option> to 1. To save some disk space, you can
- use the <option>ss</option> option to strip off the first few seconds
- of the video. (I found that this particular movie has 32 seconds of
- credits and logos.) <option>bframes</option> can be 0 or 1.
- The other options are documented in <link
- linkend="menc-feat-x264-encoding-options-speedvquality">Encoding with
- the <systemitem class="library">x264</systemitem> codec</link> and
- the man page.
-
- <screen>mencoder dvd://1 -o /dev/null -ss 32 -ovc x264 \
--x264encopts pass=1:turbo:bitrate=900:bframes=1:\
-me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \
--vf crop=720:352:0:62,scale=-10:-1,harddup \
--oac faac -faacopts br=192:mpeg=4:object=1 -channels 2 -srate 48000 \
--ofps 24000/1001</screen>
-
- If you have a multi-processor machine, don't miss the opportunity to
- dramatically speed-up encoding by enabling
- <link linkend="menc-feat-x264-encoding-options-speedvquality-threads">
- <systemitem class="library">x264</systemitem>'s multi-threading mode</link>
- by adding <option>threads=auto</option> to your <option>x264encopts</option>
- command-line.
-</para>
-
-<para>
- The second pass is the same, except that you specify the output file
- and set <option>pass=2</option>.
-
- <screen>mencoder dvd://1 <emphasis role="bold">-o narnia.avi</emphasis> -ss 32 -ovc x264 \
--x264encopts <emphasis role="bold">pass=2</emphasis>:turbo:bitrate=900:frameref=5:bframes=1:\
-me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \
--vf crop=720:352:0:62,scale=-10:-1,harddup \
--oac faac -faacopts br=192:mpeg=4:object=1 -channels 2 -srate 48000 \
--ofps 24000/1001</screen>
-</para>
-
-<para>
- The resulting AVI should play perfectly in
- <application>MPlayer</application>, but of course
- <application>QuickTime</application> can not play it because it does
- not support H.264 muxed in AVI.
- So the next step is to remux the video into an MP4 container.
-</para>
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-remux">
-<title>Remuxing as MP4</title>
-
-<para>
- There are several ways to remux AVI files to MP4. You can use
- <application>mp4creator</application>, which is part of the
- <ulink url="http://mpeg4ip.sourceforge.net/">MPEG4IP suite</ulink>.
-</para>
-
-<para>
- First, demux the AVI into separate audio and video streams using
- <application>MPlayer</application>.
-
- <screen>mplayer narnia.avi -dumpaudio -dumpfile narnia.aac
-mplayer narnia.avi -dumpvideo -dumpfile narnia.h264</screen>
-
- The filenames are important; <application>mp4creator</application>
- requires that AAC audio streams be named <systemitem>.aac</systemitem>
- and H.264 video streams be named <systemitem>.h264</systemitem>.
-</para>
-
-<para>
- Now use <application>mp4creator</application> to create a new
- MP4 file out of the audio and video streams.
-
- <screen>mp4creator -create=narnia.aac narnia.mp4
-mp4creator -create=narnia.h264 -rate=23.976 narnia.mp4</screen>
-
- Unlike the encoding step, you must specify the framerate as a
- decimal (such as 23.976), not a fraction (such as 24000/1001).
-</para>
-
-<para>
- This <systemitem>narnia.mp4</systemitem> file should now be playable
- with any <application>QuickTime</application> 7 application, such as
- <application>QuickTime Player</application> or
- <application>iTunes</application>. If you are planning to view the
- video in a web browser with the <application>QuickTime</application>
- plugin, you should also hint the movie so that the
- <application>QuickTime</application> plugin can start playing it
- while it is still downloading. <application>mp4creator</application>
- can create these hint tracks:
-
- <screen>mp4creator -hint=1 narnia.mp4
-mp4creator -hint=2 narnia.mp4
-mp4creator -optimize narnia.mp4</screen>
-
- You can check the final result to ensure that the hint tracks were
- created successfully:
-
- <screen>mp4creator -list narnia.mp4</screen>
-
- You should see a list of tracks: 1 audio, 1 video, and 2 hint tracks.
-
-<screen>Track Type Info
-1 audio MPEG-4 AAC LC, 8548.714 secs, 190 kbps, 48000 Hz
-2 video H264 Main@5.1, 8549.132 secs, 899 kbps, 848x352 @ 23.976001 fps
-3 hint Payload mpeg4-generic for track 1
-4 hint Payload H264 for track 2
-</screen>
-</para>
-
-</sect2>
-
-<sect2 id="menc-feat-quicktime-7-metadata">
-<title>Adding metadata tags</title>
-
-<para>
- If you want to add tags to your video that show up in iTunes, you can use
- <ulink url="http://atomicparsley.sourceforge.net/">AtomicParsley</ulink>.
-
- <screen>AtomicParsley narnia.mp4 --metaEnema --title "The Chronicles of Narnia" --year 2005 --stik Movie --freefree --overWrite</screen>
-
- The <option>--metaEnema</option> option removes any existing metadata
- (<application>mp4creator</application> inserts its name in the
- "encoding tool" tag), and <option>--freefree</option> reclaims the
- space from the deleted metadata.
- The <option>--stik</option> option sets the type of video (such as Movie
- or TV Show), which iTunes uses to group related video files.
- The <option>--overWrite</option> option overwrites the original file;
- without it, <application>AtomicParsley</application> creates a new
- auto-named file in the same directory and leaves the original file
- untouched.
-</para>
-
-</sect2>
-
-</sect1>
-
-
-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
-
-
-<sect1 id="menc-feat-vcd-dvd">
-<title>Using <application>MEncoder</application>
- to create VCD/SVCD/DVD-compliant files</title>
-
-<sect2 id="menc-feat-vcd-dvd-constraints">
-<title>Format Constraints</title>
-
-<para>
-<application>MEncoder</application> is capable of creating VCD, SCVD
-and DVD format MPEG files using the
-<systemitem class="library">libavcodec</systemitem> library.
-These files can then be used in conjunction with
-<ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>
-or
-<ulink url="http://dvdauthor.sourceforge.net/">dvdauthor</ulink>
-to create discs that will play on a standard set-top player.
-</para>
-
-<para>
-The DVD, SVCD, and VCD formats are subject to heavy constraints.
-Only a small selection of encoded picture sizes and aspect ratios are
-available.
-If your movie does not already meet these requirements, you may have
-to scale, crop or add black borders to the picture to make it
-compliant.
-</para>
-
-
-<sect3 id="menc-feat-vcd-dvd-constraints-resolution">
-<title>Format Constraints</title>
-
-<informaltable frame="all">
-<tgroup cols="9">
-<thead>
-<row>
- <entry>Format</entry>
- <entry>Resolution</entry>
- <entry>V. Codec</entry>
- <entry>V. Bitrate</entry>
- <entry>Sample Rate</entry>
- <entry>A. Codec</entry>
- <entry>A. Bitrate</entry>
- <entry>FPS</entry>
- <entry>Aspect</entry>
-</row>
-</thead>
-<tbody>
-<row>
- <entry>NTSC DVD</entry>
- <entry>720x480, 704x480, 352x480, 352x240</entry>
- <entry>MPEG-2</entry>
- <entry>9800 kbps</entry>
- <entry>48000 Hz</entry>
- <entry>AC-3,PCM</entry>
- <entry>1536 kbps (max)</entry>
- <entry>30000/1001, 24000/1001</entry>
- <entry>4:3, 16:9 (only for 720x480)</entry>
-</row>
-<row>
- <entry>NTSC DVD</entry>
- <entry>352x240<footnote id='fn-rare-resolutions'><para>
- These resolutions are rarely used for DVDs because
- they are fairly low quality.</para></footnote></entry>
- <entry>MPEG-1</entry>
- <entry>1856 kbps</entry>
- <entry>48000 Hz</entry>
- <entry>AC-3,PCM</entry>
- <entry>1536 kbps (max)</entry>
- <entry>30000/1001, 24000/1001</entry>
- <entry>4:3, 16:9</entry>
-</row>
-<row>
- <entry>NTSC SVCD</entry>
- <entry>480x480</entry>
- <entry>MPEG-2</entry>
- <entry>2600 kbps</entry>
- <entry>44100 Hz</entry>
- <entry>MP2</entry>
- <entry>384 kbps (max)</entry>
- <entry>30000/1001</entry>
- <entry>4:3</entry>
-</row>
-<row>
- <entry>NTSC VCD</entry>
- <entry>352x240</entry>
- <entry>MPEG-1</entry>
- <entry>1150 kbps</entry>
- <entry>44100 Hz</entry>
- <entry>MP2</entry>
- <entry>224 kbps</entry>
- <entry>24000/1001, 30000/1001</entry>
- <entry>4:3</entry>
-</row>
-<row>
- <entry>PAL DVD</entry>
- <entry>720x576, 704x576, 352x576, 352x288</entry>
- <entry>MPEG-2</entry>
- <entry>9800 kbps</entry>
- <entry>48000 Hz</entry>
- <entry>MP2,AC-3,PCM</entry>
- <entry>1536 kbps (max)</entry>
- <entry>25</entry>
- <entry>4:3, 16:9 (only for 720x576)</entry>
-</row>
-<row>
- <entry>PAL DVD</entry>
- <entry>352x288<footnoteref linkend='fn-rare-resolutions'/></entry>
- <entry>MPEG-1</entry>
- <entry>1856 kbps</entry>
- <entry>48000 Hz</entry>
- <entry>MP2,AC-3,PCM</entry>
- <entry>1536 kbps (max)</entry>
- <entry>25</entry>
- <entry>4:3, 16:9</entry>
-</row>
-<row>
- <entry>PAL SVCD</entry>
- <entry>480x576</entry>
- <entry>MPEG-2</entry>
- <entry>2600 kbps</entry>
- <entry>44100 Hz</entry>
- <entry>MP2</entry>
- <entry>384 kbps (max)</entry>
- <entry>25</entry>
- <entry>4:3</entry>
-</row>
-<row>
- <entry>PAL VCD</entry>
- <entry>352x288</entry>
- <entry>MPEG-1</entry>
- <entry>1152 kbps</entry>
- <entry>44100 Hz</entry>
- <entry>MP2</entry>
- <entry>224 kbps</entry>
- <entry>25</entry>
- <entry>4:3</entry>
-</row>
-</tbody>
-</tgroup>
-</informaltable>
-
-<para>
-If your movie has 2.35:1 aspect (most recent action movies), you will
-have to add black borders or crop the movie down to 16:9 to make a DVD or VCD.
-If you add black borders, try to align them at 16-pixel boundaries in
-order to minimize the impact on encoding performance.
-Thankfully DVD has sufficiently excessive bitrate that you do not have
-to worry too much about encoding efficiency, but SVCD and VCD are
-highly bitrate-starved and require effort to obtain acceptable quality.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-constraints-gop">
-<title>GOP Size Constraints</title>
-
-<para>
-DVD, VCD, and SVCD also constrain you to relatively low
-GOP (Group of Pictures) sizes.
-For 30 fps material the largest allowed GOP size is 18.
-For 25 or 24 fps, the maximum is 15.
-The GOP size is set using the <option>keyint</option> option.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-constraints-bitrate">
-<title>Bitrate Constraints</title>
-
-<para>
-VCD video is required to be CBR at 1152 kbps.
-This highly limiting constraint also comes along with an extremly low vbv
-buffer size of 327 kilobits.
-SVCD allows varying video bitrates up to 2500 kbps, and a somewhat less
-restrictive vbv buffer size of 917 kilobits is allowed.
-DVD video bitrates may range anywhere up to 9800 kbps (though typical
-bitrates are about half that), and the vbv buffer size is 1835 kilobits.
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-vcd-dvd-output">
-<title>Output Options</title>
-
-<para>
-<application>MEncoder</application> has options to control the output
-format.
-Using these options we can instruct it to create the correct type of
-file.
-</para>
-
-<para>
-The options for VCD and SVCD are called xvcd and xsvcd, because they
-are extended formats.
-They are not strictly compliant, mainly because the output does not
-contain scan offsets.
-If you need to generate an SVCD image, you should pass the output file to
-<ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>.
-</para>
-
-<para>
-VCD:
-<screen>-of mpeg -mpegopts format=xvcd</screen>
-</para>
-
-<para>
-SVCD:
-<screen>-of mpeg -mpegopts format=xsvcd</screen>
-</para>
-
-<para>
-DVD (with timestamps on every frame, if possible):
-<screen>-of mpeg -mpegopts format=dvd:tsaf</screen>
-</para>
-
-<para>
-DVD with NTSC Pullup:
-<screen>-of mpeg -mpegopts format=dvd:tsaf:telecine -ofps 24000/1001</screen>
-This allows 24000/1001 fps progressive content to be encoded at 30000/1001
-fps whilst maintaing DVD-compliance.
-</para>
-
-
-<sect3 id="menc-feat-vcd-dvd-output-aspect">
-<title>Aspect Ratio</title>
-
-<para>
-The aspect argument of <option>-lavcopts</option> is used to encode
-the aspect ratio of the file.
-During playback the aspect ratio is used to restore the video to the
-correct size.
-</para>
-
-<para>
-16:9 or "Widescreen"
-<screen>-lavcopts aspect=16/9</screen>
-</para>
-
-<para>
-4:3 or "Fullscreen"
-<screen>-lavcopts aspect=4/3</screen>
-</para>
-
-<para>
-2.35:1 or "Cinemascope" NTSC
-<screen>-vf scale=720:368,expand=720:480 -lavcopts aspect=16/9</screen>
-To calculate the correct scaling size, use the expanded NTSC width of
-854/2.35 = 368
-</para>
-
-<para>
-2.35:1 or "Cinemascope" PAL
-<screen>-vf scale=720:432,expand=720:576 -lavcopts aspect=16/9</screen>
-To calculate the correct scaling size, use the expanded PAL width of
-1024/2.35 = 432
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-a-v-sync">
-<title>Maintaining A/V sync</title>
-
-<para>
-In order to maintain audio/video synchronization throughout the encode,
-<application>MEncoder</application> has to drop or duplicate frames.
-This works rather well when muxing into an AVI file, but is almost
-guaranteed to fail to maintain A/V sync with other muxers such as MPEG.
-This is why it is necessary to append the
-<option>harddup</option> video filter at the end of the filter chain
-to avoid this kind of problem.
-You can find more technical information about <option>harddup</option>
-in the section
-<link linkend="menc-feat-dvd-mpeg4-muxing-filter-issues">Improving muxing and A/V sync reliability</link>
-or in the manual page.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-output-srate">
-<title>Sample Rate Conversion</title>
-
-<para>
-If the audio sample rate in the original file is not the same as
-required by the target format, sample rate conversion is required.
-This is achieved using the <option>-srate</option> option and
-the <option>-af lavcresample</option> audio filter together.
-</para>
-
-<para>
-DVD:
-<screen>-srate 48000 -af lavcresample=48000</screen>
-</para>
-
-<para>
-VCD and SVCD:
-<screen>-srate 44100 -af lavcresample=44100</screen>
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-vcd-dvd-lavc">
-<title>Using libavcodec for VCD/SVCD/DVD Encoding</title>
-
-<sect3 id="menc-feat-vcd-dvd-lavc-intro">
-<title>Introduction</title>
-
-<para>
-<systemitem class="library">libavcodec</systemitem> can be used to
-create VCD/SVCD/DVD compliant video by using the appropriate options.
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-lavc-options">
-<title>lavcopts</title>
-
-<para>
-This is a list of fields in <option>-lavcopts</option> that you may
-be required to change in order to make a complaint movie for VCD, SVCD,
-or DVD:
-</para>
-
-<itemizedlist>
-<listitem><para>
- <emphasis role="bold">acodec</emphasis>:
- <option>mp2</option> for VCD, SVCD, or PAL DVD;
- <option>ac3</option> is most commonly used for DVD.
- PCM audio may also be used for DVD, but this is mostly a big waste of
- space.
- Note that MP3 audio is not compliant for any of these formats, but
- players often have no problem playing it anyway.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">abitrate</emphasis>:
- 224 for VCD; up to 384 for SVCD; up to 1536 for DVD, but commonly
- used values range from 192 kbps for stereo to 384 kbps for 5.1 channel
- sound.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vcodec</emphasis>:
- <option>mpeg1video</option> for VCD;
- <option>mpeg2video</option> for SVCD;
- <option>mpeg2video</option> is usually used for DVD but you may also use
- <option>mpeg1video</option> for CIF resolutions.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">keyint</emphasis>:
- Used to set the GOP size.
- 18 for 30fps material, or 15 for 25/24 fps material.
- Commercial producers seem to prefer keyframe intervals of 12.
- It is possible to make this much larger and still retain compatibility
- with most players.
- A <option>keyint</option> of 25 should never cause any problems.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vrc_buf_size</emphasis>:
- 327 for VCD, 917 for SVCD, and 1835 for DVD.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vrc_minrate</emphasis>:
- 1152, for VCD. May be left alone for SVCD and DVD.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vrc_maxrate</emphasis>:
- 1152 for VCD; 2500 for SVCD; 9800 for DVD.
- For SVCD and DVD, you might wish to use lower values depending on your
- own personal preferences and requirements.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vbitrate</emphasis>:
- 1152 for VCD;
- up to 2500 for SVCD;
- up to 9800 for DVD.
- For the latter two formats, vbitrate should be set based on personal
- preference.
- For instance, if you insist on fitting 20 or so hours on a DVD, you
- could use vbitrate=400.
- The resulting video quality would probably be quite bad.
- If you are trying to squeeze out the maximum possible quality on a DVD,
- use vbitrate=9800, but be warned that this could constrain you to less
- than an hour of video on a single-layer DVD.
-</para></listitem>
-<listitem><para>
- <emphasis role="bold">vstrict</emphasis>:
- <option>vstrict</option>=0 should be used to create DVDs.
- Without this option, <application>MEncoder</application> creates a
- stream that cannot be correctly decoded by some standalone DVD
- players.
-</para></listitem>
-</itemizedlist>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-lavc-examples">
-<title>Examples</title>
-
-<para>
-This is a typical minimum set of <option>-lavcopts</option> for
-encoding video:
-</para>
-<para>
-VCD:
-<screen>
--lavcopts vcodec=mpeg1video:vrc_buf_size=327:vrc_minrate=1152:\
-vrc_maxrate=1152:vbitrate=1152:keyint=15:acodec=mp2
-</screen>
-</para>
-
-<para>
-SVCD:
-<screen>
--lavcopts vcodec=mpeg2video:vrc_buf_size=917:vrc_maxrate=2500:vbitrate=1800:\
-keyint=15:acodec=mp2
-</screen>
-</para>
-
-<para>
-DVD:
-<screen>
--lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
-keyint=15:vstrict=0:acodec=ac3
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-lavc-advanced">
-<title>Advanced Options</title>
-
-<para>
-For higher quality encoding, you may also wish to add quality-enhancing
-options to lavcopts, such as <option>trell</option>,
-<option>mbd=2</option>, and others.
-Note that <option>qpel</option> and <option>v4mv</option>, while often
-useful with MPEG-4, are not usable with MPEG-1 or MPEG-2.
-Also, if you are trying to make a very high quality DVD encode, it may
-be useful to add <option>dc=10</option> to lavcopts.
-Doing so may help reduce the appearance of blocks in flat-colored areas.
-Putting it all together, this is an example of a set of lavcopts for a
-higher quality DVD:
-</para>
-
-<para>
-<screen>
--lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=8000:\
-keyint=15:trell:mbd=2:precmp=2:subcmp=2:cmp=2:dia=-10:predia=-10:cbp:mv0:\
-vqmin=1:lmin=1:dc=10:vstrict=0
-</screen>
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-vcd-dvd-audio">
-<title>Encoding Audio</title>
-
-<para>
-VCD and SVCD support MPEG-1 layer II audio, using one of
-<systemitem class="library">toolame</systemitem>,
-<systemitem class="library">twolame</systemitem>,
-or <systemitem class="library">libavcodec</systemitem>'s MP2 encoder.
-The libavcodec MP2 is far from being as good as the other two libraries,
-however it should always be available to use.
-VCD only supports constant bitrate audio (CBR) whereas SVCD supports
-variable bitrate (VBR), too.
-Be careful when using VBR because some bad standalone players might not
-support it too well.
-</para>
-
-<para>
-For DVD audio, <systemitem class="library">libavcodec</systemitem>'s
-AC-3 codec is used.
-</para>
-
-
-<sect3 id="menc-feat-vcd-dvd-audio-toolame">
-<title>toolame</title>
-
-<para>
-For VCD and SVCD:
-<screen>-oac toolame -toolameopts br=224</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-audio-twolame">
-<title>twolame</title>
-
-<para>
-For VCD and SVCD:
-<screen>-oac twolame -twolameopts br=224</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-audio-lavc">
-<title>libavcodec</title>
-
-<para>
-For DVD with 2 channel sound:
-<screen>-oac lavc -lavcopts acodec=ac3:abitrate=192</screen>
-</para>
-
-<para>
-For DVD with 5.1 channel sound:
-<screen>-channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384</screen>
-</para>
-
-<para>
-For VCD and SVCD:
-<screen>-oac lavc -lavcopts acodec=mp2:abitrate=224</screen>
-</para>
-</sect3>
-</sect2>
-
-<!-- ********** -->
-
-<sect2 id="menc-feat-vcd-dvd-all">
-<title>Putting it all Together</title>
-
-<para>
-This section shows some complete commands for creating VCD/SVCD/DVD
-compliant videos.
-</para>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-pal-dvd">
-<title>PAL DVD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
- -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 \
- -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
-keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-ntsc-dvd">
-<title>NTSC DVD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
- -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 \
- -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
-keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-pal-ac3-copy">
-<title>PAL AVI Containing AC-3 Audio to DVD</title>
-
-<para>
-If the source already has AC-3 audio, use -oac copy instead of re-encoding it.
-<screen>
-mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:tsaf \
- -vf scale=720:576,harddup -ofps 25 \
- -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
-keyint=15:vstrict=0:aspect=16/9 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-ntsc-ac3-copy">
-<title>NTSC AVI Containing AC-3 Audio to DVD</title>
-
-<para>
-If the source already has AC-3 audio, and is NTSC @ 24000/1001 fps:
-<screen>
-mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:tsaf:telecine \
- -vf scale=720:480,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:\
- vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:aspect=16/9 -ofps 24000/1001 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-pal-svcd">
-<title>PAL SVCD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
- scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
- vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
-vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 25 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
- </screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-ntsc-svcd">
-<title>NTSC SVCD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
- scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
- vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
-vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 30000/1001 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-pal-vcd">
-<title>PAL VCD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
- scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
- vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:\
-vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-
-
-<sect3 id="menc-feat-vcd-dvd-all-ntsc-vcd">
-<title>NTSC VCD</title>
-
-<para>
-<screen>
-mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
- scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
- vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:\
-vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 \
- -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
-</screen>
-</para>
-</sect3>
-</sect2>
-</sect1>
-</chapter>