CodecCodec video
La tabella di stato dei codec è
un elenco completo di tutti i codec supportati, aggiornata giornalmente.
Nella sezione download
del nostro sito sono disponibili alcuni codec binari da usare con MPlayer.
I più importanti su tutti:
video
MPEG-1 (VCD) e
MPEG-2 (DVD)
decodificatori nativi per tutte le tipologie di DivX,
3ivX, Microsoft MPEG-4 v1, v2 e altre varianti di MPEG-4.
decodificatore nativi per Windows Media Video 7/8
(WMV1/WMV2), e decodificatori su DLL Win32
per Windows Media Video 9
(WMV3),
entrambi usati in file .wmv.
decodificatore nativo Sorenson 1 (SVQ1)
decodificatore nativo Sorenson 3 (SVQ3)
decodificatore 3ivx v1, v2
codec Cinepak e Intel Indeo (3.1,3.2,4.1,5.0)
formati hardware MJPEG, AVID, VCR2, ASV2 e
altri
varianti VIVO 1.0, 2.0, I263 e altre H.263(+)
FLI/FLC
RealVideo 1.0 & 2.0 atraverso
libavcodec, e
codec RealVideo 3.0 & 4.0 usando le
librerie di RealPlayer
decodificatore nativo per HuffYUV
vari vecchi formati semplici tipo RLE
Se hai un codec Win32 non elencato qui che non è ancora supportato, leggi per
favore l'HOWTO sull'importazione codec
e aiutaci ad aggiungerne il decodificatore relativo.
FFmpeg/libavcodecFFmpeg contiene
libavcodec, 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 MPlayer.
Anche la codifica è possibile per alcuni formati, ed è permessa da
MEncoder.
Per una lista completa dei codec
video e
audio
supportati per favore visita la homepage di FFmpeg.
MPlayer contiene
libavcodec.
Esegui semplicemente ./configure e compila.
XvidXvid è 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.
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.
Nota che Xvid non è necessario per decodificare video codificato in Xvid.
Viene usata di default libavcodec
visto che ha maggior velocità.
Installare Xvid
Come molti software open source, è disponibili in due modi:
rilasci ufficiali
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
Xvid funzioni con
MEncoder (ti servono almeno
autoconf 2.50,
automake, e libtool):
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid logincvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcorecd xvidcore/build/generic./bootstrap.sh./configure
Puoi dover aggiungere alcune opzioni (controlla quello che emette
./configure --help).
make && make install
Se hai specificato ,
copia ../../src/divx4.h in
/usr/local/include/.
Ricompila MPlayer con
.
x264Cos'è x264?x264
è 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 x264.
Caratteristiche del codificatoreCAVLC/CABACMulti-referenza
Intra: tutti i tipi di macroblocco (16x16, 8x8, e 4x4 con tutte le predizioni)
Inter P: tutti i partizionamenti (da 16x16 fino a 4x4)
Inter B: partizionamenti da 16x16 fino a 8x8 (includendo SKIP/DIRECT)
Controllo frequenza: quantizzatore costante, frequenza bit costante, ABR a
passaggio singolo o multiplo, VBV facoltativo
Rilevazione cambi scenaPosizionamento fotogrammi B adattivo
Fotogrammi B come referenza / ordine arbitrario dei fotogrammi
Trasformazione spaziale adattivo 8x8 e 4x4Modalità senza perdita (lossless)Matrici di quantizzazione personalizzateCodifica parallela di sezioni multipleInterlacciamentoCos'è H.264?
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".
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ì.
Almeno con x264,
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.
Questa documentazione non vuole spiegare i dettagli di H.264, ma se sei
interessato in un breve resoconto, potresti voler leggere
The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions.
Come posso riprodurre video H.264 con
MPlayer?MPlayer usa il decodificatore H.264 di
libavcodec.
libavcodec 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
libavcodec da SubVersion.
If you want a quick and easy way to know whether there have been
recent changes to libavcodec's
H.264 decoding, you might keep an eye on
FFmpeg Subversion repository's web interface.
Se vuoi un modo rapido ed indolore di sapere se ci sono state modifiche recenti
alla decodifica H.264 di libavcodec,
puoi poter dare un'occhiata all'interfaccia web del repository SubVersion di FFmpeg.
Come posso codificare video usando MEncoder
e x264?
Se hai il client di subversion installato, i sorgenti più recenti di x264
possono esser ottenuti con questo comando:
svn co svn://svn.videolan.org/x264/trunk x264
I sorgenti di MPlayer vengono aggiornati
ogniqualvolta c'è una modifica nelle API di
x264, 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
x264.
Nel frattempo, x264 dovrebbe esser
considerato molto instabile, nel senso che la sua interfaccia di programmazione
è soggetta a cambiamenti.
x264 so compila e installa nel solito
modo:
./configure && make && sudo make install
Questo installa libx264 in /usr/local/lib e x264.h viene posto in
/usr/local/include.
Con la libreria x264 e gli header nei
percorsi standard, compilare il supporto per
x264 in
MPlayer è facile.
Lancia semplicemente il comando:
./configure && make && sudo make install
Lo script ./configure controllerà automaticamente che tu
abbia i requisiti richiesti per x264.
Codec audioI codec più importanti su tutti:
audio MPEG layer 1/2/3 (MP1/2/3) (codice
nativo, con ottimizzazione MMX/SSE/3DNow!)
Windows Media Audio 7 e 8 (AKA WMAv1 and WMAv2)
(codice nativo, con
libavcodec)
Windows Media Audio 9 (WMAv3) (usando le DLL DMO)
audio AC-3 Dolby (codice nativo, con
ottimizzazione MMX/SSE/3DNow!)
AC-3 passando attraverso l'hardware della scheda audio
AAC
codec audio Ogg Vorbis (libreria nativa)
RealAudio: DNET (AC-3 a bassa frequenza), Cook, Sipro and ATRAC3
QuickTime: codec audio Qualcomm e QDesign
audio VIVO (g723, Vivo Siren)
audio Voxware (usando le DLL DirectShow)
alaw e ulaw, svariati formati gsm, adpcm e pcm e altri vecchi codec audio
semplici
codec voce Adaptive Multi-Rate (AMR)
Decodifica software AC-3
Questo è il decodificatore di default usato per file con audio AC-3.
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.
Usa l'opzione per impostare il numero dei canali di
uscita. Usa per un sottomissaggio stereo. Per un
sottomissaggio a 4 canali (uscite Frontale sinistro, Frontale destro, Surround
sinistro, Surround destro), usa . In questo caso,
un qualsiasi canale centrale verrà miscelato in parti uguali nei canali
frontali.
farà uscire tutti i canali AC-3 così come sono
stati codificati - nell'ordine, sinistro, destro, Surround sinistro, Surround
destro, centrale e LFE.
Il numero di default dei canali di uscita è 2.
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).
Decodifica hardware AC-3
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 . 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+.
Supporto per libmadlibmad
è 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 ARM) rispetto ad
mp3lib.
Se hai una corretta installazione di
libmad,
./configure se ne accorgerà e il supporto per audio MPEG
attraverso libmad verrà
automaticamente compilato.
Codec hardware audio MPEG
This codec (selected by ) 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 ) 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).
Codec AAC
AAC (Advanced Audio Coding) è un codec audio che si trova delle volte nei file
MOV e MP4. E' disponibile da un
decodificatore open source chiamato FAAD.
MPlayer include uno snapshot CVS di libfaad 2.1 beta,
così non hai bisogno di recuperarlo separatamente.
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
pagina di download
e passa a
./configure.
Non ti serve tutto di faad2 per decodificare i file AAC, è sufficiente libfaad.
Compilala così:
cd faad2/
sh bootstrap
./configure
cd libfaad
make
make install
I binari non sono disponibili da audiocoding.com, ma puoi apt-gettare i
pacchetti Debian dal
sito di Christian Marillat,
gli RPM per Mandrake/Mandriva da P.L.F
e gli RPM per Fedora RPMs da Livna.
Codec AMR
Il codec voce Adaptive Multi-Rate è usato nei telefoni cellulari di terza
generazione (3G).
La referenza per l'implementazione è disponibile da
The 3rd Generation Partnership Project
(gratuita per uso personale).
Per abilitarne il supporto, scarica e installa le librerie per
AMR-NB e AMR-WB
seguendo le istruzioni da quella pagina.
Dopodiché ricompila MPlayer.
HOWTO sull'importazione dei codec Win32Codec VFW
VFW (Video for Windows) sono le vecchie API Video per Windows. I loro codec
hanno un'estensione .DLL o (raramente)
.DRV. Se MPlayer non riesce a
riprodurre il tuo AVI emettendo un messaggio del tipo:
UNKNOWN video codec: HFYU (0x55594648)
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 system.ini contiene questa informazione in
una riga siffatta:
VIDC.HFYU=huffyuv.dll
Perciò ti serve il file huffyuv.dll. Nota che i codec
audio vengono specificati con il prefisso MSACM:
msacm.l3acm=L3codeca.acm
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:
ftp://upload.mplayerhq.hu/MPlayer/incoming/<nomecodec>/
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.
Codec DirectShow
DirectShow sono le API Video più recenti, che sono ancora peggio delle
precedenti. Le cose sono più difficili con le DirectShow, dato che
system.ini non contiene le informazioni che servono,
sono invece scritte nel registro e
bisogna sapere il GUID del codec.
Nuovo Metodo:
Usando Microsoft GraphEdit (veloce)
Ottieni GraphEdit o dall'SDK delle DirectX o da
doom9.
Avvia graphedit.exe.
Dal menu scegli
GraphInsert Filters.
Espandi DirectShow Filters.
Seleziona il nome giusto del codec e espandilo.
Nella voce DisplayName guarda il testo tra
parentesi graffe dopo il backslash e segnatelo (cinque blocchi separati da
trattini, il GUID).
Il codec binario è il file specificato nella voce
Filename.
Se non c'è alcun Filename e
DisplayName contiene qualcosa del tipo
device:dmo, allora è un codec DMO.
Vecchio Method:
Fai un grosso respiro e inizia a cercare nel registro...
Avvia regedit.
Premi CtrlT, disabilita
le prime due opzioni, e abilita la terza. Scrivi il fourcc del codec (per es.
TM20).
Dovresti trovare un campo che contiene il percorso e il nome del file
(per es. C:\WINDOWS\SYSTEM\TM20DEC.AX).
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
FilePropertiesAdvanced.
Se non c'è, sei sfortunato. Prova ad indovinarlo (per es. cerca TrueMotion).
Se trovi il GUID, dovresti trovare un campo
"FriendlyName" e un "CLSID".
Segnati il CLSID di 16 caratteri, questo è il GUID che ci serve.
Se la ricerca fallisce, prova ad abilitare tutte le opzioni. Puoi avere dei
falsi positivi, ma potresti essere fortunato...
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:
ftp://upload.mplayerhq.hu/MPlayer/incoming/<nomecodec>/
Se ti garba aggiungere un codec per conto tuo, leggi
DOCS/tech/codecs.conf.txt.