<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21741 $ -->
<chapter id="containers">
<title>Contenitori</title>

<para>
E' importante chiarire un errore comune. Quando le persone vedono un file
con un'estensione <filename>.AVI</filename>, subito arrivano alla conclusione
che non sia un file MPEG. Questo non è giusto. Perlomeno non del tutto.
Contrariamente al credo popolare, un file di questo tipo
<emphasis>può</emphasis> contenere video MPEG-1.
</para>

<para>
Vedi, un <emphasis role="bold">codec</emphasis> non è la stessa cosa di un
<emphasis role="bold">formato contenitore</emphasis>.
Esempi di <emphasis role="bold">codec</emphasis> video sono: MPEG-1, MPEG-2,
MPEG-4 (DivX), Indeo5, 3ivx.
Esempi di <emphasis role="bold">formati</emphasis> contenitore sono:
MPG, AVI, ASF.
</para>

<para>
In teoria, puoi infilare un video OpenDivX e audio MP3 in un
<emphasis role="bold">contenitore MPG</emphasis>. Tuttavia, la gran parte dei
lettori multimediali non lo riprodurrà, dato che si aspettano un video
MPEG-1 e un audio MP2 (diversamente dall'<emphasis role="bold">AVI</emphasis>,
<emphasis role="bold">MPG</emphasis> non ha i campi necessari per descrivere i
suoi flussi video e audio). Oppure puoi mettere un video MPEG-1 dentro un file
AVI.
<ulink url="http://ffmpeg.org/">FFmpeg</ulink> e
<link linkend="mencoder"><application>MEncoder</application></link>
possono creare questi file.
</para>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="video-formats">
<title>Formati video</title>

<sect2 id="mpg-vob-dat">
<title>File MPEG</title>

<para>
I file MPEG sono di diverse guise:
</para>

<itemizedlist>
<listitem><para>
  MPG: Questo è la forma più <emphasis role="bold">basilare</emphasis> del
  formato file MPEG. Contiene video MPEG-1, e audio MP2 (MPEG-1 layer 2) o
  raramente MP1.
</para></listitem>
<listitem><para>
  DAT: Questo è esattamente lo stesso formato di MPG con una diversa
  estensione. Viene usato sui <emphasis role="bold">Video CD</emphasis>. A
  causa del modo in cui i VCD vengono creati e Linux è progettato, i file DAT
  non possono essere riprodotti né copiati dai VCD come file normali. Per
  riprodurre un Video CD devi usare l'opzione <option>vcd://</option>.
</para></listitem>
<listitem><para>
  VOB: Questo è il formato file MPEG sui <emphasis role="bold">DVD</emphasis>.
  E' lo stesso che MPG, con in più la possibilità di contenere sottotitoli o
  audio non-MPEG (AC3). Contiene video codificato in MPEG-2 e di solito audio
  AC3, ma anche DTS, MP2 e LPCM non compresso sono permessi.
  <emphasis role="bold">Leggi la sezione <link linkend="dvd">DVD</link></emphasis>!
</para></listitem>
<listitem><para>
  TY: Questo è un flusso MPEG TiVo. Contiene dati MPEG PES per i flussi audio
  e video, così come informazioni extra come primi piani. Il contenitore non
  è un flusso programma MPEG, ma un formato proprietario creato da TiVo. Per
  ulteriori informazioni sul formato flusso TiVo, per favore fai riferimento
  alla <ulink url="http://dvd-create.sourceforge.net/tystudio/tystream.shtml">
  pagina di TyStudio</ulink>.
</para></listitem>
</itemizedlist>

<para>
Serie di fotogrammi formano gruppi indipendenti tra loro nei file MPEG. Ciò
significa che tu puoi tagliare/collegare file un MPEG con strumenti standard
per i file (come <command>dd</command>, <command>cut</command>), ed esso rimane
completamente funzionante.
</para>

<para>
Una caratteristica importante degli MPG è che hanno un campo per descrivere
il rapporto di aspetto del flusso video ivi contenuto. Per esempio i SVCD hanno
un video a risoluzion 480x480, e nell'intestazione quel campo è impostato a
4:3, così che venga riprodotto a 640x480. I file AVI spesso sono senza questo
campo, indi debbono essere ridimensionati durante la codifica o riprodotti con
l'opzione <option>-aspect</option>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="avi">
<title>File AVI</title>

<para>
Progettato da Microsoft,
<emphasis role="bold">AVI (Audio Video Interleaved)</emphasis>
è un formato multifunzione molto diffuso, usato correntemente soprattutto per
video MPEG-4 (DivX e DivX4). Ha molti problemi e trappolette conosciute
(per esempio nello streaming). Supporta un flusso video e da 0 a 99 flussi
audio e può essere grande fino a 2GB, ma c'è un'estensione che permette file
più grossi, chiamata <emphasis role="bold">OpenDML</emphasis>.
Microsoft attualmente sconsiglia fortemente il suo utilizzo e incoraggia quello
di ASF/WMV. Non che a qualcuno interessi.
</para>

<para>
Esiste un hack che permette ai file AVI di contenere un flusso aduio Ogg Vorbis,
ma li rende incompatibili con lo standard AVI.
<application>MPlayer</application> supporta la riproduzione di questi file.
Anche la ricerca è implementata ma gravemente penalizzata da file condificati
non correttamente con intestazioni fuorvianti. Sfortunatamente l'unico
codificatore attualmente in grado di creare questi file,
<application>NanDub</application>, ha questo problema.
</para>

<note><para>
Le telecamere DV creano flussi DV grezzi che gli strumenti per acquisire DV
convertono in due tipi diversi di file AVI. L'AVI conterràcosì sia flussi
audio e video separati che <application>MPlayer</application> può riprodurre,
oppure file di flusso grezzo DV per il quale il supporto è sotto sviluppo.
</para></note>

<para>
Ci sono due tipi di file AVI:
<itemizedlist>
<listitem><para>
  <emphasis role="bold">Con interleave:</emphasis> Il contenuto audio e video
  è interconnesso. Questo è l'utilizzo standard. Raccomandato e usato
  diffusamente. Alcuni strumenti creano file AVI con interleave con una
  sincronizzazione errata.
  <application>MPlayer</application> li rileva come con interleave, per cui
  aumenta progressivamente la perdita di sincronia A/V, probabilmente durante
  la ricerca. Questi file dovrebbero esser riprodotti come senza interleave
  (con l'opzione <option>-ni</option>).
</para></listitem>
<listitem><para>
  <emphasis role="bold">Senza interleave:</emphasis> Prima si trova tutto il
  flusso video, poi tutto il flusso audio. Ciò implica un sacco di ricerca,
  rendendo difficile la riproduzione da rete o da CD-ROM.
</para></listitem>
</itemizedlist>
</para>

<para>
<application>MPlayer</application> supporta due tipi di temporizzazione per i
file AVI:
<itemizedlist>
<listitem><para>
  <emphasis role="bold">bps-based:</emphasis>: E' basata sulla
  frequenza/campionamento dei flussi video/audio. Questo metodo viene usato
  dalla maggior parte dei lettori, tra cui
  <ulink url="http://avifile.sf.net">avifile</ulink> e
  <application>Windows Media Player</application>. File con intestazioni
  rovinate, e file creati con audio VBR ma non con un codificatore compatibile
  VBR porteranno a una desincronizzazione A/V con questo metodo (principalmente
  in ricerca).
</para></listitem>
<listitem><para>
  <emphasis role="bold">basati sull'interleave:</emphasis> Non usa il
  valore di frequenza dall'intestazione, usa invece la posizione relativa dei
  segmenti audio e video interconnessi, rendendo riproducibili file con audio
  VBR mal codificati.
</para></listitem>
</itemizedlist>
</para>

<para>
E' permesso qualsiasi codec audio e video, ma nota che l'audio VBR non è ben
supportato da molti lettori multimediali. Il formato file rende possibile
usare audio VBR, ma molti lettori si aspettano audio CBR, perciò vanno in
crisi col VBR. VBR è insolito e le specifiche AVI di Microsoft indicano solo
audio CBR. Ho anche notato che molti codificatori/multiplexer creano file
errati usando audio VBR. Ci sono solo due eccezioni conosciute:
<application>NanDub</application> e
<link linkend="mencoder"><application>MEncoder</application></link>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="asf-wmv">
<title>File ASF/WMV</title>

<para>
ASF (Active Streaming Format) arriva da Microsoft. Hanno sviluppato due varianti
di ASF, v1.0 e v2.0. La v1.0 viene usata dai loro strumenti multimediali
(<application>Windows Media Player</application> e
<application>Windows Media Encoder</application>) ed
è molto segreta. La v2.0 è pubblica e brevettata. Sono sicuramente diverse,
non vi è alcuna compatibilità (è solo un ulteriore gioco legale).
<application>MPlayer</application> supporta solo la v1.0, visto che nessuno ha
mai visto file v2.0 :). Nota che i file ASF a tutt'oggi usano l'estensione
<filename>.WMA</filename> o <filename>.WMV</filename>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="mov">
<title>File QuickTime/MOV</title>

<para>
Questi formati sono stati progettati da Apple e possono contenere qualsiasi
codec, CBR o VBR. Solitamente hanno un'estensione <filename>.QT</filename> o
<filename>.MOV</filename>. Nota che visto che il gruppo MPEG-4 ha scelto
QuickTime come il formato consigliato per MPEG-4, i loro file MOV hanno
un'estensione <filename>.MPG</filename> o <filename>.MP4</filename> (è
interessante notare che i flussi audio e video in questi file sono veri file
MPG e AAC. Puoi addirittura estrarli con le opzioni <option>-dumpvideo</option>
e <option>-dumpaudio</option>).
</para>
</sect2>

<!-- ********** -->

<sect2 id="vivo">
<title>File VIVO</title>

<para>
<application>MPlayer</application> decodifica con gioia i formati file VIVO. Il
grande svantaggio del formato è che non ha un blocco di indicizzazione, né una
dimensione dei pacchetti fissa o byte di sincronizzazione e molti file non hanno
manco fotogrammi chiave, indi dimenticati la ricerca!
</para>

<para>
Il codec video dei file VIVO/1.0 è
<emphasis role="bold">h.263</emphasis> standard.
Il codec video dei file VIVO/2.0 è un <emphasis role="bold">h.263v2</emphasis>
modificato e non standard.
Per l'audio è lo stesso, può essere
<emphasis role="bold">g.723 (standard)</emphasis>, o
<emphasis role="bold">Vivo Siren</emphasis>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="fli">
<title>File FLI</title>

<para>
<emphasis role="bold">FLI</emphasis> è un formato file molto vecchio usato da
Autodesk Animator, ma è un formato file diffuso per brevi animazioni in rete.
<application>MPlayer</application> decodifica i filmati FLI ed è anche in
grado di fare la ricerca in essi (utile quando stai ripetendoli con l'opzione
<option>-loop</option>). I file FLI non hanno fotogrammi chiave, perciò
l'immagine sarà incasinata per un breve periodo dopo la ricerca.
</para>
</sect2>

<!-- ********** -->

<sect2 id="realmedia">
<title>File RealMedia (RM)</title>

<para>
Ebbene sì, <application>MPlayer</application> può leggere (demuxare) file
RealMedia (<filename>.rm</filename>).
</para>
</sect2>

<!-- ********** -->

<sect2 id="nuppelvideo">
<title>File NuppelVideo</title>

<para>
NuppelVideo è uno strumento di acquisizione TV (AFAIK:).
<application>MPlayer</application> può leggere i suoi file
<filename>.NUV</filename> (solo NuppelVideo 5.0). Tali file possono contenere
fotogrammi YV12 non compressi, YV12+RTJpeg compressi, YV12 RTJpeg+lzo
compressi, e YV12+lzo compressi.
<application>MPlayer</application> li decodifica tutti (e pure li può
codificare con <application>MEncoder</application> in MPEG-4 (DivX)/etc!).
La ricerca funziona.
</para>
</sect2>

<!-- ********** -->

<sect2 id="yuv4mpeg">
<title>File yuv4mpeg</title>

<para>
<ulink url="http://mjpeg.sf.net">yuv4mpeg / yuv4mpeg2</ulink>
è un formato file usato dai
<ulink url="http://mjpeg.sf.net">programmi mjpegtools</ulink>.
Puoi acquisire, produrre, filtrare e codificare video in questo formato usando
questi strumenti. Il formato file è invero una sequenza di immagini YUV 4:2:0
non compresse.
</para>
</sect2>

<!-- ********** -->

<sect2 id="film">
<title>File FILM</title>

<para>
Questo formato è usato sui CD-ROM dei vecchi giochi del Sega Saturn.
</para>
</sect2>

<!-- ********** -->

<sect2 id="roq">
<title>File RoQ</title>

<para>
I file RoQ sono file multimediali usati in alcuni videogiochi della ID, come
Quake III e Return to Castle Wolfenstein.
</para>
</sect2>

<!-- ********** -->

<sect2 id="ogg">
<title>File OGG/OGM</title>

<para>
Questo è un nuovo formato file fornito da
<ulink url="http://www.xiph.org">Xiphophorus</ulink>.
Può contenere qualsiasi codec video o audio, CBR o VBR. Per poterlo riprodurre
Ti servirà avere <systemitem class="library">libogg</systemitem> e
<systemitem class="library">libvorbis</systemitem> installate prima di
compilare <application>MPlayer</application>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="sdp">
<title>File SDP</title>

<para>
<ulink url="ftp://ftp.rfc-editor.org/in-notes/rfc2327.txt">SDP</ulink> è un
formato file standard di IETF per descrivere flussi RTP video e/o audio.
(è richiesto
"<ulink url="http://www.live555.com/mplayer/">LIVE555 Streaming Media</ulink>")
</para>
</sect2>

<!-- ********** -->

<sect2 id="pva">
<title>File PVA</title>

<para>
PVA è un formato simile a MPEG usato da software di schede TV DVB
(per es.: <application>MultiDec</application>,
<application>WinTV</application> sotto Windows).
</para>
</sect2>

<!-- ********** -->

<sect2 id="nsv">
<title>File NSV</title>

<para>
NSV (NullSoft Video) è il formato file usato dal riproduttore
<application>Winamp</application> per riprodurre audio e video. Il video è
VP3, VP5 o VP6, l'audio MP3, AAC o VLB. La versione di NSV solo audio ha
l'estensione <filename>.nsa</filename>.
<application>MPlayer</application> può riprodurre sia flussi NSV che file.
Per favore nota che molti file dal <ulink url="http://www.winamp.com">sito di
Winamp</ulink> usano audio VLB, che non può ancora essere decodificato.
Inoltre per i flussi da quel sito serve un'ulteriore livello di
spacchettizzazione che deve essere ancora sviluppato
(quei file non sono riproducibili perché usano audio VLB).
</para>
</sect2>

<!-- ********** -->

<sect2 id="matroska">
<title>File Matroska</title>

<para>
Matroska è un formato contenitore "aperto".
Leggi altro sul <ulink url="http://www.matroska.org/">sito ufficiale</ulink>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="nut">
<title>File NUT</title>

<para>
NUT is the container format developed by <application>MPlayer</application> and
<application>FFmpeg</application> folks. Both projects support it.
Read more on the <ulink url="http://www.nut.hu/">official site</ulink>.
NUT è il formato contenitore sviluppato dalla gente di MPlayer e FFmpeg.
Entrambi i progetti lo supportano.
Leggi altro sul sito ufficiale.
</para>
</sect2>

<!-- ********** -->

<sect2 id="gif">
<title>File GIF</title>

<para>
Il formato <emphasis role="bold">GIF</emphasis> è un formato diffuso per la
grafica web. Ci sono due versioni delle specifiche GIF, GIF87a e GIF89a.
La differenza principale è che GIF98a permette l'animazione.
<application>MPlayer</application> supporta entrambi i formati attraverso
l'utilizzo della libreria <systemitem class="library">libungif</systemitem> o
di un'altra compatibile con libgif. Le GIF non animate saranno mostrate come
video con un solo fotogramma. (Usa le opzioni <option>-loop</option> e
<option>-fixed-vo</option> per mostrarle più a lungo.)
</para>

<para>
<application>MPlayer</application> attualmente non supporta le ricerca dentro
ai file GIF. I file GIF non hanno necessariamente una dimensione fissa dei
fotogrammi, né una frequenza fissa. Piuttosto, ciascun fotogramma è di
dimensione indipendente e si suppone che sia posizionato in una data posizione
su un campo di dimensione fissata. La frequenza dei fotogrammi viene
controllata da un blocco opzionale prima di ciascun fotogramma, che specifica
il ritardo, in centesimi di secondo, del fotogramma seguente.
</para>

<para>
I file GIF standard contengono fotogrammi RGB a 24 bit con almeno una palette
indicizzata ad 8 bit. Questi fotogrammi sono solitamente compressi LZW, anche
se alcuni codificatori GIF producono fotogrammi non compressi per evitare
problemi di brevetti con la compressione LZW.
</para>

<para>
Se la tua distribuzione non è fornita di
<systemitem class="library">libungif</systemitem>, scaricane una copia dalla
<ulink url="http://sourceforge.net/projects/libungif">pagina principale di
libungif</ulink>. Per informazioni tecniche dettagliate, dai un'occhiata alle
<ulink url="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">specifiche GIF89a
</ulink>.
</para>
</sect2>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="audio-formats">
<title>Formati audio</title>

<para>
<application>MPlayer</application> è un lettore di
<emphasis role="bold">filmati</emphasis> e non un lettore
<emphasis role="bold">multimediale</emphasis>, tuttavia è in grado di
riprodurre alcuni formati di file audio (sono elencati nella sezione qui sotto).
Questo non è un utilizzo raccomandato di <application>MPlayer</application>,
faresti meglio ad usare <ulink url="http://www.xmms.org">XMMS</ulink>.
</para>

<!-- ********** -->

<sect2 id="mp3">
<title>File MP3</title>

<para>
Puoi avere problemi riproducendo alcuni file MP3 che
<application>MPlayer</application> potrebbe identificare in maniera errata
come MPEG e riprodurli male o per niente. Questo comportamento non può esser
corretto senza abbandonare il supporto per alcuni file MPEG rovinati perciò
rimarraà così per il futuro prossimo. L'opzione <option>-demuxer</option>
descritta nella pagina man può aiutarti in questi casi.
</para>
</sect2>

<!-- ********** -->

<sect2 id="ogg-vorbis">
<title>File OGG/OGM (Vorbis)</title>

<para>
Richiedono
<systemitem class="library">libogg</systemitem> e
<systemitem class="library">libvorbis</systemitem>
correttamente installate.
</para>
</sect2>

<!-- ********** -->

<sect2 id="cdda">
<title>CD audio</title>

<para>
<application>MPlayer</application> può usare
<application>cdparanoia</application> per riprodurre CDDA (Audio CD).
L'obiettivo di questa sezione non contempla l'elenco delle caratteristiche di
<application>cdparanoia</application>.
</para>

<para>
Vedi nella pagina man l'opzione <option>-cdda</option>, che può essere usate
per passare opzioni a <application>cdparanoia</application>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="xmms">
<title>XMMS</title>

<para>
<application>MPlayer</application> può utilizzare i plugin di ingresso di
<application>XMMS</application> per riprodurre molti formati file. Ci sono
plugin per i suoni dei videgiochi SNES, SID (dal Commodore 64), molti formati
Amiga, .xm, .it, VQF, musepack, Bonk, shorten e molti altri. Puoi trovarli sulla
<ulink url="http://www.xmms.org/plugins.php?category=input">pagina dei plugin di ingresso di XMMS</ulink>.
</para>

<para>
Per questa caratteristica devi avere <application>XMMS</application> e
compilare <application>MPlayer</application> con
<filename>./configure --enable-xmms</filename>. Se ciò non funziona, potresti
dover impostare esplicitamente i percorsi dei plugin e della libreria di
<application>XMMS</application> attraverso le opzioni 
<option>--with-xmmsplugindir</option> e <option>--with-xmmslibdir</option>
</para>
</sect2>
</sect1>

</chapter>
