mirror of
https://github.com/mpv-player/mpv
synced 2024-12-30 19:22:11 +00:00
a03a58e43b
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26289 b3059339-0415-0410-9bf9-f77b7e298cf2
713 lines
25 KiB
XML
713 lines
25 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- synced with r26146 -->
|
|
<chapter id="codecs">
|
|
<title>Codec</title>
|
|
|
|
<sect1 id="video-codecs">
|
|
<title>Codec video</title>
|
|
|
|
<para>
|
|
La <ulink url="../../codecs-status.html">tabella di stato dei codec</ulink> è
|
|
un elenco completo di tutti i codec supportati, aggiornata giornalmente.
|
|
Nella <ulink url="http://www.mplayerhq.hu/design7/dload.html#binary_codecs">sezione download</ulink>
|
|
del nostro sito sono disponibili alcuni codec binari da usare con MPlayer.
|
|
</para>
|
|
|
|
<para>
|
|
I più importanti su tutti:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
video
|
|
<emphasis role="bold">MPEG-1</emphasis> (<emphasis role="bold">VCD</emphasis>) e
|
|
<emphasis role="bold">MPEG-2</emphasis> (<emphasis role="bold">DVD</emphasis>)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatori nativi per <emphasis role="bold">tutte le tipologie di DivX,
|
|
3ivX, Microsoft MPEG-4</emphasis> v1, v2 e altre varianti di MPEG-4.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatore nativi per <emphasis role="bold">Windows Media Video 7/8</emphasis>
|
|
(<emphasis role="bold">WMV1/WMV2</emphasis>), e decodificatori su DLL Win32
|
|
per <emphasis role="bold">Windows Media Video 9</emphasis>
|
|
(<emphasis role="bold">WMV3</emphasis>),
|
|
entrambi usati in file <filename>.wmv</filename>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatore nativo <emphasis role="bold">Sorenson 1 (SVQ1)</emphasis>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatore nativo <emphasis role="bold">Sorenson 3 (SVQ3)</emphasis>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatore <emphasis role="bold">3ivx</emphasis> v1, v2
|
|
</para></listitem>
|
|
<listitem><para>
|
|
codec Cinepak e <emphasis role="bold">Intel Indeo</emphasis> (3.1,3.2,4.1,5.0)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
formati hardware <emphasis role="bold">MJPEG</emphasis>, AVID, VCR2, ASV2 e
|
|
altri
|
|
</para></listitem>
|
|
<listitem><para>
|
|
varianti VIVO 1.0, 2.0, I263 e altre <emphasis role="bold">H.263(+)</emphasis>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
FLI/FLC
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<emphasis role="bold">RealVideo 1.0 & 2.0</emphasis> atraverso
|
|
<systemitem class="library">libavcodec</systemitem>, e
|
|
codec <emphasis role="bold">RealVideo 3.0 & 4.0</emphasis> usando le
|
|
librerie di RealPlayer
|
|
</para></listitem>
|
|
<listitem><para>
|
|
decodificatore nativo per HuffYUV
|
|
</para></listitem>
|
|
<listitem><para>
|
|
vari vecchi formati semplici tipo RLE
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
Se hai un codec Win32 non elencato qui che non è ancora supportato, leggi per
|
|
favore l'HOWTO sull'<link linkend="codec-importing">importazione codec</link>
|
|
e aiutaci ad aggiungerne il decodificatore relativo.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="ffmpeg" xreflabel="FFmpeg/libavcodec">
|
|
<title>FFmpeg/libavcodec</title>
|
|
|
|
<para>
|
|
<ulink url="http://ffmpeg.org">FFmpeg</ulink> contiene
|
|
<systemitem class="library">libavcodec</systemitem>, la libreria open source
|
|
dominante di codec audio e video. E' in grado di decodificare molti formati
|
|
multimediali, di solito a velocità più elevate delle alternative, e punta ad
|
|
aggiungere prima o poi il supporto di decodifica per i restanti.
|
|
E' il decodificatore di default usato da <application>MPlayer</application>.
|
|
Anche la codifica è possibile per alcuni formati, ed è permessa da
|
|
<application>MEncoder</application>.
|
|
</para>
|
|
|
|
<para>
|
|
Per una lista completa dei codec
|
|
<ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC19">video</ulink> e
|
|
<ulink url="http://ffmpeg.org/ffmpeg-doc.html#SEC20">audio</ulink>
|
|
supportati per favore visita la homepage di FFmpeg.
|
|
</para>
|
|
|
|
<para>
|
|
<application>MPlayer</application> contiene
|
|
<systemitem class="library">libavcodec</systemitem>.
|
|
Esegui semplicemente <filename>./configure</filename> e compila.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="xvid">
|
|
<title>Xvid</title>
|
|
|
|
<para>
|
|
<ulink url="http://www.xvid.org">Xvid</ulink> è un codec video libero
|
|
compatibile MPEG-4 ASP, che contempla codifica a doppio pasaggio e supporto
|
|
completo MPEG-4 ASP, rendendolo molto più efficiente del ben noto codec DivX.
|
|
Porta una buona qualità video e delle buone prestazionu, grazie alle
|
|
ottimizzazioni per CPU per molti processori moderni.
|
|
</para>
|
|
|
|
<para>
|
|
Nacque come un fork di sviluppo del codec OpenDivX.
|
|
Ciò è accaduto quando ProjectMayo portò OpenDivX in DivX4 a sorgenti chiusi,
|
|
e le persone non di ProjectMayo che lavoravano su OpenDivX si arrabbiarono,
|
|
così iniziarono Xvid. Perciò tutti e due i progetti hanno la stessa origine.
|
|
</para>
|
|
|
|
<para>
|
|
Nota che Xvid non è necessario per decodificare video codificato in Xvid.
|
|
Viene usata di default <systemitem class="library">libavcodec</systemitem>
|
|
visto che ha maggior velocità.
|
|
</para>
|
|
|
|
<procedure>
|
|
<title>Installare <systemitem class="library">Xvid</systemitem></title>
|
|
<para>
|
|
Come molti software open source, è disponibili in due modi:
|
|
<ulink url="http://www.xvid.org/downloads.html">rilasci ufficiali</ulink>
|
|
e la versione in CVS.
|
|
La versione CVS solitamente è solitamente abbastanza stabile da utilizzare,
|
|
visto che la maggior parte delle volte include fix per i bachi che esistono
|
|
nei rilasci.
|
|
Ecco quello che devi fare per far sì che la versione CVS di
|
|
<systemitem class="library">Xvid</systemitem> funzioni con
|
|
<application>MEncoder</application> (ti servono almeno
|
|
<application>autoconf</application> 2.50,
|
|
<application>automake</application>, e <application>libtool</application>):
|
|
</para>
|
|
<step><para>
|
|
<screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen>
|
|
</para></step>
|
|
<step><para>
|
|
<screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen>
|
|
</para></step>
|
|
<step><para>
|
|
<screen>cd xvidcore/build/generic</screen>
|
|
</para></step>
|
|
<step><para>
|
|
<screen>./bootstrap.sh</screen>
|
|
</para></step>
|
|
<step><para>
|
|
<screen>./configure</screen>
|
|
Puoi dover aggiungere alcune opzioni (controlla quello che emette
|
|
<command>./configure --help</command>).
|
|
</para></step>
|
|
<step><para>
|
|
<screen>make && make install</screen>
|
|
</para></step>
|
|
<step><para>
|
|
Se hai specificato <option>--enable-divxcompat</option>,
|
|
copia <filename>../../src/divx4.h</filename> in
|
|
<filename class="directory">/usr/local/include/</filename>.
|
|
</para></step>
|
|
<step><para>
|
|
Ricompila <application>MPlayer</application> con
|
|
<option>--with-xvidlibdir=<replaceable>/percorso/di/</replaceable>libxvidcore.a</option>
|
|
<option>--with-xvidincdir=<replaceable>/percorso/di/</replaceable>xvid.h</option>.
|
|
</para></step>
|
|
</procedure>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="codec-x264">
|
|
<title><systemitem class="library">x264</systemitem></title>
|
|
|
|
<sect3 id="codec-x264-whatis">
|
|
<title>Cos'è <systemitem class="library">x264</systemitem>?</title>
|
|
|
|
<para>
|
|
<ulink url="http://developers.videolan.org/x264.html"><systemitem class="library">x264</systemitem></ulink>
|
|
è una libreria per creare flussi video H.264.
|
|
Non è completa al 100%, ma attualmente ha perlomeno qualche tipo di supporto
|
|
per la maggior parte delle caratteristiche di H.264 che influenzano la qualità.
|
|
Ci sono anche molte caratteristiche avanzate nelle specifiche H.264 che non
|
|
hanno nulla ha che fare con la qualità video di per sé; molte di queste non
|
|
sono ancora implementate in <systemitem class="library">x264</systemitem>.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>Caratteristiche del codificatore</title>
|
|
<listitem><para>CAVLC/CABAC</para></listitem>
|
|
<listitem><para>Multi-referenza</para></listitem>
|
|
<listitem><para>
|
|
Intra: tutti i tipi di macroblocco (16x16, 8x8, e 4x4 con tutte le predizioni)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Inter P: tutti i partizionamenti (da 16x16 fino a 4x4)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Inter B: partizionamenti da 16x16 fino a 8x8 (includendo SKIP/DIRECT)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Controllo frequenza: quantizzatore costante, frequenza bit costante, ABR a
|
|
passaggio singolo o multiplo, VBV facoltativo
|
|
</para></listitem>
|
|
<listitem><para>Rilevazione cambi scena</para></listitem>
|
|
<listitem><para>Posizionamento fotogrammi B adattivo</para></listitem>
|
|
<listitem><para>
|
|
Fotogrammi B come referenza / ordine arbitrario dei fotogrammi
|
|
</para></listitem>
|
|
<listitem><para>Trasformazione spaziale adattivo 8x8 e 4x4</para></listitem>
|
|
<listitem><para>Modalità senza perdita (lossless)</para></listitem>
|
|
<listitem><para>Matrici di quantizzazione personalizzate</para></listitem>
|
|
<listitem><para>Codifica parallela di sezioni multiple</para></listitem>
|
|
<listitem><para>Interlacciamento</para></listitem>
|
|
</itemizedlist>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="codec-h264-whatis">
|
|
<title>Cos'è H.264?</title>
|
|
|
|
<para>
|
|
H.264 è un nome per un nuovo codec video digitale sviluppato in comunione
|
|
dall'ITU e da MPEG.
|
|
Può anche essere correttamente chiamato coi nomi altisonanti di
|
|
"ISO/IEC 14496-10" o "MPEG-4 Part 10".
|
|
Più frequentemente, viene chiamato "MPEG-4 AVC" o solo "AVC".
|
|
</para>
|
|
|
|
<para>
|
|
In qualsiasi modo tu lo chiami, può valer la pena provare l'H.264 dato che
|
|
tipicamente raggiunge la qualità di MPEG-4 ASP con il 5%-30% in meno della
|
|
frequenza bit.
|
|
I risultati reali dipenderanno sia dal materiale sorgente che dal codificatore.
|
|
I guadagni ottenuti usando H.264 non arrivano senza un costo: per decodificare
|
|
flussi H.264 pare richiedere CPU potenti e memoria.
|
|
Per esempio, su un Athlon 1733 MHz, un H.264 a risoluzione video DVD a 1500kbps
|
|
richiede circa il 35% della CPU, per la decodifica.
|
|
Per contronto, decodificare un flusso MPEG-4 ASP a risoluzione video DVD a
|
|
1500kbps richiede circa il 10% della CPU.
|
|
Ciò significa che anche un DVD rip decente può delle volte saltellare su CPU
|
|
più lente di 2.0 GHz o giù di lì.
|
|
</para>
|
|
|
|
<para>
|
|
Almeno con <systemitem class="library">x264</systemitem>,
|
|
le risorse richieste per la codifica non sono peggiori di quelle cui sei
|
|
abituato per MPEG-4 ASP.
|
|
Per esempio, su un Athlon 1733 MHz una codifica tipica di un DVD girerebbe a
|
|
5-15fps.
|
|
</para>
|
|
|
|
<para>
|
|
Questa documentazione non vuole spiegare i dettagli di H.264, ma se sei
|
|
interessato in un breve resoconto, potresti voler leggere
|
|
<ulink url="http://www.cdt.luth.se/~peppar/kurs/smd151/spie04-h264OverviewPaper.pdf">The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions</ulink>.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="codec-x264-playback">
|
|
<title>Come posso riprodurre video H.264 con
|
|
<application>MPlayer</application>?</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> usa il decodificatore H.264 di
|
|
<systemitem class="library">libavcodec</systemitem>.
|
|
<systemitem class="library">libavcodec</systemitem> ha avuto una decodifica
|
|
almeno minimalmente usabile da circa luglio 2004, tuttavia grandi modifiche e
|
|
sviluppi sono stati implementati da quel momento, sia in termini di maggiori
|
|
funzionalità supportate che in termini di miglior utilizzo della CPU.
|
|
Tanto per esser sicuri, è sempre una buona idea usare un checkout recente di
|
|
<systemitem class="library">libavcodec</systemitem> da SubVersion.
|
|
</para>
|
|
|
|
<para>
|
|
If you want a quick and easy way to know whether there have been
|
|
recent changes to <systemitem class="library">libavcodec</systemitem>'s
|
|
H.264 decoding, you might keep an eye on
|
|
<ulink url="http://svn.mplayerhq.hu/ffmpeg/trunk/libavcodec/h264.c?view=log">FFmpeg Subversion repository's web interface</ulink>.
|
|
Se vuoi un modo rapido ed indolore di sapere se ci sono state modifiche recenti
|
|
alla decodifica H.264 di <systemitem class="library">libavcodec</systemitem>,
|
|
puoi poter dare un'occhiata all'<ulink url="http://svn.mplayerhq.hu/ffmpeg/trunk/libavcodec/h264.c?view=log">interfaccia web del repository SubVersion di FFmpeg</ulink>.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="codec-x264-encode">
|
|
<title>Come posso codificare video usando <application>MEncoder</application>
|
|
e <systemitem class="library">x264</systemitem>?</title>
|
|
|
|
<para>
|
|
Se hai il client di subversion installato, i sorgenti più recenti di x264
|
|
possono esser ottenuti con questo comando:
|
|
<screen>svn co svn://svn.videolan.org/x264/trunk x264</screen>
|
|
I sorgenti di <application>MPlayer</application> vengono aggiornati
|
|
ogniqualvolta c'è una modifica nelle API di
|
|
<systemitem class="library">x264</systemitem>, per cui si consiglia sempre di
|
|
usare allo stesso modo la versione da SubVersion di MPlayer.
|
|
Forse questa situazione cambierà quando e se ci sarà un rilascio di
|
|
<systemitem class="library">x264</systemitem>.
|
|
Nel frattempo, <systemitem class="library">x264</systemitem> dovrebbe esser
|
|
considerato molto instabile, nel senso che la sua interfaccia di programmazione
|
|
è soggetta a cambiamenti.
|
|
</para>
|
|
|
|
<para>
|
|
<systemitem class="library">x264</systemitem> so compila e installa nel solito
|
|
modo:
|
|
<screen>./configure && make && sudo make install</screen>
|
|
Questo installa libx264 in /usr/local/lib e x264.h viene posto in
|
|
/usr/local/include.
|
|
|
|
Con la libreria <systemitem class="library">x264</systemitem> e gli header nei
|
|
percorsi standard, compilare il supporto per
|
|
<systemitem class="library">x264</systemitem> in
|
|
<application>MPlayer</application> è facile.
|
|
Lancia semplicemente il comando:
|
|
<screen>./configure && make && sudo make install</screen>
|
|
Lo script <filename>./configure</filename> controllerà automaticamente che tu
|
|
abbia i requisiti richiesti per <systemitem class="library">x264</systemitem>.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="audio-codecs">
|
|
<title>Codec audio</title>
|
|
|
|
<itemizedlist>
|
|
<title>I codec più importanti su tutti:</title>
|
|
<listitem><para>
|
|
audio MPEG layer 1/2/3 (MP1/2/3) (codice
|
|
<emphasis role="bold">nativo</emphasis>, con ottimizzazione MMX/SSE/3DNow!)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Windows Media Audio 7 e 8 (AKA WMAv1 and WMAv2)
|
|
(codice <emphasis role="bold">nativo</emphasis>, con
|
|
<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Windows Media Audio 9 (WMAv3) (usando le DLL DMO)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
audio AC-3 Dolby (codice <emphasis role="bold">nativo</emphasis>, con
|
|
ottimizzazione MMX/SSE/3DNow!)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
AC-3 passando attraverso l'hardware della scheda audio
|
|
</para></listitem>
|
|
<listitem><para>
|
|
AAC
|
|
</para></listitem>
|
|
<listitem><para>
|
|
codec audio Ogg Vorbis (libreria <emphasis role="bold">nativa</emphasis>)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
RealAudio: DNET (AC-3 a bassa frequenza), Cook, Sipro and ATRAC3
|
|
</para></listitem>
|
|
<listitem><para>
|
|
QuickTime: codec audio Qualcomm e QDesign
|
|
</para></listitem>
|
|
<listitem><para>
|
|
audio VIVO (g723, Vivo Siren)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
audio Voxware (usando le DLL DirectShow)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
alaw e ulaw, svariati formati gsm, adpcm e pcm e altri vecchi codec audio
|
|
semplici
|
|
</para></listitem>
|
|
<listitem><para>
|
|
codec voce Adaptive Multi-Rate (AMR)
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="swac3">
|
|
<title>Decodifica software AC-3</title>
|
|
|
|
<para>
|
|
Questo è il decodificatore di default usato per file con audio AC-3.
|
|
</para>
|
|
|
|
<para>
|
|
Il decodificatore AC-3 può creare mix audio in uscita per 2, 4, o 6
|
|
altoparlanti.
|
|
Quando è configurato per 6 altoparlanti, questo decodificatore fornisce uscite
|
|
separate di tutti i canali AC-3 verso il driver audio, permettendo un'esperienza
|
|
completa "surround sound" senza il decodificatore esterno AC-3 richiesto per
|
|
usare il codec hwac3.
|
|
</para>
|
|
|
|
<para>
|
|
Usa l'opzione <option>-channels</option> per impostare il numero dei canali di
|
|
uscita. Usa <option>-channels 2</option> per un sottomissaggio stereo. Per un
|
|
sottomissaggio a 4 canali (uscite Frontale sinistro, Frontale destro, Surround
|
|
sinistro, Surround destro), usa <option>-channels 4</option>. In questo caso,
|
|
un qualsiasi canale centrale verrà miscelato in parti uguali nei canali
|
|
frontali.
|
|
<option>-channels 6</option> farà uscire tutti i canali AC-3 così come sono
|
|
stati codificati - nell'ordine, sinistro, destro, Surround sinistro, Surround
|
|
destro, centrale e LFE.
|
|
</para>
|
|
|
|
<para>
|
|
Il numero di default dei canali di uscita è 2.
|
|
</para>
|
|
|
|
<para>
|
|
Per usare più di 2 canali, ti servirà OSS, e avere una scheda audio che
|
|
supporti l'appropriato numero di canali di uscita attraverso l'ioctl
|
|
SNDCTL_DSP_CHANNELS. Un esempio di un diver utilizzabile è emu10k1
|
|
(usato dalle schede Soundblaster Live!) dall'agosto 2001 o dopo (anche il CVS
|
|
ALSA si suppone funzioni).
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="hwac3">
|
|
<title>Decodifica hardware AC-3</title>
|
|
|
|
<para>
|
|
Ti serve una scheda audio capace di decodificare AC-3, con uscita digitale
|
|
(S/PDIF). Il driver della scheda deve supportare correttamente il formato
|
|
AFMT_AC3 (C-Media lo fa). Collega il tuo decodificatore AC-3 all'uscita S/PDIF,
|
|
e usa l'opzione <option>-ac hwac3</option>. E' sperimentale ma si sa che
|
|
funziona con schede C-Media e driver Soundblaster Live! + ALSA (ma non OSS) e
|
|
schede di decodifica MPEG DXR3/Hollywood+.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="libmad">
|
|
<title>Supporto per <systemitem class="library">libmad</systemitem></title>
|
|
|
|
<para>
|
|
<ulink url="http://www.underbit.com/products/mad/"><systemitem class="library">libmad</systemitem></ulink>
|
|
è una libreria multipiattaforma di decodifica audio, per MPEG solo interi
|
|
(internamente PCM a 24bit). Non gestisce bene file danneggiati, e delle volte
|
|
ha problemi con la ricerca, ma può lavorare meglio su piattaforme senza FPU
|
|
(come <link linkend="arm">ARM</link>) rispetto ad
|
|
<systemitem class="library">mp3lib</systemitem>.
|
|
</para>
|
|
|
|
<para>
|
|
Se hai una corretta installazione di
|
|
<systemitem class="library">libmad</systemitem>,
|
|
<filename>./configure</filename> se ne accorgerà e il supporto per audio MPEG
|
|
attraverso <systemitem class="library">libmad</systemitem> verrà
|
|
automaticamente compilato.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="hwmpa">
|
|
<title>Codec hardware audio MPEG</title>
|
|
|
|
<para>
|
|
This codec (selected by <option>-ac hwmpa</option>) passes through MPEG audio
|
|
packets to hardware decoders, such as the ones found in full-featured DVB cards
|
|
and DXR2 adapters.
|
|
Don't use it in combination with any other audio output device
|
|
(such as OSS and ALSA) that isn't able to decode it (you will hear
|
|
only white noise).
|
|
Questo codec (selezionato con <option>-ac hwmpa</option>) trasferisce
|
|
direttamente i pacchetti audio MPEG ai decodificatori audio, come quelli che si
|
|
trovano nelle schede DVB full-option e negli adattatori DXR2.
|
|
Non usarlo in combinazione con alcun altro dispositivo di uscita audio
|
|
(come OSS o ALSA) che non sia capace di decodificarlo (sentirai solo rumore
|
|
bianco).
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="aac">
|
|
<title>Codec AAC</title>
|
|
|
|
<para>
|
|
AAC (Advanced Audio Coding) è un codec audio che si trova delle volte nei file
|
|
MOV e MP4. E' disponibile da <ulink url="http://www.audiocoding.com"/> un
|
|
decodificatore open source chiamato FAAD.
|
|
<application>MPlayer</application> include uno snapshot CVS di libfaad 2.1 beta,
|
|
così non hai bisogno di recuperarlo separatamente.
|
|
</para>
|
|
|
|
<para>
|
|
Se usi gcc 3.2 che fallirà nel compilare la nostra FAAD interna oppure vuoi
|
|
usare la libreria esterna per qualche altra ragione, scarica la libreria della
|
|
<ulink url="http://www.audiocoding.com/modules/mydownloads/">pagina di download</ulink>
|
|
e passa <option>--enable-faad-external</option> a
|
|
<filename>./configure</filename>.
|
|
Non ti serve tutto di faad2 per decodificare i file AAC, è sufficiente libfaad.
|
|
Compilala così:
|
|
<screen>
|
|
cd faad2/
|
|
sh bootstrap
|
|
./configure
|
|
cd libfaad
|
|
make
|
|
make install
|
|
</screen>
|
|
I binari non sono disponibili da audiocoding.com, ma puoi apt-gettare i
|
|
pacchetti Debian dal
|
|
<ulink url="http://www.debian-multimedia.org/">sito di Christian Marillat</ulink>,
|
|
gli RPM per Mandrake/Mandriva da <ulink url="http://plf.zarb.org">P.L.F</ulink>
|
|
e gli RPM per Fedora RPMs da <ulink url="http://rpm.livna.org/">Livna</ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="amr">
|
|
<title>Codec AMR</title>
|
|
|
|
<para>
|
|
Il codec voce Adaptive Multi-Rate è usato nei telefoni cellulari di terza
|
|
generazione (3G).
|
|
La referenza per l'implementazione è disponibile da
|
|
<ulink url="http://www.3gpp.org">The 3rd Generation Partnership Project</ulink>
|
|
(gratuita per uso personale).
|
|
Per abilitarne il supporto, scarica e installa le librerie per
|
|
<ulink url="http://www.penguin.cz/~utx/amr">AMR-NB e AMR-WB</ulink>
|
|
seguendo le istruzioni da quella pagina.
|
|
Dopodiché ricompila <application>MPlayer</application>.
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="codec-importing">
|
|
<title>HOWTO sull'importazione dei codec Win32</title>
|
|
|
|
<!-- TODO: a short paragraph of text would be nice here... -->
|
|
|
|
<sect2 id="vfw-codecs">
|
|
<title>Codec VFW</title>
|
|
|
|
<para>
|
|
VFW (Video for Windows) sono le vecchie API Video per Windows. I loro codec
|
|
hanno un'estensione <filename>.DLL</filename> o (raramente)
|
|
<filename>.DRV</filename>. Se <application>MPlayer</application> non riesce a
|
|
riprodurre il tuo AVI emettendo un messaggio del tipo:
|
|
<screen>UNKNOWN video codec: HFYU (0x55594648)</screen>
|
|
significa che il tuo AVI è codificato con un codec che ha HFYU come fourcc
|
|
(HFYU = HuffYUV codec, DIV3 = DivX Low Motion, etc.). Ora che lo sai, devi
|
|
scoprire quale DLL di Windows viene caricata per riprodurre quel file. Nel
|
|
nostro caso il <filename>system.ini</filename> contiene questa informazione in
|
|
una riga siffatta:
|
|
<programlisting>VIDC.HFYU=huffyuv.dll</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Perciò ti serve il file <filename>huffyuv.dll</filename>. Nota che i codec
|
|
audio vengono specificati con il prefisso MSACM:
|
|
<programlisting>msacm.l3acm=L3codeca.acm</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Questo è il codec MP3. Ora che hai tutte le informazioni necessarie
|
|
(fourcc, file del codec, AVI di esempio), invia via mail la tua richiesta di
|
|
supporto per il codec, e carica questi file sul sito FTP:
|
|
<systemitem role="url">ftp://upload.mplayerhq.hu/MPlayer/incoming/<replaceable><nomecodec></replaceable>/</systemitem>
|
|
</para>
|
|
|
|
<note><para>
|
|
In Windows NT/2000/XP cerca queste informazioni nel registro,
|
|
per es. cerca "VIDC.HFYU". Per scoprire come farlo, guarda il vecchio metodo
|
|
per DirectShow più sotto.
|
|
</para></note>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="dshow-codecs">
|
|
<title>Codec DirectShow</title>
|
|
|
|
<para>
|
|
DirectShow sono le API Video più recenti, che sono ancora peggio delle
|
|
precedenti. Le cose sono più difficili con le DirectShow, dato che
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<filename>system.ini</filename> non contiene le informazioni che servono,
|
|
sono invece scritte nel registro e
|
|
</para></listitem>
|
|
<listitem><para>
|
|
bisogna sapere il GUID del codec.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<procedure>
|
|
<title>Nuovo Metodo:</title>
|
|
<para>
|
|
Usando <application>Microsoft GraphEdit</application> (veloce)
|
|
</para>
|
|
<step><para>
|
|
Ottieni <application>GraphEdit</application> o dall'SDK delle DirectX o da
|
|
<ulink url="http://doom9.net">doom9</ulink>.
|
|
</para></step>
|
|
<step><para>
|
|
Avvia <command>graphedit.exe</command>.
|
|
</para></step>
|
|
<step><para>
|
|
Dal menu scegli
|
|
<!-- TODO: mettere le vodi del menu dalla versione it di graphedit -->
|
|
<menuchoice><guimenu>Graph</guimenu>
|
|
<guisubmenu>Insert Filters</guisubmenu></menuchoice>.
|
|
</para></step>
|
|
<step><para>
|
|
Espandi <systemitem>DirectShow Filters</systemitem>.
|
|
</para></step>
|
|
<step><para>
|
|
Seleziona il nome giusto del codec e espandilo.
|
|
</para></step>
|
|
<step><para>
|
|
Nella voce <systemitem>DisplayName</systemitem> guarda il testo tra
|
|
parentesi graffe dopo il backslash e segnatelo (cinque blocchi separati da
|
|
trattini, il GUID).
|
|
</para></step>
|
|
<step><para>
|
|
Il codec binario è il file specificato nella voce
|
|
<systemitem>Filename</systemitem>.
|
|
</para></step>
|
|
</procedure>
|
|
|
|
<note><para>
|
|
Se non c'è alcun <systemitem>Filename</systemitem> e
|
|
<systemitem>DisplayName</systemitem> contiene qualcosa del tipo
|
|
<systemitem>device:dmo</systemitem>, allora è un codec DMO.
|
|
</para></note>
|
|
|
|
<procedure>
|
|
<title>Vecchio Method:</title>
|
|
<para>
|
|
Fai un grosso respiro e inizia a cercare nel registro...
|
|
</para>
|
|
<step><para>
|
|
Avvia <command>regedit</command>.
|
|
</para></step>
|
|
<step><para>
|
|
Premi <keycombo><keycap>Ctrl</keycap><keycap>T</keycap></keycombo>, disabilita
|
|
le prime due opzioni, e abilita la terza. Scrivi il fourcc del codec (per es.
|
|
<userinput>TM20</userinput>).
|
|
</para></step>
|
|
<step><para>
|
|
Dovresti trovare un campo che contiene il percorso e il nome del file
|
|
(per es. <filename>C:\WINDOWS\SYSTEM\TM20DEC.AX</filename>).
|
|
</para></step>
|
|
<step><para>
|
|
Ora che sai il file, ci serve il GUID. Prova a fare di nuovo la ricerca, ma
|
|
ora cerca il nome del codec, e non più il fourcc. Il suo nome si può
|
|
scoprire quando Media Player sta riproducendo il file, controllando
|
|
<menuchoice><guimenu>File</guimenu> <guisubmenu>Properties</guisubmenu>
|
|
<guimenuitem>Advanced</guimenuitem></menuchoice>.
|
|
Se non c'è, sei sfortunato. Prova ad indovinarlo (per es. cerca TrueMotion).
|
|
</para></step>
|
|
<step><para>
|
|
Se trovi il GUID, dovresti trovare un campo
|
|
"<guilabel>FriendlyName</guilabel>" e un "<guilabel>CLSID</guilabel>".
|
|
Segnati il CLSID di 16 caratteri, questo è il GUID che ci serve.
|
|
</para></step>
|
|
</procedure>
|
|
|
|
<note><para>
|
|
Se la ricerca fallisce, prova ad abilitare tutte le opzioni. Puoi avere dei
|
|
falsi positivi, ma potresti essere fortunato...
|
|
</para></note>
|
|
|
|
<para>
|
|
Ora che hai tutte le informazioni necessarie (fourcc, GUID, file del codec, AVI
|
|
di esempio), invia via mail la tua richiesta di supporto per il codec, e carica
|
|
questi file sul sito FTP:
|
|
<systemitem role="url">ftp://upload.mplayerhq.hu/MPlayer/incoming/<replaceable><nomecodec></replaceable>/</systemitem>
|
|
</para>
|
|
|
|
<para>
|
|
Se ti garba aggiungere un codec per conto tuo, leggi
|
|
<ulink url="http://www.mplayerhq.hu/MPlayer/DOCS/tech/codecs.conf.txt">DOCS/tech/codecs.conf.txt</ulink>.
|
|
</para>
|
|
|
|
</sect2>
|
|
</sect1>
|
|
|
|
</chapter>
|