MPlayer - Movie Player for LINUX (C) 2000-2002 Arpad Gereoffy (A'rpi/ESP-team)
http://www.mplayerhq.hu
[ English ]
[ Hungarian ]
[ German ]
[ French ]
[ Polish ]
[ Italian ]
Tabella dei contenuti
Lamentele degli sviluppatori
0. Come leggere questa documentazione
Se installi per la prima volta: assicurati di leggere tutto da qui alla
fine della sezione sull'installazione, e segui i link che troverai. se
hai altre domande, Ritorna alla Tabella dei contenuti e
cerca l'argomento, leggi le FAQ, o prova ad usare "grep" sui file.
La regola principale di questa documentazione: se non è documentato,
non esiste. Se non dico che puoi codificare l'audio dal sintonizzatore TV,
non puoi. Però una certa abilità nel combinare questo con altri software è la benvenuta.
Buona fortuna. Ne avrai bisogno :)
1. Introduzione
1.1. Generale
MPlayer è un lettore di filmati per LINUX (funziona su molti altri Unix, e CPU
non-x86, vedi la sezione 6). Legge la maggior parte dei file MPEG, VOB,
AVI, VIVO, ASF/WMV, QT/MOV, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ,
con l'aiuto di molti codec nativi, di XAnim e
di Win32. Si possono guardare VideoCD, SVCD, DVD,
3ivx, e perfino film in DivX (e non necessita assolutamente la libreria di avifile
!). L'altra importante caratteristica di mplayer è l'ampia scelta di driver supportati per l'output.
Funziona con X11, Xv, DGA, OpenGL, SVGAlib, fbdev,
AAlib, DirectFB, ma puoi usare GGI e SDL (e così tutti i loro driver)
e anche alcuni driver di basso livello specifici di alcune schede (Matrox, 3Dfx e Radeon)!
La maggior parte di queste supporta il ridimensionamento software o hardware, così puoi goderti i film
a pieno schermo. MPlayer supporta la visualizzazione con alcune schede di decodifica MPEG
, come la DVB e la DXR3/Hollywood+ ! E che dire dei magnifici sottotitoli ombreggiati dotati di antialiasing
(10 tipi supportati!!!) con i caratteri europeo/ISO 8859-1,2
(ungherese, inglese, ceco, ecc), cirillico, coreano, e OSD?
MPlayer è principalmente GPL, ma contiene anche del codice non-GPL che non può
essere distribuito in formato binario, e contiene anche la libreria OpenDivX
che ha una licenza specifica. Stiamo ancora sviluppando verso la GPL.
Distribuire MPlayer in formato binario e/o pacchetti binari
è attualmente impossibile, sia per questioni tecniche che legali
. Informazioni dettagliate possono essere trovate nella seconda parte di questo file,
e suggeriamo di leggerlo.
Il mio lettore è stabile con file MPEG danneggiati (utile per alcuni VCD),
e legge file AVI corrotti che sono illeggibili col famoso
windows media player. Perfino file AVI senza la sezione dell'indice sono leggibili, e
e si può ricostruire il loro indice con l'opzione -idx o permanentemente con MEncoder, abilitando così la ricerca!
Come potete vedere, la stabilità e la qualità sono le cose più importanti,
ma anche la velocità è impressionante.
1.2. Storia
E' cominciato tutto un anno fa...
Io (A'rpi) avevo provato molti lettori per linux (mtv,xmps,dvdview,livid/oms,videolan,
xine,xanim,avifile,xmmp) ma tutti avevano dei problemi. Soprattutto con file speciali
o con la sincronizzazione audio/video. La maggior parte non era in grado di leggere sia file MPEG1,
MPEG2 e AVI (DivX). Molti lettori hanno anche problemi di qualità dell'immagine e di velocità.
Così decisi di scriverne/modificarne uno...
- mpg12play v0.1-v0.3: Set 22-25, 2000
La prima prova, messo insieme in mezz'ora!
Avevo usato la libmpeg3 da www.heroinewarrior.com fino alla versione 0.3,
ma c'erano problemi di qualità d'immagine e di velocità.
- mpg12play v0.5-v0.87: Set 28-Ott 20, 2000
Codec Mpeg sostituito con DVDview di Dirk Farin, era roba buona,
ma era lento e scritto in C++ (odio il C++!!!)
- mpg12play v0.9-v0.95pre5: Ott 21-Nov 2, 2000
Il codec Mpeg era libmpeg2 (mpeg2dec) di Aaron Holtzman & Michel Lespinasse.
E' grandioso, codice C ottimizzato e molto veloce con qualità dell'immagine perfetta e
100% aderente allo standard MPEG.
- MPlayer v0.3-v0.9: Nov 18-Dic 4, 2000
Era l'insieme di due programmi: mpg12play0.95pre6 e il mio nuovo semplice lettore AVI
'avip' basato sul caricatore delle DLL Win32 di avifile.
- MPlayer v0.10: Gen 1, 2001
Il lettore MPEG e AVI in un singolo binario!
- MPlayer serie v0.11pre:
Nuovi sviluppatori si sono uniti e dalla 0.11 il progetto mplayer è un lavoro di squadra!
Aggiunto il supporta ai file .ASF, e codifica/decodifica OpenDivX (vedi www.projectmayo.com).
- MPlayer v0.17a "The IdegCounter" Apr 27, 2001
La versione per la pubblicazione della 0.11pre dopo 4 mesi di pesante sviluppo!
Provala, e stupisci! Centinaia di nuove caratteristiche aggiunte... e naturalmente
era stato anche migliorato il vecchio codice, rimossi i bug ecc.
- MPlayer 0.18 "The BugCounter" Lug 9, 2001
2 mesi dopo 0.17 ed ecco un'alta pubblicazione.. Completato il supporto ASF,
più formati di sottotitoli, introdotta la libao (simile alla libvo ma per l'audio),
perfino più stabile di prima, e così via. E' un MUST !
- MPlayer 0.50 "The Faszom(C)ounter" Ott 8, 2001
Hmm. Nuovo rilascio. Tonnellate di nuove caratteristiche, versione beta della GUI, bug corretti,
nuovi driver vo e ao, portato su molti sistemi, include i codec DivX opensource
e molto altro. Provatela!
- MPlayer 0.60 "The RTFMCounter" Gen 3, 2002
Supporto per i file MOV/VIVO/RM/FLI/NUV, codec CRAM, Cinepak, ADPCM nativi,
e supporto per i codec binari di XAnim; supporto ai sottotitoli dei DVD, primo
rilascio di MEncoder, cattura da TV, cache, liba52, innumerevoli correzioni.
1.3. Installazione
In questo capitolo proverò a guidarvi nel processo di compilazione e di
configurazione di MPlayer. Non è facile, ma non sarà necessariamente
difficile. Se riscontrate un comportamento diverso da quello qui descritto, per favore
cercate in questa documentazione e troverete le risposte. Se vedete dei
link, seguiteli e leggete attentamente cosa contengono. Vi costerà
del tempo, ma ne vale sicuramente la pena.
Dovete avere un sistema abbastanza recente. Con Linux, sono raccomandati i kernel 2.4.x.
REQUISITI SOFTWARE
- binutils - la versione suggerita è la 2.11.x . Questo programma
si occupa di generare le istruzioni MMX/3DNow!/ecc, quindi è molto importante.
- gcc - le versioni suggerite sono quelle dalla 2.95.3 alla 2.95.4.
Non usate MAI la 2.96 o la 3.x.x !!! Generano del codice errato. Se decidete
di cambiare il vostro gcc 2.96, allora non decidete in favore del 3.0 solo perchè
è più recente! Per certi versi è perfino peggiore del 2.96. Quindi tornate al
2.95.x (cambiate anche libstdc++!) o non aggiornate per niente (ma in
questo caso, preparatevi a problemi di runtime).
Se voti per il 3.x, prova ad usare l'ultima versione, le prime versioni avevano
vari bug, quindi assicurati di usare almeno la 3.0.3 o la 3.1.
Informazioni dettagliate sui bug del gcc 2.96 (che NON sono stati ancora corretti, sono
stati AGGIRATI in MPlayer!) si possono trovare
qui e nelle
FAQ !
- XFree86 - la versione suggerita è sempre la più nuova (4.2.0).
Normalmente tutti dovrebbero preferire questa, perchè a partire da XFree86 4.0.2, contiene
l'estensione XVideo (chiamata a volte
Xv) che è necessaria per abilitare l'accelerazione hardware YUV (visualizzazione
rapida delle immagini) sulle schede che la supportano. Altre
informazioni disponibili.
Assicuratevi che siano installati anche i suoi pacchetti di sviluppo altrimenti
non funzionerà.
Per alcune schede video non è necessario XFree86. Controllate la lista sotto.
- make - la versione suggerita è sempre la più nuova (almeno la 3.79.x). Solitamente
non è importante.
- SDL - non è obbligatorio, ma può aiutare in alcuni casi (audio difettoso,
schede video stranamente lente col driver xv). Usate sempre la versione più recente
(a partire dalla 1.2.x). Può anche visualizzare i sottotitoli sotto al filmato, sulla
barra nera.
- libjpeg - decodificatore JPEG opzionale, usato da -mf e alcuni file qt mov.
Utile sia per MPlayer che per MEncoder se hai intenzione di lavorare con file jpeg.
- libpng - decodificatore (M)PNG raccomandato e usato di default. Necessario per la GUI.
Utile sia per MPlayer che per MEncoder.
CODEC
- libavcodec : se volete usare questo codec DivX3/DivX4/DivX5 ecc, controllate la sezione
2.2.1.2 prima di compilare. Caratteristiche :
- si possono vedere DivX/DivX4/DivX5 su piattaforme non-x86
- legge e codifica RealVideo 1.0/VIVO/MJPEG/h263/altri
- questo codec ha la più alta velocità di decodifica per filmati DivX e DivX4/DivX5
(più veloce anche della stessa libreria DivX4 originale) ! Raccomandato!
- Codec Win32 : Se intendete usare MPlayer su architetture x86
, probabilmente ne avete bisogno. Scaricate e scompattate w32codecs.zip in
/usr/lib/win32 . Nota: il progetto avifile ha un simile pacchetto di codec, ma è
diverso dal nostro, quindi se volete usare tutti i codec supportati, usate il nostro
pacchetto! Comunque, potete usare i nostri codec con avifile. Caratteristiche:
- ne avete bisogno se volete vedere o codificare ad esempio filmati registrati
con vari compressori hardware, come schede tv, macchine fotografiche digitali (esempio: DV, ATI VCR, MJPEG)
- ne avete bisogno se volete vedere filmati WMV o i più vecchi (MP42) ASF
- DivX4/DivX5 : informazioni su questo codec sono disponibili nella sezione
2.2.1.1. Se non volete codificare filmati
, probabilmente non vi serve questo codec in quanto libavcodec (vedi sopra) è
molto più veloce.
Caratteristiche :
- Codifica in 1 o 2 passaggi con MEncoder
- Legge vecchi filmati DivX3 molto più velocemente della DLL Win32 ma
più lentamente di libavcodec !
- E' closed-source, ed è disponibile solo la versione per x86.
- XviD : Alternativa di codifica opensource a Divx4Linux
Caratteristiche :
- codifica a 1 o 2 passaggi con MEncoder
- è open-source, quindi non è disponibile solo la versione x86.
- è circa 2 volte più veloce di divx4 nella codifica - circa la stessa qualità
- I codec XAnim sono i migliori (schermo pieno,
zoom YUV hardware) per decodificare filmati 3ivx e Indeo 3/4/5, e alcuni
vecchi formati. E sono multipiattaforma, quindi è l'unico modo per vedere gli Indeo su
piattaforme non-x86 (bhe, eccetto usare XAnim:). Ma per esempio i filmati Cinepak
vengono letti meglio dal codec Cinepak proprio di MPlayer !
- Per la decodifica dell' audio Ogg Vorbis devi installare correttamente
libvorbis
. Usa pacchetti deb/rpm se disponibili, o
compila dai
sorgenti
(questa è una tarball del CVS di vorbis aggiornata ogni notte).
SCHEDE VIDEO
Ci sono generalmente due tipi di schede video. Un tipo (la schede più nuove) supporta il
ridimensionamento hardware e l'accelerazione YUV, l'altro tipo no.
Schede YUV
Possono visualizzare e riscalare (zoom) l'immagine a qualunque dimensione che rientri nella
loro memoria, con scarso utilizzo della CPU (zoommare non lo aumenta!), così
si ottiene un filmato a pieno schermo di buona qualità e molto veloce.
- Schede Matrox G200/G400/G450/G550 : per favore leggete la sezione mga_vid
per ottenere un grande miglioramento delle prestazioni. E' importante eseguire questi passi
prima di compilare MPlayer, altrimenti non ci sarà nessun supporto specifico Matrox.
Controllate anche la sezione TV-out Matrox.
Se sei un utente non-Linux, leggi la documentazione
di Vidix
- Schede 3Dfx Voodoo3/Banshee : per favore leggete la sezione 2.3.1.9 per ottenere un grande miglioramento delle prestazioni.
E' importante eseguire questi passi prima di compilare MPlayer,
altrimenti non ci sarà alcun supporto. Leggete anche la sezione TV-out 3dfx
.Se usi X, usa almeno la versione 4.2.0, in quanto il driver Xv 3dfx era
difettoso nella 4.1.0, e precedenti!
- Schede ATI : leggi la sezione schede ATI
della documentazione sul TV-out, per sapere quali caratteristiche della tua scheda sono
supportate da Linux/MPlayer. Se hai una scheda Radeon, Rage128
o Mach64 (Rage XL/Mobility, Xpert98), abbiamo un driver
XXX_vid per te, con TV out ! Controlla questa sezione !Se sei un utente non-Linux, leggi la documentazione
di Vidix
- Schede S3 : i chip Savage e Virge/DX hanno l'accelerazione hardware. Usate
la versione il più possibile recente di XFree86, i vecchi driver sono pieni di errori. I chip Savage
hanno problemi col YV12, leggete la sezione Xv S3
per dettagli. Le più vecchie schede Trio non possiedono, o è lento, supporto hardware.
- Schede Nvidia : scelta pessima per la visione di filmati (NVidia ha
un'opinione differente!).
Le schede Nvidia hanno dei chip molto economici e di cattiva qualità.
Oltretutto, il driver Nvidia di XFree86 non ha
il supporto per l'accelerazione YUV hardware per tutte le schede NVidia ! Dovete scaricare
i driver closed-source di Nvidia da nvidia.com . Leggete i dettagli nella sezione driver Xv Nvidia.
- altre schede : nessuna di quelle sopra?
- Controllate se il driver XFree86 (e la vostra scheda) supporta l'accelerazione hardware.
Leggete la Sezione Xv per
dettagli.
- Se non la supporta, allora le caratteristiche della tua scheda non sono supportate dal tuo OS :(
Se la scheda riesce a fare il ridimensionamento hardware sutto Windows, non significa che farà lo stesso
sotto Linux o altri OS, dipende dai driver! La maggior parte dei produttori non
fanno driver per Linux ne rilasciano le specifiche dei chip - quindi sei sfortunato se usi una delle loro schede.
Vedi la prossima sezione:
Schede Non-YUV
La visualizzazione a pieno schermo può essere ottenuta sia zoomando
tramite software(usa l'opzione -zoom, ma sei avvisato: è leeento), o usando una modalità video più piccola, per
esempio 352x288. Se non avete l'accelerazione YUV, quest'ultimo metodo è
quello consigliato. Con MPlayer, questo può essere
ottenuto usando l'opzione -vm
e con i seguenti
driver :
- usando XFree86 : leggete i dettagli nelle sezioni
driver DGA e
driver X11. DGA è
raccomandato! Prova anche il DGA tramite SDL, a volte è migliore.
- non usando XFree86 : provate i driver nel seguente ordine :
vesa,
fbdev,
svgalib,
aalib.
SCHEDE SONORE
- Soundblaster Live! : con questa scheda si può usare la decodifica AC3 a 4 o 6 (5.1)
canali AC3 invece di 2. Leggete la sezione
Decodifica software AC3.
Per il passaggio AC3 hardware DOVETE usare l'emulazione oss di ALSA 0.9!
- C-Media con uscita SP/DIF : con queste schede è possibile la
decodifica AC3 hardware, leggete la sezione
Decodifica AC3 hardware.
- Caratteristiche di altre schede non sono supportate da MPlayer.
Si consiglia di leggere la sezione schede sonore
!
CARATTERISTICHE
- Per il supporto DVD, dovrai compilare libdvdcss e libdvdread, e
in questo ordine!
Vedi la sezione 4.2 per altre informazioni.
- Decidi se vuoi la GUI. Se si, leggi la sezione 1.4
prima di compilare.
- Se vuoi installare MEncoder (il nostro grande encoder),
vedi la sezione MEncoder .
- Se hai un sintonizzatore TV compatibile V4L, e vorresti guardare/catturare e
codificare filmati con MPlayer, leggi la sezione input TV.
- Ci sono tre metodi di temporizzazione in MPlayer. Per usare il vecchio
metodo, non devi fare nulla. Usa
usleep()
per regolare
la sincronia A/V, con +/- 10ms di precisione. Comunque a volte la sincronia deve essere regolata
anche meglio. Il nuovo codice per il timer usa l'RTC (Real Time Clock, orologio a tempo reale, ndt) del PC per questo compito,
perchè è preciso fino a 1ms. Questo necessita dei privilegi di root, o un binario MPlayer setuid root
(o un po' di kernel hacking, ma non è raccomandato). Si può
vedere la nuova efficenza del timer nella riga di stato. Il terzo codice per il timer
si attiva con l'opzione -softsleep
. Ha l'efficienza
dell'RTC, ma non usa l'RTC. D'altro canto,
richiede più CPU. Nota: MAI installare un binario MPlayer setuid su un
sistema multiutente! E' un modo semplice per far ottenere a chiunque i privilegi di root.
Quindi compila MPlayer:
./configure
make
make install
A questo punto, MPlayer è pronto ad essere usato. La directory
/usr/local/share/mplayer
contiene il file codecs.conf
,
che serve per dire al programma di quali codec dispone e le loro caratteristiche.
Questo file dovrebbe essere sempre tenuto aggiornato di pari passo col binario principale !
Controlla se hai codecs.conf nella tua directory home (~/.mplayer/codecs.conf)
lasciato da vecchie versioni di MPlayer, e rimuovilo!
Gli utenti Debian possono costruirsi un pacchetto .deb, è molto
semplice. Basta eseguire fakeroot debian/rules binary
nella directory principale di MPlayer.
Istruzioni dettagliate possono essere trovate qui.
Controllare SEMPRE l'output di ./configure e il file
configure.log
, contengono informazioni su quello che sarà compilato,
e quello che non lo sarà. Potresti anche guardare i file config.h e config.mak.
Se hai delle librerie installate, ma non trovate da ./configure, allora controlla
se hai anche i rispettivi file header (di solito i pacchetti -dev) e
che le versioni coincidano. Il configure.log solitamente ti dice cosa manca.
Sebbene non obbligatorio, i font dovrebbero essere installati per ottenere le
funzionalità di OSD, e sottotitoli. Scarica mp-arial-iso-8859-*.zip e/o aggiornamenti opzionali
per la tua lingua (se esistono). E' CALDAMENTE CONSIGLIATO leggere la
sezione 1.5 per dettagli.
mkdir ~/.mplayer/font
cd ~/.mplayer/font
unzip mp-arial-iso-8859-1.zip
1.4. E la GUI?
La GUI necessita GTK (non è GTK, ma lo sono i pannelli). Le skin sono
in formato PNG, quindi devono essere installati gtk, libpng (e i rispettivi pacchetti di sviluppo).
Puoi compilarla specificando --enable-gui
al momento del ./configure .
Quindi, per usare la modalità GUI, si può sia
- usare l'opzione
-gui
- specificare
gui=yes
nel tuo file di configurazione
ln -s /usr/local/bin/mplayer /usr/local/bin/gmplayer
,
e chiamare gmplayer
.
SUGGERIMENTO: usa il bottone centrale (con mouse a 2 tasti premi sinistro e destro
contemporaneamente) per visualizzare un menu GTK, con opzioni per la lettura di DVD!
Dato che MPlayer non ha una skin inclusa, devi scaricarle
se vuoi usare la GUI. Vedi la pagina dei download.
Dovranno essere estratti nella solita directory valida per tutto il sistema (/usr/local/share/mplayer/Skin
),
o in $HOME/.mplayer/Skin
. MPlayer cerca in
queste una directory di nome default, ma puoi usare l'opzione
-skin nuovaskin, o la direttiva skin=nuovaskin del file di configurazione
per usare la skin nella directory */Skin/nuovaskin
.
1.5. Sottotitoli e OSD
Si, MPlayer supporta anche molti tipi di sottotitoli. Attualmente
possono essere usati 10 tipi di sottotitoli. Per vedere quali sono
questi formati, leggi il file subreader.c, linea ~30.
MPlayer supporta i sottotitoli VobSub. Consistono in
un grande (alcuni megabyte) file .SUB, un file .IDX opzionale, e/o un file .IFO.
Utilizzo : se hai file come sample.sub
, sample.ifo
,
sample.idx
- devi passare l'opzione -vobsub sample -vobsubid
0
(volendo anche con l'intero path, naturalmente). L'opzione
-vobsubid
è come l'opzione -sid
per i DVD, puoi scegliere
la traccia del sottotitolo (le lingue) in questo modo.
Sui sottotitoli dei DVD, leggi la sezione DVD.
MPlayer introduce un nuovo formato di sottotitoli chiamato MPsub.
E' stato ideato da me (Gabucino). La sua caratteristica principale è quella di essere
dinamicamente basato sul tempo (ma ha anche una modalità basata sui frame). Esempio (da
DOCS/tech/mpsub.sub) :
# primo numero : aspetta sempre questo tempo prima che scompaia il sottotitolo precedente
# secondo numero : mostra il sottotitolo attuale per questo numero di secondi
15 3
Tanto, tanto tempo fa...
0 3
in una galassia lontana...
0 3
Naboo era sotto attacco.
Come si può vedere, l'obbiettivo principale era semplificare la modifica/temporizzazione/unione/taglio dei sottotitoli. E,
se - diciamo - hai un sottotitolo SSA ma è temporizzato/ritardato male per la tua
versione del filmato, fai semplicemente un mplayer dummy.avi -sub source.ssa
-dumpmpsub . Un file dump.mpsub
sarà creato nella
directory corrente, che conterrà il testo sorgente del sottotitolo, ma nel formato
MPsub. Quindi puoi liberamente aggiungere/levare secondi al/dal
sottotitolo.
I sottotitoli sono visualizzati con una tecnica chiamata 'OSD', On Screen Display.
OSD si usa per visualizzare il tempo attuale, la barra del volume, la barra della ricerca ecc.
INSTALLARE OSD e SUB
Devi avere un pacchetto di font per MPlayer per essere in grado di usare la funzione di OSD/SUB.
Ci sono molti modi per ottenerlo:
- scarica pacchetti di font pronti all'uso dal sito di MPlayer.
Nota: i font attualmente disponibili sono limitati al supporto iso 8859-1/2,
ma ci sono altri font (coreano, russo, 8859-8 ecc) nella
sezione contrib/font dell' FTP, fatti dagli utenti.
Il font dovrebbe avere un appropriato file font.desc che mappa le posizioni del font unicode
alle vere code page del testo dei sottotitoli. Un'altra soluzione
è quella di codificare i sottotitoli in utf8 e usare l'opzione -utf8
o solo rinominare il file del sottotitolo .utf e posizionarlo nella stessa
directory del file video. Registrare da diversi codepage a utf8 può essere fatto
usando i programmi konwert (debian) o iconv (RedHat).
Alcune URL:
- usare il generatore di font in TOOLS/subfont-c
Si tratta di un'utility completa per convertire da font TTF/Type1/ecc al pacchetto di font di mplayer.
(leggi TOOLS/subfont-c/README per dettagli)
- usare il plugin per GIMP per generare i font in TOOLS/subfont-GIMP
(nota: devi avere anche il plugin HSI RAW, vedi l'URL sotto)
Dopo questo, decomprimi il file che hai scaricato in ~/.mplayer
o
$PREFIX/share/mplayer
. Quindi rinomina o crea un symlink tra uno di questi e
font
(come : ln -s ~/.mplayer/arial-24
~/.mplayer/font
). Ora potrai vedere un timer nell'angolo in alto a sinistra
del filmato (disattivabile con 'o').
OSD ha 3 stati: (selezionabili con 'o')
- timer + barra volume + barra ricerca + sottotitoli (default)
- barra volume + barra ricerca + sottotitoli
- solo sottotitoli
Puoi cambiare il comportamento di default settando la variabile osdlevel=
nel file di configurazione.
2. Caratteristiche
2.1. Formati supportati
2.2. Codec supportati
2.3. Dispositivi di output Video e Audio
2.4. MEncoder
2.5. Input TV
2.5.1. Generale
Questa sezione spiega come abilitare la visualizzazione/cattura da un sintonizzatore TV
compatibile con V4L.
2.5.2. Compilazione
- prima di tutto, devi ricompilare.
./configure
troverà automaticamente gli header del kernel
dei dispositivi v4l, e controllerà l'esistenza dei /dev/video*. Se questi esistono,
verrà compilato il supporto TV (controlla l'output di configure!).
- Assicurati che il tuo sintonizzatore funzioni con altri software in Linux, per esempio
xawtv.
Suggerimento : i colori sono scombinati? Allora il tuo sintonizzatore non può
usare lo spazio dei colori YV12. Prova I420 (devi usare anche l'opzione -vc rawi420
!), o YUY2, UYVY, RGB32 (quest'ultimo
con -vo sdl
).
Si possono specificare questi con l'opzione outfmt=YV12
vedi sotto.
2.5.3. Opzioni disponibili
|
on |
|
usa l'input TV
|
|
noaudio |
|
niente suono, grazie |
|
driver |
|
dummy - input TV NULL :) Usato solo per test, genera un input di tipo dummy.
v4l - cattura immagini dall'interfaccia V4L standard (default
/dev/video0 ) |
|
device |
|
specifica altri
dispositivi al posto del default /dev/video0 |
|
input |
|
dice da quale
input del sintonizzatore TV si vogliono prelevare le immagini (es. television,
s-video, composite, ...)
Stampa quelli disponibili durante l'inizializzazione. |
|
freq |
|
specifica la
frequenza alla quale settare il sintonizzatore (es. 511.250) |
|
outfmt |
|
in quale formato output
vogliamo le immagini (rgb32, rgb24, yv12,
uyvy, i420 (per i420 devi passare l'opzione -vc rawi420 ,
a causa di un conflitto fourcc) |
|
width |
|
la larghezza della finestra di output, in pixel |
|
height |
|
l'altezza della finestra di output, in pixel |
|
norm |
|
disponibili: PAL, SECAM, NTSC |
|
channel |
|
imposta il sintonizzatore al canale dato |
|
chanlist |
|
disponibili: us-bcast, us-cable, europe-west, europe-east, ecc |
2.5.4. Controllo da tastiera
| h o l | | seleziona il precedente/prossimo canale |
| n | | cambia norm |
| b | | cambia la lista dei canali |
2.5.5. Esempi
Output dummy, a AAlib :)
mplayer -tv on:driver=dummy:width=640:height=480 -vo aa
Input da standard V4L
mplayer -tv on:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv
3. Utilizzo
3.1. Linea di comando
MPlayer utilizza un complesso albero di opzioni. Questo è costituito da opzioni globali
scritte prima (per esempio mplayer -vfm 5
), e opzioni
scritte dopo i nomi dei file, che si applicano solo al dato file/URL/qualsiasicosa
(per esempio mplayer -vfm 5 movie1.avi movie2.avi -vfm 4
).
Si possono raggruppare nomifile/URL usando { e }. E' utile con l'opzione
-loop: mplayer { 1.avi -loop 2 2.avi } -loop 3
leggerà i file in questo ordine: 1 1 2 1 1 2 1 1 2
| file | | mplayer [opzioni] [percorso/]nomefile |
| file | | mplayer [opzioni di default] [percorso/]nomefile1 [opzioni per nomefile1] nomefile2 [opzioni per nomefile2] ... |
| VCD | | mplayer [opzioni] -vcd numtraccia [-cdrom-device /dev/cdrom] |
| DVD | | mplayer [opzioni] -dvd numtitolo [-dvd-device /dev/dvd] |
| rete | | mplayer [opzioni] http://sito.com/file.[mpg|avi] (si possono usare anche playlist) |
Le ultime versioni di MPlayer accettano anche tracce VCD e DVD in stile URL, proprio come fa
Xine: mplayer dvd://1
o mplayer vcd://1
mplayer -vo x11 /mnt/Films/Contact/contact2.mpg
mplayer -vcd 2
mplayer -afm 3 /mnt/DVDtrailers/alien4.vob
mplayer -dvd 1 -dvd-device /dev/hdc
mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi
3.2. Controllo da tastiera
| <- o -> | | cerca indietro/avanti 10 secondi |
| su o giu | | va indietro/avanti 1 minuto |
| pgsu/pggiu | | va indietro/avanti 10 minuti |
| < o > | | va indietro/avanti nella playlist |
| p o SPAZIO | | pausa il filmato (premi un tasto) |
| q o ESC | | ferma la riproduzione e chiude il programma |
| + o - | | aggiusta il ritardo audio di +/- 0.1 secondi |
| / o * | | diminuisce/aumenta il volume |
| o | | cambia l'OSD: nessuno / ricerca / ricerca+timer |
| z o x | | aggiusta il ritardo dei sottotitoli di +/- 0.1 secondi |
(i seguenti tasti sono disponibili solo con l'opzione -vo xv ) |
| 1 o 2 | | regola il contrasto |
| 3 o 4 | | regola la luminosità |
| 5 o 6 | | regola l'hue |
| 7 o 8 | | regola la saturazione |
Controllo da tastiera della GUI
| , e . | | precedente / prossimo file |
| - o + | | diminuisce / aumenta il volume |
| invio | | inizia riproduzione |
| spazio | | pausa |
| s | | stop |
| a | | about |
| l | | carica file |
| b | | skin browser |
| e | | mostra l'equalizzatore |
| p | | mostra la playlist |
| f | | modalità a pieno schermo |
| m | | muto |
Controllo dell'input TV
| h o l | | seleziona precedente/prossimo canale |
| n | | cambia norm |
| b | | cambia lista canali |
3.3. Controllo da LIRC
Linux Infrared Remote Control (Controllo remoto a infrarossi per Linux ndt) - usa un ricevitore IR fatto in casa,
un (pressoche) arbitrario telecomando e controlla la tua linux box!
Per saperne di più visita www.lirc.org.
Se hai installato il pacchetto lirc, puoi compilare MPlayer con il supporto a LIRC
usando ./configure --enable-lirc
Se tutto è andato bene, MPlayer stamperà un messaggio come
LIRC init was successful.
on startup. Se avviene un errore te lo dirà. Se non ti dice nulla
su LIRC non c'è compilato il supporto. Questo è quanto :-)
Il nome dell'applicazione per MPlayer è - indovina - mplayer_lirc.
Questa accetta i seguenti comandi:
| PAUSA | | pausa la riproduzione. Ogni altro tasto continua la riproduzione. |
| SPEGNI | | esce da MPlayer |
| INDIETRO | | 10 secondi indietro |
| INDIETRO VELOCE | | 60 secondi indietro |
| AVANTI | | salta 10 secondi |
| AVANTI VELOCE | | salta 60 secondi |
| AUMENTA VOL | | aumenta il volume dell'uno percento |
| DIMINUISCI VOL | | diminuisce il volume dell'uno percento |
| PCM | | usa il canale pcm del mixer |
Non dimenticare di abilitare la ripetizione per i pulsanti INDIETRO/AVANTI in .lircrc. Ecco un
estratto dal mio .lircrc:
begin
remote = CU-SX070
prog = mplayer_lirc
button = Tape_Play
repeat = 1
config = FFWD
end
begin
remote = CU-SX070
prog = mplayer_lirc
button = Tape_Stop
config = QUIT
end
Se non ti piace la posizione standard del file di configurazione di lirc (~/.lircrc)
usa l'opzione -lircconf <nomefile> per specificare un altro file.
3.4. Streaming dalla rete o da pipe
MPlayer può riprodurre file dalla rete, usando il protocollo HTTP.
La riproduzione funziona aggiungendo semplicemente l'URL alla linea di comando. MPlayer
onora anche la variabile d'ambiente HTTP_PROXY, e usa il proxy se disponibile.
L'utilizzo del proxy può anche essere forzato :
mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf
MPlayer può leggere dallo standard input (NON da named pipe). Questo può essere per esempio
usato per riprodurre da FTP:
wget ftp://micorsops.com/qualcosa.avi -O - | mplayer -
Nota: si consiglia anche di abilitare la CACHE quando si legge da rete:
wget ftp://micorsops.com/qualcosa.avi -O - | mplayer -cache 8192 -
4. Sezione FAQ (Domande frequenti ndt)
5. Sezione CD/DVD
6. Vari Sistemi Operativi
6.1. Pacchettizazione per Debian
Per costruire il pacchetto, prendi la versione cvs, o .tgz, decomprimila,
e spostati nella directory del programma:
cd main
fakeroot debian/rules binary
(... mplayer rileva automaticamente hardware/software, si compila e.. )
dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'.
E ora basta diventare root, e:
dpkg -i ../mplayer_0.18-1_i386.deb
Ecco come dovrebbe essere:
eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb
Password:
(Reading database ... 26946 files and directories currently installed.)
Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb)
Unpacking replacement mplayer ...
Setting up mplayer (0.18-1) ...
6.2. FreeBSD
Per compilare il pacchetto devi avere GNU make (gmake, /usr/ports/devel/gmake),
il make nativo di BSD non funzionerà.
Per eseguire MPlayer bisogna ricompilare il kernel con
"options USER_LDT" (a meno che tu non abbia la versione -CURRENT, dove questo è di default).
Se possiedi CPU con SSE usa anche "options CPU_ENABLE_SSE" per utilizzarlo
(richiesto FreeBSD-STABLE, o usa le patch del kernel).
Se MPlayer si lamenta circa "CD-ROM Device '/dev/cdrom' not found!" fai un
link simbolico: ln -s /dev/(your_cdrom_device) /dev/cdrom
Non c'è ancora il supporto al DVD per FreeBSD.
6.3. Solaris
MPlayer dovrebbe funzionare su Solaris 2.6 o più recente.
La riproduzione di file AVI funziona meglio su Solaris x86, perchè
si possono usare i codec win32 sulla piattaforma x86, o si possono usare le istruzioni MMX/MMX2/3DNow/ecc
per MP3/DivX/DVD/qualunquecosa. Su SPARC Solaris,
troverai che con alcuni file AVI non funziona la riproduzione video e/o
audio, perchè i codec video/audio che usano le DLL Win32
non sono disponibili. Comunque, i filmati DivX/OpenDivX dovrebbero funzionare,
se si usa libavcodec.
Su UltraSPARC, MPlayer si avvantaggia delle loro estensioni VIS
(equivalenti a MMX), attualmente solo con libmpeg2,
libvo e libavcodec, ma non con mp3lib. Puoi vedere un file VOB
su una CPU a 400Mhz. Necessita mLib installato.
Per compilare il pacchetto devi avere GNU make (gmake, /opt/sfw/gmake), il make nativo
di Solaris non funzionerà. Errore tipico che si ottiene compilando col make
di solaris al posto del GNU make:
% /usr/ccs/bin/make
make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
Su Solaris SPARC, devi avere il compilatore GNU C/C++; non ha importanza
se il compilatore GNU C/C++ è configurato con o senza l'assembler GNU.
Su Solaris x86, devi avere l'assembler GNU e il compilatore GNU C/C++,
configurato per usare l'assembler GNU! Il codice dell'mplayer
sulla piattaforma x86 fa un uso pesante di MMX, SSE e 3DNOW!
Istruzioni che non possono essere compilate usando l'assembler della Sun
/usr/ccs/bin/as
.
Lo script di configurazione tenta di scoprire quale programma assembler è
usato dal tuo comando "gcc" (in caso che la rilevazione automatica fallisse, usa
l'opzione "--as=/dove/hai/installato/gnu-as" per dire allo
script di configurazione dove può trovare "as" GNU sul tuo sistema).
Messaggio d'errore dalla configurazione su un sistema Solaris x86 usando GCC
senza assembler GNU:
% configure
...
Checking assembler (/usr/ccs/bin/as) ... , failed
Please upgrade(downgrade) binutils to 2.10.1...
(Soluzione: Installa e usa un gcc configurato con "--with-as=gas")
Errore tipico che si ottiene nel compilare con un compilatore GNU C che non
usa as GNU:
% gmake
...
gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
-fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c
Assembler: mplayer.c
"(stdin)", line 3567 : Illegal mnemonic
"(stdin)", line 3567 : Syntax error
... more "Illegal mnemonic" and "Syntax error" errors ...
Per il supporto DVD devi avere installato libcss con la patch. Patch:
http://www.tools.de/solaris/mplayer/.
A causa di bug in solaris 8 x86, non è possibile riprodurre in modo affidabile DVD con una
capacità >4GB:
Su Solaris con CPU UltraSPARC, si può ottenere maggiore velocità
usando le istruzioni VIS della CPU per certe operazioni che impiegano molto tempo.
L'accelerazione VIS può essere usata in MPlayer richiamando funzioni nella
mediaLib di Sun.
Operazioni VIS accelerate da mediaLib sono usate per la decodifica video mpeg2
e per la conversione del color space nei driver di output video.
6.4. StrongARM
Ci è stato riportato che MPlayer compila su StrongARM. Usa la seguente linea di comando:
./configure --target=arm-linux --disable-css --with-x11libdir=/usr/arm/lib
--with-x11incdir=/usr/arm/lib --disable-gcc-checking
6.5. Silicon Graphics Indigo / IRIX
Ci è stato riportato che funziona. Probabilmente si deve usare il driver ao sgi.
Qualcuno ha informazioni più precise?
6.6. QNX
Funziona. Bisogna scaricare SDL per QNX, e installarlo. Quindi esegui
MPlayer con le opzioni -vo sdl:photon
-ao sdl:nto
,
e dovrebbe essere veloce.
L'output -vo x11
è ancora più lento che in Linux, perchè
QNX ha solo l'emulazione X che è MOLTO lenta. Usate l'SDL.
Appendice A - Autori
NOTA: *NON* inviate segnalazioni di bug, richieste di aiuto e di caratteristiche direttamente agli autori!
Leggete l'Appendice C e iscrivetevi alla mailing list mplayer-users.
Il progetto MPlayer:
- Árpád Gereöffy (A'rpi/ESP-team)
- codice del lettore (demultiplexer del flusso mpeg e parser avi/asf, sincronia A-V, ricerca...)
- mp3lib, basato sui sorgenti mpglib [decodificatore audio MP3]
- getch2 [gestore tastiera]
- cambiamenti nel codice libmpeg2 (frame progressivi, supporto bitrate & fps)
- miglioramenti libvo: aggiunto supporto OpenGL, correzione bug nel driver mga...
- supporto triplo buffering & YUY2 (per DivX/MPEG4) nel driver mga_vid
- script nella directory TVout (TVout su Matrox G400DH, vedi documentazione)
- hacking dei codec DivX/Mpeg4 VfW per ottenere l'output YUV
- ottimizzazioni velocità decoder opendivx (vedi opendivx/ChangeLog)
- codice visualizzazione OSD & SUB
- integrazione ffmpeg/libavcodec
- supporto DivX4Linux (ProjectMayo) (vedi documentazione)
- nuovo supporto DVD usando libdvdread
- supporto DVB
- output MPEG PES & supporto schede DVB
- tutto quello che non è menzionato da altre parti
- Zoltán Ponekker (Pontscho/Fresh!)
- script configure Makefile per una semplice compilazione
- sistema GUI
- supporto 3DNow! in mp3lib
- supporto 3DNow! in fastmemcpy.h
- vari cambiamenti nel driver X11 (gestione tastiera, pieno schermo, riconoscimento bpp, ecc)
- libvo: aggiunto driver xmga, e supporto pieno schermo per xv
- supporto mixer audio (volume)
- Gábor Lénárt (LGB)
- miglioramenti script ./configure
- miglioramenti Makefile
- supporto preliminare DVD
- vari miglioramenti e correzioni X11
- formato HTML della documentazione
- Gábor Bérczi (Gabucino)
- scrittore e mainteiner della documentazione
- traduzione ungara della documentazione, homepage, output dell'help
- design&gfx della seconda homepage
- maintainer homepage
- test, qualità codec & confronto velocità
- operatore canali IRC (#MPlayer è il canale utenti)
- port sperimentale su MINIX :) (cosa c'è di divertente?)
- design sottotitoli MPsub
- Szabolcs Berecz (Szabi)
- parser file codecs.conf
- parser file config e riga di comando
- correzioni mga_vid, opzioni modulo ecc.
- supporto fbdev in libvo
- supporto sottotitoli type #7
- László Megyer (Lez, Laaz)
- lettore SUB
- screensaver+DPMS disabilitato per libvo
- Gyula László (Chass, Tégla)
- primi font (mp_font1.zip)
- design&gfx terza homepage
- design&gfx quarta (attuale) homepage
- Zoltán Márk Vicián (Se7en)
- supporto SVGAlib in libvo
- Alex Beregszaszi (al3x)
- driver output ALSA in libao2
- driver output vo_ggi in libvo (www.ggi-project.org)
- supporto codec xanim
- supporto file VIVO
- supporto cattura da TV
- hacking Quicktime
- supporto libavcodec in MEncoder
- demuxer formato file RM
- framecopy mencoder
- supporto yuv4mpeg1
- cambiamenti demuzer Nuppelvideo
- subconfig
- hacking VIDIX e libdha
- port driver Matrox per Vidix
- driver output video driXVidix
- e varie altre cose (in libvo, libmad syncing, dec_audio/video e loader)
- Andreas Ackermann (Acki)
- supporto LIRC (vedi documentazione)
- supporto DGA in libvo
- Felix Bünemann (Atmos)
- mainteiner driver SDL
- correzioni formati YUV addizionali
- nuovo font (mp_font2.zip)
- supporto output file PNG in libvo
- supporto flipping (per Indeo 3/4, ecc)
- driver audio SDL in libao2
- scrittore file RAW PCM/WAVE per libao2
- supporto audio OggVorbis
- vario codice
- port Win32
- supporto priorità in codecs.conf (mai usato ;)
- supporto DivX5Linux
- supporto decodifica AAC via libfaad2
- TeLeNiEkO
- traduzione spagnola della documentazione
- Michael Graffam
- supporto XF86VidMode per vo_x11 e vo_dga
- codice per cambiare la modalità video per vo_dga
- Jens Hoffmann
- supporto formati YUV addizionali
- ha scoperto il grande problema BITMAPINFOHEADER -> ha risolto la pixellizzazione ASV2
- Nick Kurshev
- ottimizzazioni memcpy per AMD K7 e Intel Pentium III (fastmemcpy.h)
- informazioni sulla messa a punto del CDROM
- ulteriori ottimizzazioni 3DNow! in mp3lib e libac3 e ffmpeg
- traduzione russa della documentazione
- radeon_vid, rage128_vid, radeonfb
- driver libvo: vo_vesa
- design VIDIX e libdha, programmazione
- German Gomez Garcia
- output SPDIF AC3 per SBLive!
- Dariusz Pietrzak (Eyck)
- supporto pacchettizazione debian (vedi debian/* e questa documentazione)
- supporto per formato sottotitoli vplayer
- supporto preliminare formato sottotitoli .RT
- Marcus Comstedt
- supporto iniziale solaris8-x86
- correzioni configure
- Jürgen Keil
- modificato MPlayer per funzionare su Solaris 8 x86
- correzioni varie (win32, configure, ecc)
- driver audio SUN in libao2
- supporto mediaLib in libavcodec
- Vladimir Kushnir
- modificato MPlayer per funzionare su FreeBSD x86
- Bertrand BAUDET
- supporto streaming da rete
- Alban Bedel Derek J Witt
- ottimizzazioni streaming da rete con MMS
- Artur Zaprzala
- programma completo per la generazione di font + font OSD (TOOLS/subfont-c)
- lanzz@lanzz.org
- plugin GIMP per la generazione di font (TOOLS/subfont-gimp)
- Adam Tla/lka
- revisione, correzione, ottimizzazione osd/sub, supporto utf8
- correzioni varie
- Folke Ashberg
- driver AAlib nativo (-vo aa)
- Kamil Toman
- Ivan Kalvatchev
- supporto MPEG2 interlacciati (libmpeg2)
- draft libvo2
- pl
- nuovo script ./configure
- manutenzione codice generale, correzioni, invio patch
- Michael Niedermayer
- nuovo codice di postprocessing (con deinterlacing ecc...)
- supporto ridimensionamento software con C/MMX/MMX2/3DNow (swscale.c)
- vari convertitori bpp rgb/yuv
- nuovo, migliore codice IDCT per libavcodec
- riconoscimento automatico cpu a runtime
- ottimizzazione SSE di liba52
- Sven Goethel
- joy_ping
- Eric Anholt
- codice riconoscimento CPU
- Jiri Svoboda
- supporto sottotitoli tipo AQT
- supporto YUV CRTC2 in mga_vid
- driver output video DirectFB
- Oliver Schoenbrunner
- driver audio SGI
- supporto MIPS
- Jeroen Dobbelaere
- David Holm
- supporto DXR3
- importazione libmp1e
- Panagiotis Issaris
- opzione -playlist
- supporto NuppelVideo
- Mike Melanson
- implementazione open-source codec MS Video1
- demuxer, decodificatore FLI
- decoder ADPCM unificato (supporta IMA/DVI, MS ADPCM, alcuni altri)
- demuxer file FILM (.cpk)
- demuxer file RoQ
- decoder Audio/Video RoQ
- decoder QT SMC
- decoder QT RLE
- decoder MS RLE
- Tobias Diedrich
- Kilian A. Foth
- Tim Ferguson
- decodifica Cinepak opensource
- decodifica CYUV opensource
- Sam Lin
- Johannes Feigl
- originale traduzione tedesca documentazione
- miglioramenti in configure, piccole patch
- ha trovato qualcuno (Thilo Wunderlich) che ha mandato una scheda DVB
- Kim Minh Kaplan
- supporto sottotitoli DVD e VobSub
- Brian Kuschak
- supporto streaming RTP (lettura)
- Stephen Davies
- supporto per file video grandi (>2^32 byte)
- suono surround
- Rik Snel
- Anders Johansson
- sistema di plugin audio, alcune plugin di effetti
- Roberto Togni
- Decoder QT RPZA open-source
- Decoder HuffYUV open-source
- Wojtek Kaniewski
- Supporto rotella del mouse
- Fredrik Kuivinen
- OSD/sottotitoli fuori dal filmato - per SDL
Tester principali:
- Tibor Balázs (Tibcu)
- Péter Sasi (SaPe)
- Christoph H. Lampert
- Attila Kinali
- Dirk Vornheder
- Bohdan Horst (Nexus)
I codec, librerie:
- Aaron Holtzman: <aholtzma@engr.uvic.ca>
- autore ac3dec (e libac3) [decodificatore aaudio AC3]
- mga_vid driver [back-end ridimensionatore YUV Matrox G200/G400]
- mpeg2dec [veloce decodificatore video MPEG1/MPEG2, attualmente usato nel lettore]
- Michel Lespinasse: <walken@zoy.org>
- vasti cambiamenti in libmpeg2 per migliore velocità e aderenza a mpeg
- Eugene Kuznetsov: <divx@euro.ru>
- autore avifile [libreria lettore AVI per linux, usando codec Win32 VfW/ACM]
- aiuto tecnico circa i formati AVI e ASF, e come ottenere YUV con VfW...
- supporto tecnico divx4linux
- Zdenek Kabelac: <kabi@informatics.muni.cz>
- mainteiner attuale di avifile(?)
- aiuto tecnico su win32 e timer
- Gerard Lantau: <glantau@yahoo.fr>
- autore, mainteiner ffmpeg/libavcodec (de/codificatore mpeg, mjpeg, divx opensource)
- Project Mayo: <http://www.projectmayo.com>
- gli autori del codec OpenDivX
- Michael Hipp:
- autore mpglib [non è usato direttamente, ma alcune parti in mp3lib]
- Mark Podlipec:
- autore xa_gsm.c [codec audio MS-GSM]
[da una libreria GSM di Jutta Degener e Carsten Bormann]
- Jake Janovetz:
- autore remez.c [usato per calcolare i coefficienti del filtro audio]
- Vivien Chappelier, Damien Vincent:
- autori di libFAME [veloce codificatore mpeg-1, usato da -vo mpegpes/-vo dxr3]
Il loro codice non è nella versione attuale del lettore, ma ho avuto idee
o aiuto tecnico da:
- John F. McGowan http://www.jmcgowan.com/
- autore FAQ su AVI. [sito con molti documenti utili su codec e formato avi]
- Dirk Farin: <farin@ti.uni-mannheim.de>
- autore dvdview [decoder video MPEG1/MPEG2, usato in v0.5-v0.8]
- Adam Williams: <broadcast@earthling.net>
- autore libmpeg3 (e xmovie) [decoder video MPEG1/MPEG2, usato in v0.1-v0.4]
Appendice A/2 - Mainteiner del codice e della documentazione di MPlayer
Homepage
- Design: Chass
- Contenuti: Gabucino
Documentazione inglese
- documentazione utente: Gabucino
- documentazione tech/*: A'rpi
Traduzioni della documentazione
Piattaforme/port
- Pacchettizazione DEBIAN: Dariusz Pietrzak
- Supporto FreeBSD: Vladimir Kushnir, Nexus
- Supporto Solaris 8: Jürgen Keil
- Supporto MIPS: Oliver Schoenbrunner
Codice MPlayer:
- codice di sincronizzazione A-V: A'rpi
- libmpdemux, libmpcodecs: A'rpi
- input TV: Alex
- supporto DVD (nuovissimo - dvdnav): Kees Cook
- supporto DVD (nuovo - dvdread/dvdcss): A'rpi
- supporto DVD (vecchio - libcss): LGB
- streaming da rete: Bertrand BAUDET
- parser/lettore/scrittore file sottotitoli ascii: Lez
- sottotitoli DVD/VOB: Kim Minh Kaplan
- renderer SUB/OSD: Adam Tla/lka
- file config e parser della linea di comando: Szabi
- playtree, livello input: Albeu
- postproc, convertitori colorspace: Michael Niedermayer
- supporto LIRC: Acki
- VIDIX core, libdha: Nick Kurshev
driver libvo:
- vo_3dfx.c - OBSOLETO, usa xv o tdfxfb
- vo_tdfxfb.c - Zeljko Stevanovic
- vo_aa.c - Folke Ashberg
- vo_directfb.c - Jiri Svoboda
- vo_dga.c - Acki (datato)
- vo_dxr3.c - David Holm
- vo_fbdev.c - Szabi
- vo_ggi.c - al3x
- vo_gl.c - A'rpi (datato)
- vo_gl2.c - Sven Goethel
- vo_md5.c - A'rpi
- vo_mga.c - A'rpi
- vo_mpegpes.c - A'rpi
- vo_null.c - A'rpi
- vo_pgm.c - A'rpi
- vo_png.c - Atmos
- vo_sdl.c - Atmos
- vo_svga.c - se7en
- vo_syncfb.c - OBSOLETED, usa mga
- vo_vesa.c - Nick Kurshev
- vo_x11.c - Pontscho
- vo_xmga.c - Pontscho
- vo_xv.c - Pontscho
- vo_xvidix.c - al3x
- vo_zr.c - Rik Snel
driver VIDIX:
- genfb_vid - al3x
- mach64_vid - Michael Niedermayer
- mga_vid - al3x ?
- nvidia_vid - al3x (sviloppo fermato - non aspettartelo)
- radeon_vid - Nick Kurshev
- rage128_vid - Nick Kurshev
driver libao2:
- ao_alsa5.c - al3x
- ao_alsa9.c - al3x (corretto da joy_ping)
- ao_null.c - A'rpi
- ao_oss.c - A'rpi
- ao_pcm.c - Atmos
- ao_sdl.c - Atmos
- ao_sgi.c - Oliver Schoenbrunner
- ao_sun.c - Jürgen Keil
UTILITA':
- subfont-c - Artur Zaprzala:
- subfont-GIMP - lanzz@lanzz.org
- *.pl - Atmos
- x2mpsub - Gabucino
- altre - A'rpi
Appendice B - Le mailing list
Esistono alcune mailing list pubbliche su MPlayer. Ci si può iscrivere
ai seguenti indirizzi:
- Lista MPlayer per sviluppatori:
http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng
Questa lista riguarda lo sviluppo di mplayer! Qui si discutono i cambiamenti di interfaccia/API,
nuove librerie, ottimizzazione del codice, cambiamenti in ./configure, e le patch mandate.
NON inviare segnalazioni di bug, domande "da utente", richieste di caratteristiche, flame qui!
Questa lista dovrebbe essere mantenuta con un basso livello di traffico.
- Lista utenti MPlayer:
http://mplayerhq.hu/mailman/listinfo/mplayer-users
- mandate qui segnalazioni di bug (dopo aver letto la sezione Bug conosciuti, e l'appendice C)
- mandate qui le richieste di caratteristiche (dopo aver letto l'INTERA documentazione)
- mandate qui le vostre domande in quanto utenti (dopo aver letto l'INTERA documentazione)
- Lista di utenti ungara:
http://mplayerhq.hu/mailman/listinfo/mplayer-felhasznalok
- lista in lingua ungara
- argomenti? Lo vedremo... soprattutto flame e domande evitabili finora :(
- Utenti MPlayer & Matrox G200/G400/G450/G550:
http://lists.sourceforge.net/lists/listinfo/mplayer-matrox
mandate qui domande inerenti matrox
- questioni riguardanti mga_vid
- driver beta ufficiali di matrox (per X 4.x.x)
- e su matroxfb-TVout.
- Utenti MPlayer & scheda DVB:
http://mplayerhq.hu/mailman/listinfo/mplayer-dvb
Questioni inerernti la scheda di decodifica hardware chiamata DVB.(NON dxr3!)
- MPlayer CVS-log:
http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog
Mandate qui domande solo sui cambiamenti CVS.
(se non capite perchè una certa modifica è necessaria o se avete una correzione migliore o avete
notato dei possibili bug/problemi nella patch mandata)
Assicuratevi che lo sviluppatore cui vi riferite legga questa lista!
NOTA: la lingua delle liste sopra è l'INGLESE, a meno che non sia specificato
altrimenti. Per favore non mandate messaggi in altre lingue!
NOTA: si possono raggiungere gli archivi delle mailing list
qui.
Appendice C - Come segnalare i bug
Appendice D - Bug conosciuti
Bug/problemi speciali relativi al sistema/cpu:
- SIGILL (segnale 4) su P3 con kernel 2.2.x:
Problema: i kernel 2.2.x non hanno un appropriato (funzionante) supporto SSE
Soluzione: aggiorna il kernel a 2.4.x
Aggiramento: ./configure --disable-sse
- Generale SIGILL (segnale 4):
Problema: hai compilato ed eseguito mplayer su macchine diverse
(per esempio compilato su P3 ed eseguito su celeron)
Soluzione: compila MPlayer sulla stessa macchina dove lo userai!
Aggiramento: usa le opzioni ./configure --disable-sse ecc.
- "Internal buffer inconsistency" durante l'esecuzione di MEncoder:
Problema: bug di gcc 2.96 conosciuto, ancora nessuna correzione disponibile. Se hai gcc 2.95,
hai la libreria libmp3lame che è stata compilata con gcc 2.96 (installata da un
pacchetto deb/rpm?). Controlla quale libreria ha trovato MEncoder: ldd mencoder.
- Il suono in formato MP2/MP3 si sente male su PPC:
Problema: bug conosciuto di GCC su piattaforme PPC, non è stato ancora corretto.
Aggiramento: usa il decoder MP1/MP2/MP3 di FFmpeg (lento) (-ac ffmpeg
)
- sig11 in libmpeg2, quando si codifica e contemporaneamente si ridimensiona:
Problema: bug MMX conosciuto di GCC 2.95.2, aggiorna a 2.95.3.
Vari problemi audio e di sincronizzazione A-V:
Ritardo generale dell'audio o suono saltellante (presente con tutti o molti file):
- il più comune: driver audio bacato! - prova ad usare driver diversi, prova
l'emulazione OSS di ALSA 0.9 con -ao oss, prova anche -ao sdl, a volte aiuta.
Se il file è letto bene con -nosound, allora puoi essere sicuro che è un problema
(del driver) della scheda sonora.
- problemi del buffer audio (grandezza del buffer riconosciuta male)
Aggiramento: l'opzione mplayer -abs
- problemi di frequenza di campionamento - probabilmente la tua scheda non supporta la frequenza di campionamento
usata nei tuoi file - prova il plugin di ricampionamento (-aop)
- macchina lenta (cpu o vga)
prova con -vo null, se funziona bene, allora hai una scheda/driver VGA lenta
Aggiramento: compra una scheda più veloce o leggi questa documentazione su come velocizzare le cose
Prova anche -framedrop
- driver audio difettoso
Ritardo/desincronizzazione audio relativa a uno o più file:
- file danneggiato
Aggiramento:
- opzione -ni o -nobps (per file senza interleave o corrotti)
e/o
- -mc 0 (necessario per file con audio VBR mal intervallato)
e/o
- opzione -delay o tasti +/- durante la riproduzione per regolare il ritardo
Se nulla di questo aiuta, per favore mandaci il file, controlleremo (e correggeremo).
- la tua scheda sonora non supporta la riproduzione a 48Khz
Aggiramento: compra una scheda migliore... o prova a diminuire l'fps del 10% (usa -fps 27 per un filmato a 30fps)
o usa il plugin di ricampionamento
- macchina lenta
(se A-V non è circa 0, e l'ultimo numero nella riga di stato aumenta)
Aggiramento: -framedrop
Nessun suono:
- il tuo file usa un codec audio non supportato
Aggiramento: leggi la documentazione e aiutaci ad aggiungerne il supporto
Nessuna immagine (solo una finestra grigia/verde):
- il tuo file usa un codec video non supportato
Aggiramento: leggi la documentazione e aiutaci ad aggiungerne il supporto
- il codec selezionato automaticamente non riesce a leggere il file, prova con un altro usando le opzioni -vc o -vfm
- stai cercando di leggere file DivX 3.x col decoder opendivx o XviD (-vc odivx) - installa Divx4Linux e ricomplila mplayer
Problemi di output video:
Prima nota: le opzioni -fs -vm e -zoom sono solo suggerimenti, non sono (ancora)
supportate da tutti i driver. Quindi non è un bug se non funzionano.
Solo pochi driver supportano il ridimensionamento/zoom, non aspettartelo per x11 o dga.
Tremolio OSD/sub:
- driver x11: spiacente, non può essere corretto ora
- driver xv: usa l'opzione -double
Immagine verde usando mga_vid (-vo mga / -vo xmga):
- mga_vid ha riconosciuto male la quantità di RAM della tua scheda, ricaricalo usando l'opzione mga_ram_size