Merge svn changes up to r27242

Conflicts:

	Makefile
	configure
This commit is contained in:
Uoti Urpala 2008-07-09 18:32:51 +03:00
commit ca3feba5c3
50 changed files with 453 additions and 274 deletions

View File

@ -153,12 +153,12 @@ License: GNU General Public License
Name: NuppelVideo / RTJPEG
Version: 0.52a + patches
Homepage: http://web.archive.org/web/20050305195413/http://frost.htu.tuwien.ac.at/~roman/nuppelvideo/
Homepage: http://web.archive.org/web/20060219034716/http://frost.htu.tuwien.ac.at/~roman/nuppelvideo/
Directory: libmpcodecs/native/rtjpegn.[ch] libmpdemux/nuppelvideo.h
Copyright: 1998 Justin Schoeman (justin@suntiger.ee.up.ac.za)
1998, 1999 Joerg Walter <trouble@moes.pmnet.uni-oldenburg.de>
1999 Wim Taymans <wim.taymans@tvd.be>
License: GNU General Public License version 2
License: GNU General Public License
Name: ReactOS
Version: r25937

View File

@ -848,7 +848,7 @@ a ID.
V\ některých případech dostanete více informací použitím \-msglevel identify=6.
Například pro DVD vypíše délku (čas) každého titulu, stejně jako
ID disku.
Skript TOOLS/\:midentify potlačí ostatní výstup MPlayeru a (s\ trochou štěstí)
Skript TOOLS/\:midentify.sh potlačí ostatní výstup MPlayeru a (s\ trochou štěstí)
upraví jména souborů pro shell.
.
.TP

View File

@ -976,7 +976,7 @@ identify=6.
Zum Beispiel listet es für eine DVD die Kapitel die zeitliche Länge jedes
Titels sowie die Disc-ID.
Kombiniere dies mit \-frames 0, um alle Ausgaben zu unterdrücken.
Das Wrapper-Script TOOLS/\:midentify unterdrückt die anderen Ausgaben von
Das Wrapper-Script TOOLS/\:midentify.sh unterdrückt die anderen Ausgaben von
MPlayer
und führt (hoffentlich) Shell-Escaping für die Dateinamen aus.
.

View File

@ -61,7 +61,7 @@ mencoder \- movie encoder
.
.br
.B mplayer
[dvd|dvdnav]://[title|[start_title]\-end_title]
[dvd|dvdnav]://[title|[start_title]\-end_title][/device]
[options]
.
.br
@ -927,7 +927,7 @@ In some cases you can get more information by using \-msglevel identify=6.
For example, for a DVD it will list the chapters and time length of each title,
as well as a disk ID.
Combine this with \-frames 0 to suppress all output.
The wrapper script TOOLS/\:midentify suppresses the other MPlayer output and
The wrapper script TOOLS/\:midentify.sh suppresses the other MPlayer output and
(hopefully) shellescapes the filenames.
.
.TP
@ -1038,6 +1038,10 @@ output driver (currently only derivatives of X11 are supported).
Necessary to select the buttons in DVD menus.
.
.TP
.B \-noar
Turns off AppleIR remote support.
.
.TP
.B \-noconsolecontrols
Prevent MPlayer from reading key events from standard input.
Useful when reading data from standard input.
@ -1056,10 +1060,6 @@ Turns off joystick support.
Turns off LIRC support.
.
.TP
.B \-noar
Turns off AppleIR remote support.
.
.TP
.B \-nomouseinput
Disable mouse button press/\:release input (mozplayerxp's context menu relies
on this option).
@ -10528,6 +10528,10 @@ currently it is meaningful only for MPEG[12].
Sometimes raising it is necessary in order to avoid "buffer underflows".
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: undocumented
.
.TP
.B packetsize=<size>
Size, expressed in bytes, of the unitary packet for the chosen format.
When muxing to MPEG[12] implementations the default values are:
@ -10540,10 +10544,6 @@ in seconds, between the reference timer of the output stream (SCR)
and the decoding timestamp (DTS) for any stream present
(demux to decode delay).
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: undocumented
.
.
.
.\" --------------------------------------------------------------------------

View File

@ -1,4 +1,4 @@
.\" synced with r27182
.\" synced with r27236
.\" Encoding: iso-8859-1
.\" MPlayer (C) 2000-2008 MPlayer Team
.\" The English man page was/is done by Gabucino, Diego Biurrun, Jonas Jermann
@ -63,7 +63,7 @@ mencoder \- Encodeur vid
.
.br
.B mplayer
[dvd|dvdnav]://[titre|[titre_de_début]\-titre_de_fin ]
[dvd|dvdnav]://[titre|[titre_de_début]\-titre_de_fin ][/périphérique]
[options]
.
.br
@ -970,7 +970,7 @@ Dans certains cas, vous aurez encore plus d'informations en utilisant
Par exemple, pour les DVDs, cela listera la durée de chaque titre et de
chaque chapitre, tout comme le numéro d'identifiant du DVD.
Ajoutez l'option \-frames 0 pour supprimer toute sortie console superflue.
Le script TOOLS/\:midentify supprime le reste de l'affichage et (espérons-le)
Le script TOOLS/\:midentify.sh supprime le reste de l'affichage et (espérons-le)
formate les noms de fichiers pour le shell.
.
.TP
@ -1094,6 +1094,10 @@ pour le moment).
Utilisé pour sélectioner les boutons des menus DVDs.
.
.TP
.B \-noar
Désactive la gestion de la télécommande AppleIR.
.
.TP
.B \-noconsolecontrols
Empêche MPlayer de réagir aux commandes clavier depuis l'entrée
standard.
@ -1116,10 +1120,6 @@ Activ
Désactive la gestion de LIRC.
.
.TP
.B \-noar
Désactive la gestion de la télécommande AppleIR.
.
.TP
.B \-nomouseinput
Désactive l'interprétation des boutons de la souris (le menu contextuel
de mozplayerxp dépend de cette option).
@ -11116,6 +11116,10 @@ Il arrive qu'il faille augmenter ce param
de tampons "buffer underflows".
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: non documenté
.
.TP
.B packetsize=<taille>
Taille, exprimée en octets, du paquet unitaire du format donné.
Lorsque le format de sortie est l'une des implémentations de MPEG[12],
@ -11129,10 +11133,6 @@ permise, en secondes, entre la r
(SCR) et le timestamp de décodage (DTS) pour tout flux présent (délais
entre le démultiplexage et le décodage).
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: non documenté
.
.
.
.\" --------------------------------------------------------------------------

View File

@ -927,7 +927,7 @@ N
Például egy DVD esetén kiírja a fejezeteket és az egyes címek időbeli hosszát,
valamint a lemez ID-t is.
Ha a \-frames 0 kapcsolóval használod, elnyom minden kimenetet.
A TOOLS/\:midentify wrapper script eltünteti a maradék kimenetet, és
A TOOLS/\:midentify.sh wrapper script eltünteti a maradék kimenetet, és
(remélhetőleg) shell escape-eli a fájlneveket.
.
.TP

View File

@ -1,4 +1,4 @@
.\" synced with r26674
.\" synced with r27236
.\" Encoding: iso-8859-1
.\" MPlayer (C) 2000-2008 MPlayer Team
.\" Questa pagina di manuale è stata fatta da Gabucino, Diego Biurrun,
@ -66,7 +66,7 @@ mencoder \- codificatore di film
.
.br
.B mplayer
[dvd|dvdnav]://[titolo|[titolo_iniziale]\-titolo_finale]
[dvd|dvdnav]://[titolo|[titolo_iniziale]\-titolo_finale][/dispositivo]
[opzioni]
.
.br
@ -249,6 +249,8 @@ solo un fotogramma per poi tornare in modalit
continua).
.IPs "q / ESC"
Smette di riprodurre ed esce.
.IPs "U\ \ \ \ "
Ferma la riproduzione (ed esce se non è specificata \-idle).
.IPs "+ e \-"
Regola il ritardo audio di +/\- 0.1 secondi.
.IPs "/ e *"
@ -852,7 +854,7 @@ Supportato solo dai driver di uscita cvidix, fbdev, svga, vesa, winvidix,
xmga, xvidix, xover, xv (vedi \-vo xv:ck), xvmc (vedi \-vo xv:ck) e directx.
.
.TP
.B \-correct\-pts (sperimentale)
.B \-correct\-pts (SPERIMENTALE)
Esegue MPlayer in una modalità sperimentale dove i timestamp per i fotogrammi
video vengono calcolati diversamente e sono supportati i filtri video che
aggiungono nuovi fotogrammi o modificano i timestamp di quelli presenti.
@ -903,7 +905,7 @@ Attualmente i seguenti driver funzionano con fixed-vo: gl, gl2, mga, svga, x11,
xmga, xv, xvidix e dfbmga.
.
.TP
.B \-framedrop (vedi anche \-hardframedrop, sperimentale se non con \-no\-correct\-pts)
.B \-framedrop (vedi anche \-hardframedrop, sperimentale se non con \-nocorrect\-pts)
Elimina la visualizzazione di alcuni fotogrammi per mantenere il sincronismo
A/V con sistemi lenti.
I filtri video non vengono applicati a questi fotogrammi.
@ -921,7 +923,7 @@ Non funziona come opzione nel file di configurazione.
Visualizza un breve elenco delle opzioni.
.
.TP
.B \-hardframedrop (sperimentale se non con \-no\-correct\-pts)
.B \-hardframedrop (sperimentale se non con \-nocorrect\-pts)
Scarto ancora più intenso di fotogrammi (rovina la decodifica).
Porta a distorsione delle immagini!
Nota che nello specifico il decodificatore libmpeg2 può andare in crash,
@ -938,14 +940,14 @@ assicurarti che non causi problemi di sicurezza (per es.\& assicurati di usare
percorsi assoluti se "." e nella tua PATH come in Windows).
.sp 1
Questo può essere usato (male) per disabilitare salvaschermi che non usano le
corrette API di X per ciò.
corrette API di X.
Se pensi sia troppo complicato, chiedi all'autore del salvaschermo di supportare
le API di X adeguate per farlo.
le API di X adeguate.
.sp 1
.I ESEMPIO per xscreensaver:
mplayer \-heartbeat\-cmd "xscreensaver\-command \-deactivate" file
.sp 1
.I ESEMPIO per il salvaschermo di gnome:
.I ESEMPIO per il salvaschermo di GNOME:
mplayer \-heartbeat\-cmd "gnome\-screensaver\-command \-p" file
.RE
.PD 1
@ -960,7 +962,7 @@ In alcuni casi puoi avere pi
Per esempio, per un DVD verranno mostrati i capitoli e la lunghezza di ogni
titolo, così come l'ID del disco.
Usala con \-frames 0 per eliminare tutte le emissioni su console.
Lo script di appoggio TOOLS/\:midentify toglie il resto delle stampe di MPlayer
Lo script di appoggio TOOLS/\:midentify.sh toglie il resto delle stampe di MPlayer
e (si spera) corregge per la shell (shellescapes) i nomi dei file.
.
.TP
@ -1074,6 +1076,10 @@ uscita video (attualmente sono supportati solo derivati di X11).
Necessario per selezionare i bottoni nei menu dei DVD.
.
.TP
.B \-noar
Disabilita la gestione del telecomando AppleIR.
.
.TP
.B \-noconsolecontrols
Impedisce ad MPlayer di leggere gli eventi dei tasti dallo standard input.
Utile quando si leggono dati direttamente dallo standard input.
@ -1623,10 +1629,11 @@ Passa automaticamente a IPv4 se necessario.
.
.TP
.B \-psprobe <posizione in byte>
Riproducendo un flusso MPEG-PS, questa opzione ti permette di specificare
quanti byte del flusso vuoi che MPlayer legga per poter identificare il codec
video usato.
Questa opzione è necessaria per riprodurre file EVO contenenti flussi H.264.
Riproducendo un flusso MPEG-PS o MPEG-PES, questa opzione ti permette di
specificare quanti byte del flusso vuoi che MPlayer legga per poter
identificare il codec video usato.
Questa opzione è necessaria per riprodurre file EVO o VDR contenenti flussi
H.264.
.
.TP
.B \-pvr <opzione1:opzione2:...> (solo PVR)
@ -1961,7 +1968,7 @@ Vedi l'output su console per una lista delle norme TV disponibili.
Regola il sintonizzatore sul canale <valore>.
.IPs chanlist=<valore>
disponibili: europe-east, europe-west, us-bcast, us-cable, etc
.IPs channels=<canale>\-<nomecanale>,<canale>\-<nomecanale>,...
.IPs channels=<canale>\-<nome>[=<norma>],<canale>\-<nome>[=<norma>],...
Imposta la lista dei canali.
Usa _ per gli spazi nei nomi (o divertiti con il quoting ;-).
I nomi dei canali verranno scritti usando l'OSD e i comandi slave tv_step_channel,
@ -3748,10 +3755,10 @@ texture della vostra implementazione OpenGL.
Studiato per funzionare anche con l'implementazione OpenGl più basilare,
ma usa pure estensioni recenti e nuove, che permettono di usare più spazi
colore e il rendering diretto.
Per favore utilizza \-dr se funziona con la tua implementazione OpenGL, dato
che per alte risoluzioni porta a un
.B grande
aumento di velocità.
Per una velocità ottimale prova ad usare qualcosa simile a
.br
\-vo gl:yuv=2:force\-pbo:ati\-hack \-dr \-noslices
.br
Questa parte di codice implementa pochi controlli percio' se una
caratteristica non funziona potrebbe non essere supportata dalla
tua scheda o dalla tua implementazione OpenGL anche se non viene
@ -3760,6 +3767,17 @@ Utilizza glxinfo oppure uno strumento simile per visualizzare le estensioni
supportate dalla vostra implementazione OpenGL.
.PD 0
.RSs
.IPs (no)ati\-hack
I driver ATI possono fornire un immagine corrotta quando si usano i PBO (usando
\-dr o force\-pbo).
Questa opzione corregge questo comportamento, utilizzando un po' più di memoria.
.IPs (no)force\-pbo
Usa sempre i PBO per trasferire le texture, anche se ciò implica un'ulteriore
copia.
Attualmente incrementa di poco la velocità con i driver NVidia e molto con i
driver ATI.
Per funzionare correttamente può aver bisogno delle sotto-opzioni \-noslices e
di ati\-hack.
.IPs (no)scaled-osd
Cambia il modo in cui l'OSD si comporta quando cambia la dimensione della
finestra (default: disabilitato).
@ -4649,6 +4667,8 @@ a risoluzione completa.
Se <l> viene specificato la decodifica a bassa risoluzione verrà usata solo
se la larghezza del video è maggiore od uguale a <l>.
.RE
.IPs "o\ \ \ \ "
FIXME: Da documentare.
.IPs "sb=<numero> (solo MPEG-2)"
Salta il numero indicato di righe di macroblocchi in basso.
.IPs "st=<numero> (solo MPEG-2)"
@ -5546,6 +5566,7 @@ Questo filtro non
.B "gate\ \ \ "
Filtro noise gate (limite rumore) simile al filtro audio comp.
Questo filtro non è testato, forse anche inutilizzabile.
.
.TP
.B karaoke
Semplice filtro di rimozione della voce che sfrutta il fatto che la voce sia
@ -5555,6 +5576,83 @@ Attenti che questo filtro convertir
Funziona bene con tracce a due canali, non perder tempo ad usarlo
su qualcosa che non sia stereo a due canali.
.
.TP
.B scaletempo[=opzione1:opzione2:...]
Riproporziona il tempo dell'audio senza modificare il picco, opzionalmente
in sincronia con la velocità di riproduzione (default).
.br
Questo funziona riproducendo \'stride\' ms di audio alla velocità normale, e
poi consumando \'stride*proporzione\' ms dell'audio in ingresso.
Lega tra loro gli stride miscelando \'overlap\'% di uno stride
con l'audio che segue lo stride precedente.
Facoltativamente esegue una breve analisi statistica sui \'search\' ms di
audio successivi, per determinare il miglior punto per la sovrapposizione.
.PD 0
.RSs
.IPs scale=<valore>
Valore nominale di riproporzione tempo.
Riproporziona questo valore sommato alla velocità.
(default: 1.0)
.IPs stride=<valore>
Lunghezza in millisecondi di ogni stride da emettere.
Un valore troppo alto causerà salti evidenti per valori di scale alti e un'eco
per valori di scale bassi.
Valori molto bassi modificherano il picco.
Valori più alti aumentano la resa.
(default: 60)
.IPs overlap=<percentuale>
Percentuale di stride da sovrapporre.
Valori più bassi aumentano la resa.
(default: .20)
.IPs search=<valore>
Lunghezza in millisecondi per cercare il miglior punto per la sovrapposizione.
Valori più bassi aumentano decisamente la resa.
Su sistemi lenti, la vorrai impostare probabilmente molto corta.
(default: 14)
.IPs speed=<tempo|pitch|both|none>
Imposta la risposta al cambio di velocità.
.RSss
.IPs tempo
Riproporziona il tempo in sincronia con la velocità (default).
.IPs pitch
Inverte l'effetto del filtro.
Riproporziona il picco senza modificare il tempo.
Aggiungi \'[ speed_mult 0.9438743126816935\' e
\'] speed_mult 1.059463094352953\' al tuo file input.conf per spostarti di
semitoni musicali.
.I ATTENZIONE:
Perde sincronia col video.
.IPs both
Riproporziona sia il tempo che il picco.
.IPs none
Ignora il cambio di velocità.
.RE
.RE
.sp 1
.RS
.I ESEMPI:
.RE
.RSs
.IPs "mplayer \-af scaletempo \-speed 1.2 media.ogg"
Riproduce media a 1.2x la normale velocità, con audio al picco normale.
Cambiando la velocità di riproduzione, modifica il tempo audio affinché
corrisponda.
.IPs "mplayer \-af scaletempo=scale=1.2:speed=none \-speed 1.2 media.ogg"
Riproduce media a 1.2x la normale velocità, con audio al picco normale,
ma la modifica della velocità di riproduzione non ha alcun effetto sul tempo
audio.
.IPs "mplayer \-af scaletempo=stride=30:overlap=.50:search=10 media.ogg"
Modifica i parametri di qualità e di resa.
.IPs "mplayer \-af format=floatne,scaletempo media.ogg"
Fa in modo che scaletempo usi codice a virgola mobile.
Forse più veloce su alcune piattaforme.
.IPs "mplayer \-af scaletempo=scale=1.2:speed=pitch audio.ogg"
Riproduce media a 1.2x la normale velocità, con audio al picco normale.
Cambiando la velocità di riproduzione, modifica il picco, lasciando il tempo
audio a 1.2x.
.RE
.PD 1
.
.
.
.\" --------------------------------------------------------------------------
@ -5650,8 +5748,12 @@ Con molti codec video conviene utilizzare 16 quando si effettua la codifica.
.
.TP
.B rectangle[=w:h:x:y]
Il plugin risponde alla direttiva 'change_rectangle' di input.conf che
ha due parametri.
Disegna un rettangolo delle dimensioni richieste alle coordinate indicate
sopra all'immagine ed emette sulla console i valori correnti del rettangolo
stesso.
Questo può essere usato per trovare i migliori parametri per il taglio (crop).
Se colleghi la direttiva 'change_rectangle' di input.conf a qualche tasto,
puoi spostare e ridimensionare il rettangolo al volo.
.PD 0
.RSs
.IPs <w>,<h>
@ -7619,7 +7721,7 @@ Puoi specificare opzioni specifiche dei codec di codifica usando la
sintassi seguente:
.
.TP
.B \-<codec>opts <opzione1[=valore,opzione2,...>
.B \-<codec>opts <opzione1[=valore1]:opzione2[=valore2]:...>
.RE
.
.PP
@ -7993,7 +8095,7 @@ Windows Media Video, versione 2 (conosciuto anche come WMV8)
.
.TP
.B vqmin=<1\-31>
valore minimo di quantizzazione (passo 1/2)
valore minimo di quantizzazione
.RSs
.IPs 1
Non raccomandato (file molto grandi, una piccola differenza di qualità e
@ -8058,7 +8160,7 @@ indefinito.
.
.TP
.B vqmax=<1\-31>
Valore massimo di quantizzazione (passo 1/2), 10\-31 dovrebbe essere un
Valore massimo di quantizzazione, 10\-31 dovrebbe essere un
buon valore (default: 31).
.
.TP
@ -8072,7 +8174,7 @@ obsoleto, utilizza vqmax
.TP
.B vqdiff=<1\-31>
valore massimo di differenza di quantizzazione tra fotogrammi consecutivi I o P
(passo 1/2) (default: 3)
(default: 3)
.
.TP
.B vmax_b_frames=<0\-4>
@ -8363,7 +8465,7 @@ attivo.
.
.TP
.B vbitrate=<valore>
Specifica il bitrate (passo 1/2) (default: 800).
Specifica il bitrate (default: 800).
.br
.I ATTENZIONE:
1kbit = 1000 bit
@ -8389,17 +8491,17 @@ problemi se si utilizza vrc_(min|max)rate.
.
.TP
.B vrc_maxrate=<valore>
valore massimo del bitrate in kbit/\:sec (passo 1/2)
valore massimo del bitrate in kbit/\:sec
(default: 0, illimitato)
.
.TP
.B vrc_minrate=<valore>
valore minimo del bitrate in kbit/\:sec (passo 1/2)
valore minimo del bitrate in kbit/\:sec
(default: 0, illimitato)
.
.TP
.B vrc_buf_size=<valore>
dimensione del buffer in kbit (passo 1/2).
dimensione del buffer in kbit
Per MPEG-1/2 questo regola anche la dimensione del vbv (video buffer
verifier), utilizza 327 per i VCD, 917 per i SVCD e 1835 per i DVD.
.
@ -8425,19 +8527,19 @@ uguale a 1.1).
.
.TP
.B vb_qfactor=<\-31.0\-31.0>
fattore di quantizzazione tra fotogrammi B e non B (passo 1/2) (default: 1.25)
fattore di quantizzazione tra fotogrammi B e non B (default: 1.25)
.
.TP
.B vi_qfactor=<\-31.0\-31.0>
fattore di quantizzazione tra fotogrammi I e non I (passo 1/2) (default: 0.8)
fattore di quantizzazione tra fotogrammi I e non I (default: 0.8)
.
.TP
.B vb_qoffset=<\-31.0\-31.0>
scostamento di quantizzazione tra fotogrammi B e non B (passo 1/2) (default: 1.25)
scostamento di quantizzazione tra fotogrammi B e non B (default: 1.25)
.
.TP
.B vi_qoffset=<\-31.0\-31.0>
(passo 1/2) (default: 0.0)
(default: 0.0)
.br
se v{b|i}_qfactor > 0
.br
@ -8474,7 +8576,7 @@ medieranno la quantizzazione maggiormente nel tempo (cambiamenti pi
.
.TP
.B vqcomp=<valore>
Compressione della quantizzazione, vrc_eq dipende da questo (passo 1/2) (default: 0.5).
Compressione della quantizzazione, vrc_eq dipende da questo (default: 0.5).
Per esempio, supponendo che sia utilizzata l'equazione di default del rate control,
se si utilizza vqcomp=1.0 il controllo della dimensione del file alloca per ogni
fotogramma la quantità di bit necessari a codificarlo con lo stesso QP.
@ -8487,7 +8589,6 @@ La miglior qualit
.TP
.B vrc_eq=<equazione>
equazione principale per il controllo della dimensione del file (ratecontrol)
(passo 1/2)
.RE
.RSs
.IPs "1\ \ \ \ "
@ -8561,7 +8662,7 @@ massimo / minimo
.TP
.B vrc_override=<opzioni>
Utilizza la qualità specificata per alcuni pezzi particolari
(finale, riconoscimenti, ...) (passo 1/2).
(finale, riconoscimenti, ...).
Le opzioni sono <fotogramma iniziale>, <fotogramma finale>, <qualità>
[/<fotogramma iniziale>, <fotogramma finale>, <qualità>[/...]]:
.PD 0
@ -8584,7 +8685,7 @@ vrc_buf_size (default: 0.9)
.
.TP
.B vqsquish=<0|1>
Specifica come mantenere la quantizzazione tra qmin e qmax (passo 1/2).
Specifica come mantenere la quantizzazione tra qmin e qmax.
.PD 0
.RSs
.IPs 0
@ -9358,6 +9459,10 @@ FIXME: Da documentare.
.B skip_threshold=<0\-1000000>
FIXME: Da documentare.
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: Da documentare.
.
.
.SS nuv (\-nuvopts)
.
@ -10495,6 +10600,27 @@ per la luminanza.
Valori utili sono nella gamma <\-2\-2> (default: 0).
.
.TP
.B aq_mode=<0\-2>
Definisce il modo in cui la quantizzazione adattiva (AQ) distribuisce i bit:
.PD 0
.RSs
.IPs 0
disabilitato
.IPs 1
Evita di distribuire i bit tra fotogrammi.
.IPs 2
Distribuisce i bit tra fotogrammi (default).
.RE
.PD 1
.
.TP
.B aq_strength=<valore positivo a virgola mobile>
Controlla quanto la quantizzazione adattiva (AQ) possa ridurre artefatti con
blocchi e sfocature in aree piane e con texture (default: 1.0).
Un valore di 0.5 indebolirà AQ e fornirà meno dettagli, mentre un valore di 1.5
porterà un'AQ più forte e maggiori dettagli.
.
.TP
.B cqm=<flat|jvt|<nomefile>>
Usa una matrice di quantizzazione personalizzata predefinita o ne carica una
da un file in formato JS.
@ -10801,6 +10927,10 @@ Durata massima in secondi per analizzare le propriet
Forza uno specifico demuxer di libavformat.
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: Da documentare.
.
.TP
.B probesize=<valore>
Massima dimensione dei dati da testare durante la fase di rilevazione.
Nel caso di MPEG-TS questo valore indentifica il massimo numero di pacchetti
@ -10865,6 +10995,10 @@ attualmente significativo solo per MPEG[12].
A volte è necessario aumentarlo per evitare errori di 'buffer underflows'.
.
.TP
.B "o\ \ \ \ \ \ "
FIXME: Da documentare.
.
.TP
.B packetsize=<dimensione>
Dimensione, in byte, del pacchetto unitario del formato selezionato.
Quando si scrivono file in formato MPEG[12] i valori di default sono:
@ -11031,6 +11165,12 @@ FIXME: Da documentare.
.B VIDIX_CRT
FIXME: Da documentare.
.
.TP
.B VIDIXIVTVALPHA
Impostala a 'disable' per impedire al driver VIDIX il controllo delle
impostazioni di alphablending.
Può poi essere gestito attraverso 'ivtvfbctl'.
.
.SS osdep:
.
.TP

View File

@ -594,7 +594,7 @@ Prowadzi do zniekszta
Pokazuje parametry zbioru w łatwo przeglądalnym formacie.
Wyświetla też dokładniejsze informacje o językach i identyfikatorach
napisów i ścieżek audio.
Skrypt TOOLS/\:midentify wycina inne napisy MPlayera i (mamy nadzieję)
Skrypt TOOLS/\:midentify.sh wycina inne napisy MPlayera i (mamy nadzieję)
zabezpiecza specjalne znaki przed interpretacją przez powłokę.
.
.TP

View File

@ -794,7 +794,7 @@ xmga, xv, xvidix
аудио дорожек. В некоторых случаях вы можете получить больше информации, используя
\-msglevel identify=6.
Для DVD, например, это отобразит длину каждого заголовка и ID диска.
Скрипт TOOLS/\:midentify подавляет остальной вывод MPlayer и (успешно) экранирует
Скрипт TOOLS/\:midentify.sh подавляет остальной вывод MPlayer и (успешно) экранирует
имена файлов.
.
.TP

View File

@ -880,7 +880,7 @@ mplayer \-heartbeat\-cmd "gnome\-screensaver\-command \-p" file
在某些情形下,使用 \-msglevel identify=6 能得到更多的信息。
例如,对于一张 DVD 碟片,该选项能列出每个标题的章节和时长,以及一个碟片 ID 号。
将此选项与 \-frames 0 一起使用能禁止所有输出。
封装脚本 TOOLS/\:midentify 禁止 MPlayer 的其它输出,
封装脚本 TOOLS/\:midentify.sh 禁止 MPlayer 的其它输出,
并且很可能shellescapes脚本转义了文件名。
.
.TP

View File

@ -997,7 +997,7 @@ nahraje 5. titul z DVD do souboru
Jak vytvořím (S)VCD automaticky?
</para></question>
<answer><para>
Zkuste skript <filename>mencvcd</filename> z podadresáře
Zkuste skript <filename>mencvcd.sh</filename> z podadresáře
<filename class="directory">TOOLS</filename>.
Pomocí něj můžete enkódovat DVD nebo jiné filmy do VCD
nebo SVCD formátu a dokonce je vypálit přímo na CD.
@ -1262,7 +1262,7 @@ a je podporován všemi dobrými přehrávači.
Jak mohu enkódovat soubor jen se zvukem?
</para></question>
<answer><para>
Použijte <filename>aconvert</filename> z podadresáře
Použijte <filename>aconvert.sh</filename> z podadresáře
<filename class="directory">TOOLS</filename>
ve zdrojových kódech MPlayeru.
</para></answer>

View File

@ -1245,7 +1245,7 @@ Starte Wiedergabe...<!--
</question>
<answer>
<para>
Probiere das Script <filename>mencvcd</filename> aus dem Unterverzeichnis <filename class="directory">TOOLS</filename>.
Probiere das Script <filename>mencvcd.sh</filename> aus dem Unterverzeichnis <filename class="directory">TOOLS</filename>.
Damit kannst du DVDs oder andere Filme automatisch ins VCD- oder SVCD-Format encodieren
und sogar direkt auf CD brennen.
</para>
@ -1554,7 +1554,7 @@ rm encode<!--
</question>
<answer>
<para>
Benutze <filename>aconvert</filename> vom Unterverzeichnis
Benutze <filename>aconvert.sh</filename> vom Unterverzeichnis
<filename class="directory">TOOLS</filename> im MPlayer-Sourcenbaum.
</para>
</answer>

View File

@ -47,11 +47,9 @@ Contents</link> and search for the topic, read the <xref linkend="faq"/>,
or try grepping through the files. Most questions should be answered somewhere
here and the rest has probably already been asked on our
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">mailing lists</ulink>.
<!-- FIXME: This refers to nonexistent links
Check the
<ulink url="http://lists.mplayerhq.hu/cgi-bin/s-arch.cgi">archives</ulink>, there
<ulink url="https://lists.mplayerhq.hu/mailman/listinfo">archives</ulink>, there
is a lot of valuable information to be found there.
-->
</para>
</preface>

View File

@ -991,7 +991,7 @@ will dump the 5th title of the DVD into the file
How can I create (S)VCDs automatically?
</para></question>
<answer><para>
Try the <filename>mencvcd</filename> script from the
Try the <filename>mencvcd.sh</filename> script from the
<filename class="directory">TOOLS</filename> subdirectory.
With it you can encode DVDs or other movies to VCD or SVCD format
and even burn them directly to CD.
@ -1259,7 +1259,7 @@ terms of functionality, and is supported by all decent players.
How can I encode an audio only file?
</para></question>
<answer><para>
Use <filename>aconvert</filename> from the
Use <filename>aconvert.sh</filename> from the
<filename class="directory">TOOLS</filename>
subdirectory in the MPlayer source tree.
</para></answer>

View File

@ -1120,7 +1120,7 @@ Lea la sección <link linkend="mencoder"><application>MEncoder</application></li
¿Como puedo crear un VCD?
</para></question>
<answer><para>
Pruebe el script <filename>mencvcd</filename> del subdirectorio <filename class="directory">TOOLS</filename>.
Pruebe el script <filename>mencvcd.sh</filename> del subdirectorio <filename class="directory">TOOLS</filename>.
Con él puede codificar DVDs u otras peliculas al formato VCD o SVCD e incluso
grabarlo directamente a CD.
</para></answer>

View File

@ -48,7 +48,7 @@ ou faites une recherche dans ces fichiers.
La plupart des questions devraient trouver leur réponse ici et le
reste a probablement déjà été demandé sur nos
<ulink url="http://www.mplayerhq.hu/design7/info.html#mailing_lists">listes de diffusion</ulink>.
Regardez leurs <ulink url="http://lists.mplayerhq.hu/cgi-bin/s-arch.cgi">archives</ulink>,
Regardez leurs <ulink url="https://lists.mplayerhq.hu/mailman/listinfo">archives</ulink>,
il y a beaucoup d'informations intéressantes à y trouver.
</para>

View File

@ -929,7 +929,7 @@ déchargera le 5ème titre du DVD dans un fichier
Comment puis-je créer des (S)VCDs automatiquement?
</para></question>
<answer><para>
Essayez le script <filename>mencvcd</filename> du sous-répertoire
Essayez le script <filename>mencvcd.sh</filename> du sous-répertoire
<filename class="directory">TOOLS</filename>. Avec lui vous pourrez encoder des DVDs
ou d'autres films en format VCD ou SVCD et même les graver directement sur un CD.
</para></answer>
@ -1180,7 +1180,7 @@ fonctionalitiés, et il est supporté par tous les lecteurs digne de ce nom.
Comment puis-je encoder un fichier seulement audio?
</para></question>
<answer><para>
Utilisez <filename>aconvert</filename> du sous-répertoire
Utilisez <filename>aconvert.sh</filename> du sous-répertoire
<filename class="directory">TOOLS</filename>
qui se situe dans l'arbre source de MPlayer.
</para></answer>

View File

@ -991,7 +991,7 @@ fájlba.
Hogy tudok automatikusan (S)VCD-t készíteni?
</para></question>
<answer><para>
Használd a <filename>mencvcd</filename> szkriptet a
Használd a <filename>mencvcd.sh</filename> szkriptet a
<filename class="directory">TOOLS</filename> alkönyvtárból.
Ezzel DVD-ket és más filmeket tudsz VCD vagy SVCD formátumba
kódolni és még közvetlenül CD-re is írhatod őket.
@ -1259,7 +1259,7 @@ funkcionalitásában és minden illedelmes lejátszó támogatja.
Hogyan tudok elkódolni egy csak audiót tartalmazó fájlt?
</para></question>
<answer><para>
Használd az <filename>aconvert</filename>-et a
Használd az <filename>aconvert.sh</filename>-et a
<filename class="directory">TOOLS</filename>
alkönyvtárból az MPlayer forrás fájában.
</para></answer>

View File

@ -1016,7 +1016,7 @@ farà il dump del quinto titolo del DVD sul file
Come posso creare automaticamente dei (S)VCD?
</para></question>
<answer><para>
Prova lo script <filename>mencvcd</filename> dalla sottodirectory
Prova lo script <filename>mencvcd.sh</filename> dalla sottodirectory
<filename class="directory">TOOLS</filename>.
Con quello puoi codificare DVD, o altri film, nel formato VCD o SVCD e anche
scriverli direttamente su CD.
@ -1286,7 +1286,7 @@ ed è supportato da tutti i riproduttori decenti.
Come posso codificare un file solo audio?
</para></question>
<answer><para>
Usa <filename>aconvert</filename> dalla sottodirectory
Usa <filename>aconvert.sh</filename> dalla sottodirectory
<filename class="directory">TOOLS</filename> dei sorgenti di MPlayer.
</para></answer>
</qandaentry>

View File

@ -1008,7 +1008,7 @@ zrzuci piątą pozycję DVD do pliku <replaceable>zrzut_dvd.vob</replaceable>.
Jak mogę tworzyć automatycznie (S)VCD?
</para></question>
<answer><para>
Wypróbuj skrypt <filename>mencvcd</filename> z podkatalogu
Wypróbuj skrypt <filename>mencvcd.sh</filename> z podkatalogu
<filename class="directory">TOOLS</filename>.
Korzystając z niego, możesz kodować DVD lub inne filmy do formatu VCD lub SVCD,
a nawet wypalać bezpośrednio na CD.
@ -1282,7 +1282,7 @@ a jest obsługiwany przez wszystkie sensowne odtwarzacze.
Jak mogę kodować plik zawierający tylko dźwięk?
</para></question>
<answer><para>
Użyj <filename>aconvert</filename> z podkatalogu
Użyj <filename>aconvert.sh</filename> z podkatalogu
<filename class="directory">TOOLS</filename> w drzewie źródeł
<application>MPlayera</application>.
</para></answer>

View File

@ -974,7 +974,7 @@ mplayer dvd://5 -dumpstream -dumpfile <replaceable>dvd_dump.vob</replaceable>
Как автоматически создавать (S)VCD?
</para></question>
<answer><para>
Попробуйте скрипт <filename>mencvcd</filename> из каталога
Попробуйте скрипт <filename>mencvcd.sh</filename> из каталога
<filename class="directory">TOOLS</filename>. С его помощью вы можете перекодировать
DVD или другие фильмы в VCD или SVCD формат и даже записывать их на CD.
</para></answer>
@ -1236,7 +1236,7 @@ mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replac
Как перекодировать звуковой файл (без видео)?
</para></question>
<answer><para>
Используйте <filename>aconvert</filename> из подкаталога
Используйте <filename>aconvert.sh</filename> из подкаталога
<filename class="directory">TOOLS</filename>
дерева каталогов MPlayer.
</para></answer>

View File

@ -648,6 +648,7 @@ OBJS_MPLAYER += $(OBJS_MPLAYER-yes)
MPLAYER_DEPS = $(OBJS_MPLAYER) $(OBJS_COMMON) $(COMMON_LIBS)
MENCODER_DEPS = $(OBJS_MENCODER) $(OBJS_COMMON) $(COMMON_LIBS)
DEPS = $(filter-out %.S,$(patsubst %.cpp,%.d,$(patsubst %.c,%.d,$(SRCS_COMMON) $(SRCS_MPLAYER:.m=.d) $(SRCS_MENCODER))))
ALL_PRG-$(MPLAYER) += mplayer$(EXESUF)
ALL_PRG-$(MENCODER) += mencoder$(EXESUF)
@ -703,12 +704,17 @@ DIRS = . \
TOOLS \
vidix \
ALLHEADERS = $(foreach dir,$(DIRS),$(wildcard $(dir)/*.h))
PARTS = ffmpeg/libavcodec \
ffmpeg/libavformat \
ffmpeg/libavutil \
ffmpeg/libpostproc \
libswscale \
FFMPEGLIBS = $(foreach part, $(PARTS), $(part)/$(notdir $(part)).a)
FFMPEGFILES = $(foreach part, $(PARTS), $(part)/*.[chS] ffmpeg/libavcodec/*/*.[chS])
###### generic rules #######
@ -730,15 +736,15 @@ all: $(ALL_PRG-yes)
%.ho: %.h
$(CC) $(CFLAGS) -Wno-unused -c -o $@ -x c $<
ALLHEADERS = $(foreach dir,$(DIRS),$(wildcard $(dir)/*.h))
%-rc.o: %.rc
$(WINDRES) -I. $< $@
checkheaders: $(ALLHEADERS:.h=.ho)
dep depend: $(DEPS)
for part in $(PARTS); do $(MAKE) -C $$part depend; done
ALLPARTLIBS = $(foreach part, $(PARTS), $(part)/$(notdir $(part)).a)
$(ALLPARTLIBS): ffmpeg/libavutil/*.[ch] ffmpeg/libavcodec/*.[ch] ffmpeg/libavcodec/*/*.[chS] ffmpeg/libavformat/*.[ch] ffmpeg/libpostproc/*.[ch] libswscale/*.[chS] libvo/fastmemcpy.h config.h
$(FFMPEGLIBS): $(FFMPEGFILES) libvo/fastmemcpy.h config.h
$(MAKE) -C $(@D)
touch $@
@ -752,7 +758,7 @@ codec-cfg$(EXESUF): codec-cfg.c codec-cfg.h help_mp.h
$(HOST_CC) -O -I. -Iffmpeg -DCODECS2HTML -o $@ $<
codecs.conf.h: codec-cfg$(EXESUF) etc/codecs.conf
./codec-cfg$(EXESUF) ./etc/codecs.conf > $@
./$^ > $@
# ./configure must be rerun if it changed
config.mak: configure
@ -770,9 +776,6 @@ endif
version.h:
./version.sh `$(CC) -dumpversion`
osdep/mplayer-rc.o: osdep/mplayer.rc version.h
$(WINDRES) -I. $< $@
%(EXESUF): %.c
@ -780,8 +783,7 @@ osdep/mplayer-rc.o: osdep/mplayer.rc version.h
###### dependency declarations / specific CFLAGS ######
codec-cfg.d: codecs.conf.h
mencoder.d mplayer.d vobsub.d gui/win32/gui.d libmpdemux/muxer_avi.d stream/network.d stream/stream_cddb.d: version.h
DEPS = $(filter-out %.S,$(patsubst %.cpp,%.d,$(patsubst %.c,%.d,$(SRCS_COMMON) $(SRCS_MPLAYER:.m=.d) $(SRCS_MENCODER))))
mencoder.d mplayer.d vobsub.d gui/win32/gui.d libmpdemux/muxer_avi.d stream/network.d stream/stream_cddb.d osdep/mplayer-rc.o: version.h
$(DEPS): help_mp.h
dvdread/%.o dvdread/%.d: CFLAGS += -D__USE_UNIX98 -D_GNU_SOURCE $(LIBDVDCSS_DVDREAD_FLAGS)
@ -862,7 +864,7 @@ clean:
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.o /*.a /*.ho /*~, $(addsuffix $(suffix),$(dir))))
rm -f mplayer$(EXESUF) mencoder$(EXESUF)
distclean: clean testsclean toolsclean driversclean
distclean: clean testsclean toolsclean driversclean dhahelperclean dhahelperwinclean
rm -rf DOCS/tech/doxygen
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.d, $(addsuffix $(suffix),$(dir))))
rm -f configure.log config.mak config.h codecs.conf.h help_mp.h \
@ -941,9 +943,8 @@ toolsclean:
TOOLS/bmovl-test$(EXESUF): -lSDL_image
TOOLS/subrip$(EXESUF): vobsub.o spudec.o unrar_exec.o \
libvo/aclib.o libswscale/libswscale.a libavutil/libavutil.a \
$(TEST_OBJS)
TOOLS/subrip$(EXESUF): vobsub.o spudec.o unrar_exec.o libvo/aclib.o \
libswscale/libswscale.a libavutil/libavutil.a $(TEST_OBJS)
TOOLS/vfw2menc$(EXESUF): -lwinmm -lole32
@ -984,10 +985,11 @@ KERNEL_VERSION = $(shell grep RELEASE $(KERNEL_INC)/linux/version.h | cut -d'"'
KERNEL_CFLAGS = -O2 -D__KERNEL__ -DMODULE -Wall -I$(KERNEL_INC) -include $(KERNEL_INC)/linux/modversions.h
KERNEL_OBJS = $(addprefix drivers/, mga_vid.o tdfx_vid.o radeon_vid.o rage128_vid.o)
MODULES_DIR = /lib/modules/$(KERNEL_VERSION)/misc
DRIVER_OBJS = $(KERNEL_OBJS) drivers/mga_vid_test drivers/tdfx_vid_test
drivers: $(KERNEL_OBJS) drivers/mga_vid_test drivers/tdfx_vid_test
drivers: $(DRIVER_OBJS)
$(KERNEL_OBJS) drivers/mga_vid_test drivers/tdfx_vid_test: CFLAGS = $(KERNEL_CFLAGS)
$(DRIVER_OBJS): CFLAGS = $(KERNEL_CFLAGS)
drivers/mga_vid.o: drivers/mga_vid.c drivers/mga_vid.h
drivers/tdfx_vid.o: drivers/tdfx_vid.c drivers/3dfx.h
drivers/radeon_vid.o drivers/rage128_vid.o: CFLAGS += -fomit-frame-pointer -fno-strict-aliasing -fno-common -ffast-math
@ -995,7 +997,7 @@ drivers/radeon_vid.o: drivers/radeon_vid.c drivers/radeon.h drivers/radeon_vid.h
drivers/rage128_vid.o: drivers/radeon_vid.c drivers/radeon.h drivers/radeon_vid.h
$(CC) $(CFLAGS) -DRAGE128 -c $< -o $@
install-drivers: drivers
install-drivers: $(DRIVER_OBJS)
-mkdir -p $(MODULES_DIR)
install -m 644 $(KERNEL_OBJS) $(MODULES_DIR)
depmod -a
@ -1005,7 +1007,7 @@ install-drivers: drivers
-ln -s /dev/radeon_vid /dev/rage128_vid
driversclean:
rm -f drivers/*.o drivers/*~ drivers/mga_vid_test drivers/tdfx_vid_test
rm -f $(DRIVER_OBJS) drivers/*~
dhahelper: vidix/dhahelper/dhahelper.o vidix/dhahelper/test
@ -1029,8 +1031,7 @@ vidix/dhahelperwin/dhasetup.exe: vidix/dhahelperwin/dhasetup.c
vidix/dhahelperwin/dhahelper.o: vidix/dhahelperwin/dhahelper.c vidix/dhahelperwin/dhahelper.h
$(CC) -Wall -Os -c $< -o $@
vidix/dhahelperwin/dhahelper-rc.o: vidix/dhahelperwin/dhahelper.rc vidix/dhahelperwin/common.ver vidix/dhahelperwin/ntverp.h
$(WINDRES) -I. $< $@
vidix/dhahelperwin/dhahelper-rc.o: vidix/dhahelperwin/common.ver vidix/dhahelperwin/ntverp.h
vidix/dhahelperwin/base.tmp: vidix/dhahelperwin/dhahelper.o vidix/dhahelperwin/dhahelper-rc.o
$(CC) -Wl,--base-file,$@ -Wl,--entry,_DriverEntry@8 -nostartfiles \

View File

@ -25,24 +25,24 @@ Description: Examples of custom fragment program for OpenGL video out driver
Usage: mplayer -vo gl:yuv=4:customprog=edgedetect.fp
midentify
midentify.sh
Author: Tobias Diedrich
Description: Runs 'mplayer -identify' for all arguments while preventing
video window flashing.
Usage: midentify file1 [file2 ...]
Usage: midentify.sh file1 [file2 ...]
mpconsole
mpconsole.sh
Author: Rich Felker
Description: Script to run MPlayer on the console (fbdev/mga_vid/etc.) without
the console text and/or flashing cursor getting in the way.
Usage: mpconsole [mplayer options]
Usage: mpconsole.sh [mplayer options]
mplmult.sh
@ -90,25 +90,25 @@ Usage: wma2ogg [options] <-f FILE1 | -f FILE2 ... | -a>
MEncoder scripts in the TOOLS dir
---------------------------------
divx2svcd
divx2svcd.sh
Author: Miklos Vajna
Description: A simple utility that creates an SVCD from a video in an AVI
container.
Usage: divx2svcd <input_avi> [options]
see 'divx2svcd -h' for more info
Usage: divx2svcd.sh <input_avi> [options]
see 'divx2svcd.sh -h' for more info
mencvcd
mencvcd.sh
Author: Jürgen Hammelmann
Description: Converts DVD (or anything else that MPlayer plays) to (S)VCD
Usage: mencvcd <basename> [mencvcd options] [mplayer options]
see 'mencvcd -h' for more info
Usage: mencvcd.sh <basename> [mencvcd.sh options] [mplayer options]
see 'mencvcd.sh -h' for more info
Note: Requires MPlayer, mjpegtools, VCDImager, cdrdao, and optionally
LAME, tooLAME and SoX.
@ -143,14 +143,14 @@ Usage: --help show help
--dvd-device device to pull the video off (default: /dev/dvd)
aconvert
aconvert.sh
Author: Jonas Jermann
Description: A hack to allow MEncoder to read respectively encode from audio
only files.
Usage: aconvert <"input file"> <"output file"> <"options">
Usage: aconvert.sh <"input file"> <"output file"> <"options">
If no options are specified the following is assumed:
-oac lavc -lavcopts acodec=mp3:abitrate=192
@ -173,17 +173,17 @@ Note: You will need vcdimager/cdrecord to master/burn the resulting
encode2mpeglight
encode2mpeglight.sh
Author: Giacomo Comes
Description: Convert anything MPlayer can play to VCD/SVCD/DVD MPEG.
Usage: encode2mpeglight -o <NAME> -n <NORM> [options] <source>
Usage: encode2mpeglight.sh -o <NAME> -n <NORM> [options] <source>
For help and documentation run:
encode2mpeglight -h
encode2mpeglight -l
encode2mpeglight -doc
encode2mpeglight.sh -h
encode2mpeglight.sh -l
encode2mpeglight.sh -doc
Note: This script uses only MEncode/MPlayer. Check the final log
file for informations/warnings about the encoding process.

View File

@ -3,7 +3,7 @@
# Author: Jonas Jermann
# Description: A hack to allow mencoder to encode from an audio only file
if [[ $1 == "" ]]; then
if [ "$1" = "" ]; then
echo "Usage: $0 <\"input file\"> <\"output file\"> <\"options\">"
exit 0
fi

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# -----------------------------------------------------------------------------

View File

@ -79,7 +79,7 @@ EOF
###preparing###
#help
function usage()
usage()
{
cat <<EOF
Usage: `basename $0` input_avi [options]
@ -185,7 +185,7 @@ case $1 in
;;
*)
input=`echo $1 |sed 's/\\ / /'`
if [ "$input" == "`basename "$input"`" ]; then
if [ "$input" = "`basename "$input"`" ]; then
input="`pwd`/$1"
fi
nev=`basename "$input" .avi`
@ -222,14 +222,14 @@ while [ "$1"x != "x" ]; do
done
#checking for cd-recording device
if [ "$burning" == 1 ]; then
if [ "$burning" = 1 ]; then
echo -n "Searching for cdrecorder device... "
if [ `uname -r |cut -d '.' -f 2` == 4 ]; then
if [ `uname -r |cut -d '.' -f 2` = 4 ]; then
#linux 2.4.x
dev="dev=$dev4"
echo "$dev4"
elif [ `uname -r |cut -d '.' -f 2` == 6 ]; then
elif [ `uname -r |cut -d '.' -f 2` = 6 ]; then
#linux 2.6.x
if [ -e /dev/cdrecorder ]; then
dev='dev=/dev/cdrecorder'
@ -262,7 +262,7 @@ exit 1
else #checking for version >= 2.01a14
echo -n "Checking for cdrecord version >= 2.01a14... "
$cdrbin cuefile=a 2>&1 |grep 'Bad Option' >/dev/null 2>&1
if [ "$?" == 0 ]; then
if [ "$?" = 0 ]; then
cat <<EOF
ERROR: Can't find cdrecord version >= 2.01a14. You can download it at
ftp://ftp.berlios.de/pub/cdrecord/alpha/cdrtools-2.01a20.tar.gz
@ -281,7 +281,7 @@ else
subopts=''
fi
if [ "x$subopts" == "x" ]; then
if [ "x$subopts" = "x" ]; then
subs=''
else
subs='-sub '
@ -310,7 +310,7 @@ else
fi
#finish displaying informations
if [ "$burning" == 1 ]; then
if [ "$burning" = 1 ]; then
#asking for cd
cat <<EOF
@ -328,7 +328,7 @@ fi
mencoder -ofps 25 -oac lavc "$input" -ovc lavc -lavcopts vcodec=mpeg2video:vbitrate=$bitrate:acodec=mp2:abitrate=128:keyint=25:aspect=4/3:$paraopts -o "${nev}2.avi" -srate 44100 -of mpeg -channels 2 $vfopts $subs "$subopts"
videosize=`$ls -l "${nev}2.avi"|tr -s ' '|cut -d ' ' -f5`
if ! [ `echo $(( $cdsize*1048576 < $videosize ))` == "1" ]; then
if ! [ `echo $(( $cdsize*1048576 < $videosize ))` = "1" ]; then
#video is smaller, than $cdsize
mv ${nev}2.avi ${nev}00.mpg
else
@ -348,7 +348,7 @@ do
#creating images
vcdimager -t svcd -c "$nev2.cue" -b "$nev2.bin" "$i"
#burning if needs
if [ "$burning" == 1 ]; then
if [ "$burning" = 1 ]; then
if [ "$firstcd" != 1 ]; then
cat <<EOF
@ -362,7 +362,7 @@ EOF
$cdrbin -v -dao $dev speed=12 gracetime=2 driveropts=burnfree -eject cuefile="$nev2.cue"
fi
#cleaning if needs
if [ "$cleaning" == 1 ]; then
if [ "$cleaning" = 1 ]; then
rm -f "$nev2.cue" "$nev2.bin"
fi
done

View File

@ -9,32 +9,32 @@
#
# Purpose: Convert anything MPlayer can play to AVI/VCD/SVCD/DVD MPEG
#
# encode2mpeglight is free software; you can redistribute it and/or modify
# encode2mpeglight.sh is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License.
# encode2mpeglight is distributed in the hope that it will be useful,
# encode2mpeglight.sh is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with encode2mpeglight; if not, write to the Free Software
# along with encode2mpeglight.sh; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
###############################################################################
# encode2mpeglight is a program that can create VCD/SVCD/DVD MPEGs
# encode2mpeglight.sh is a program that can create VCD/SVCD/DVD MPEGs
# and eventually extract VobSub subtitles from a DVD using only
# MEncoder/MPlayer.
#
# encode2mpeglight is a stripped release of encode2mpeg and therefore the
# encode2mpeglight.sh is a stripped release of encode2mpeg and therefore the
# code is redundant in several places, with many variables defined and
# used for no apparent reason. This cannot be avoided easily.
# A command line like:
# encode2mpeglight <encode2mpeglight options>
# encode2mpeglight.sh <encode2mpeglight.sh options>
# will produce almost the same results as:
# encode2mpeg -mpeg -mpegonly <encode2mpeglight options>
# encode2mpeg -mpeg -mpegonly <encode2mpeglight.sh options>
#
# If you need more features like:
# - two or more audio streams, chapters, subtitles, menu
@ -42,7 +42,7 @@
# - creation of MPEG-4 avi and subtitles for a hardware player
# and more, consider to use the full release (http://encode2mpeg.sf.net)
#
# encode2mpeglight is mainly tested with the stable release of MPlayer,
# encode2mpeglight.sh is mainly tested with the stable release of MPlayer,
# I try to make it work with SVN too, but due to the "unstable" nature of
# SVN, bugs may suddenly appear. If you find any, please report them to me.
###############################################################################
@ -268,7 +268,7 @@ tmpgenc_inter=$tmpgenc_inter,23,25,26,27,28,21,22,23,24,26,27,28,30,22,23,24,26,
TXTSUBDEF=( languageId nolang delay 0 font arial.ttf size 28 bottom-margin 30 characterset ISO8859-1 movie-height-reduction 0 fps default )
AVISUBDEF=( format SubViewer name-extension null fileformat unix version-number off delay 0 fps default suffix default )
#### encode2mpeglight defauls
#### encode2mpeglight.sh defauls
mpeg=1
encode=7:2:2
@ -465,7 +465,7 @@ while (($#)) ; do
a=1
echo "$2" | grep -q '^[1-4]$' && a=$2
shift 2
set -- " " -qmatrix kvcd -res $((3+(a+1)/2)) $([[ $a == [13] ]] && echo "-gop 24") "$@"
set -- " " -qmatrix kvcd -res $((3+(a+1)/2)) $([[ $a = [13] ]] && echo "-gop 24") "$@"
;;
-vcd) #
#-generate VCD compliant frames on output (default)
@ -507,7 +507,7 @@ while (($#)) ; do
-vcodec) #<mpeg1|mpeg2|mpeg4>
#-force the selected video codec [VCD:mpeg1,SVCD-DVD:mpeg2,AVI:mpeg4]
isarg $1 "$2" Avi
[[ $2 == mpeg[124] ]] && vcodec=$2 && [[ ${vcodec:4:1} == [12] ]] && vcodec=${vcodec}video
[[ $2 = mpeg[124] ]] && vcodec=$2 && [[ ${vcodec:4:1} = [12] ]] && vcodec=${vcodec}video
shift
;;
-qmatrix) #<kvcd|tmpgenc|default|hi-res>
@ -855,10 +855,10 @@ done
#### output stream name check
[[ ! $output ]] && echo "**ERROR: [$PROGNAME] name of the output stream missing (-o name)" && exit 1
#### unspecified video norm
[[ ! $videonorm && step -gt 1 && ! ( $mpeg && ${encode%,*} == ?:0:? && ! $menu ) && ${#TITLESET[*]} -eq 0 ]] && \
[[ ! $videonorm && step -gt 1 && ! ( $mpeg && ${encode%,*} = ?:0:? && ! $menu ) && ${#TITLESET[*]} -eq 0 ]] && \
echo "**ERROR: [$PROGNAME] you must specify a video norm (-n n|p|s)" && exit 1
#### libfaac check
if [[ ${encode%,*} == 8:?:? ]]; then
if [[ ${encode%,*} = 8:?:? ]]; then
! mencoder -oac help 2>/dev/null | grep -q faac && echo "**ERROR: [$PROGNAME] missing libfaac support in mencoder [-encode 8:m:i]" && exit 1
fi
#### mpeg4
@ -867,18 +867,18 @@ if [[ $vcodec = mpeg4 ]]; then
fi
#### pictsrc
if [[ $pictsrc ]]; then
[[ $slideaudio != /dev/null && ${encode%,*} == 0:?:? && $mpeg ]] && \
[[ $slideaudio != /dev/null && ${encode%,*} = 0:?:? && $mpeg ]] && \
echo "**ERROR: [$PROGNAME] -encode 0:m:i is not compatible with mf:// in MPEG Mode" && exit 1
[[ $audioonly ]] && echo "**ERROR: [$PROGNAME] -audioonly does not work with mf://" && exit 1
fi
#### -encode 1:m:i is not allowed
[[ ${encode%,*} == 1:?:? ]] && echo "**ERROR: [$PROGNAME] do not use -encode 1:m:i" && exit 1
[[ ${encode%,*} = 1:?:? ]] && echo "**ERROR: [$PROGNAME] do not use -encode 1:m:i" && exit 1
###############################################################################
#### WARN if some options conflict is detected
###############################################################################
#### missing toolame support
if [[ ${encode%,*} == 7:?:? ]]; then
if [[ ${encode%,*} = 7:?:? ]]; then
if ! mencoder -oac help 2>/dev/null | grep -q t[wo]olame ; then
encode=4:${encode#?:}
do_log "++ WARN: [$PROGNAME] missing toolame support in mencoder, setting -encode $encode"
@ -947,13 +947,13 @@ case $audioformat in
#### mplex fails with asr != 48000 for lpcm
lpcm) : ${asr:=48000} ${abr:=$((asr*16*${mpegchannels:-2}/1024))} ;;
esac
if [[ ${encode%,*} == 0:?:? && ${!audioformat} = copy ]]; then
if [[ ${encode%,*} = 0:?:? && ${!audioformat} = copy ]]; then
abr=0
if [[ ! $multiaudio ]]; then
get_abr
fi
fi
[[ $mpeg && ${encode%,*} == ?:0:? ]] && \
[[ $mpeg && ${encode%,*} = ?:0:? ]] && \
vbr=$(($(id_find ID_VIDEO_BITRATE "${MPLAYEROPT[@]}" ${dvddev:+-dvd-device "$dvddev"} "$@")/1000))
case $frameformat in
DVD) : ${asr:=48000} ;;
@ -1032,7 +1032,7 @@ if [[ $pictsrc ]]; then
mplayer "$slideaudio" $SRATE -vo null -vc dummy -ao "${PCMWAV[@]}" $afm ${mpegchannels:+-channels $mpegchannels -af channels=$mpegchannels}
MPLAYEROPT=( "${MPLAYEROPT[@]}" -fps 1/$(id_find ID_LENGTH "$output".wav) -audiofile "$output".wav )
else
if [[ $slideaudio == /dev/null ]]; then
if [[ $slideaudio = /dev/null ]]; then
MPLAYEROPT=( "${MPLAYEROPT[@]}" -fps $slidefps )
encode=0:${encode#?:}
else
@ -1144,7 +1144,7 @@ if [[ $encode ]]; then
MUX="-mpegopts "
if [[ $telecine ]]; then
if [[ $vcodec = mpeg2video || ! $vcodec && $frameformat != VCD ]]; then
if [[ $vfr == [12] ]]; then
if [[ $vfr = [12] ]]; then
[[ $videonorm = n ]] && MUX2=":telecine" || MUX2=":film2pal"
else
do_log "++ WARN: [$PROGNAME] telecine only works with 24000/1001 or 24 fps, disabling it"
@ -1504,7 +1504,7 @@ is_film2pal () {
#### libtoolame asr/abr
#### libmp3lame asr
#### no check is done on the other channel in case of multiaudio
if [[ $encode == [2-8]:?:? ]]; then
if [[ $encode = [2-8]:?:? ]]; then
if [[ $srate ]]; then
r=$srate
else
@ -1521,9 +1521,9 @@ if [[ $encode == [2-8]:?:? ]]; then
esac
fi
fi
if [[ $encode == [4-7]:?:? ]]; then
if [[ $encode = [4-7]:?:? ]]; then
check_mencoder_abr "$r" ${AUDIOPASS##*=}
elif [[ $encode == 8:?:? ]]; then
elif [[ $encode = 8:?:? ]]; then
case $r in
8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000) : ;;
*) echo "**ERROR: [$PROGNAME] libfaac does not support $r Hz sample rate" ; exit 1 ;;
@ -1536,12 +1536,12 @@ if [[ $encode == [2-8]:?:? ]]; then
fi
fi
#### copy of non-MPEG audio in a VCD
if [[ $step -gt 1 && $frameformat = VCD && $encode == 0:?:? && ( $mpeg || ${!audioformat} = copy ) && ! $testmca && ! $pictsrc ]]; then
if [[ $step -gt 1 && $frameformat = VCD && $encode = 0:?:? && ( $mpeg || ${!audioformat} = copy ) && ! $testmca && ! $pictsrc ]]; then
a=$(id_find ID_AUDIO_CODEC "${MPLAYERINFO[@]}")
[[ $a != mp3 ]] && echo "**ERROR: [$PROGNAME] you cannot copy $a audio in a $frameformat" && exit 1
fi
#### mpegchannels > 2 only with ac3 and aac
[[ $mpeg && ${mpegchannels:-2} -gt 2 && $encode == [2-57]:?:? ]] && CODEC=([2]=mp3 mp3 mp2 mp3 [7]=mp2) && \
[[ $mpeg && ${mpegchannels:-2} -gt 2 && $encode = [2-57]:?:? ]] && CODEC=([2]=mp3 mp3 mp2 mp3 [7]=mp2) && \
echo "**ERROR: [$PROGNAME] audio codec ${CODEC[${encode%%:*}]} selected with -encode $encode do not support more than 2 audio channels" && exit 1
###############################################################################
#### set cleanup
@ -1584,7 +1584,7 @@ if [[ $WARN ]]; then
fi
#### volume and audio copy
if [[ $volume ]]; then
[[ $encode == 0:?:? && ( ${!audioformat} = copy || $step -eq 1 || $mpeg ) || ${!audioformat} = copy && ! $encode ]] && \
[[ $encode = 0:?:? && ( ${!audioformat} = copy || $step -eq 1 || $mpeg ) || ${!audioformat} = copy && ! $encode ]] && \
do_log "++ WARN: [$PROGNAME] you cannot modify the volume of the output audio stream if you are making a copy the input audio stream"
fi
#### cpu and bframes
@ -1592,7 +1592,7 @@ if [[ $cpu && $bframes ]]; then
((bframes)) && do_log "++ WARN: [$PROGNAME] with bframes>0 the encoding will be faster with cpu=1"
fi
#### -usespeed
if [[ $usespeed && ( $encode == 0:?:? || $encode == ?:0:? ) ]]; then
if [[ $usespeed && ( $encode = 0:?:? || $encode = ?:0:? ) ]]; then
do_log "++ WARN: [$PROGNAME] -usespeed may not work if you do not encode both audio and video." && echo -n "Press return to proceed" && read
fi
#### total br
@ -1651,7 +1651,7 @@ if [[ $pictsrc ]]; then
h_res=${v_res%x*}
v_res=${v_res#*x}
fi
[[ $mpeg && ${encode%,*} == ?:0:? ]] && H_RES=$h_res && V_RES=$v_res
[[ $mpeg && ${encode%,*} = ?:0:? ]] && H_RES=$h_res && V_RES=$v_res
###############################################################################
#### put the volume in DB
@ -1666,7 +1666,7 @@ fi
###############################################################################
#### telecined (NTSC/PAL) MPEG copy/speed encoding change
###############################################################################
if [[ $mpeg && ( $encode == ?:0:? || $usespeed ) || $usespeed && ! $encode && $step -gt 1 ]]; then
if [[ $mpeg && ( $encode = ?:0:? || $usespeed ) || $usespeed && ! $encode && $step -gt 1 ]]; then
FPS=($(grep ID_VIDEO_FPS "$output".log | cut -f2 -d=) [1]=23.976 24.000 25.000 29.970 30.000 50.000 59.940 60.000)
for ((i=1;i<9;i++)); do
a=$(awk -v a=${FPS[0]} -v b=${FPS[i]} 'BEGIN{if (sqrt((a-b)*(a-b))<.02) print b}')
@ -1726,7 +1726,7 @@ fi
if [[ $mpegfixaspect && $step -gt 1 ]]; then
a=$(get_aspect "${MPLAYERINFO[@]}")
[[ ${a:0:9} = undefined ]] && a=$(awk -v a=$h_res -v b=$v_res 'BEGIN{printf("%f",a/b)}')
[[ $mpegaspect == 1 ]] && b=$(awk -v a=$H_RES -v b=$V_RES 'BEGIN{printf("%f",a/b)}') || b=${ASPECT[${mpegaspect:-2}]}
[[ $mpegaspect = 1 ]] && b=$(awk -v a=$H_RES -v b=$V_RES 'BEGIN{printf("%f",a/b)}') || b=${ASPECT[${mpegaspect:-2}]}
vfilter=$(awk -v a=$a -v A=$b -v W=$H_RES -v H=$V_RES -v crop=$mpegfixaspect -v i=${interlaced:-0} -v r=$rotate -v o=$overscan -v logfile="$(echo "$output" | sed 's/\\/\\\\/g')".log 'BEGIN{
ko=(1-o/100)
if(a==1.78||a==1.74)a=16/9
@ -1817,7 +1817,7 @@ IDACOD=$(grep "ID_AUDIO_CODEC" "$output".log | tail -1 | cut -f2 -d=)
[[ $IDACOD = hwdts ]] && echo "**ERROR: [$PROGNAME] dts audio support missing in MPlayer" && \
echo "**ERROR: add dts support (libdts-0.0.2.tar.gz) or select a non dts stream" && \
echo "**ERROR: example: -aid 128 (ac3), -aid 160 (lpcm), -aid 0 (mpeg)" && exit 1
[[ $mpeg && ! $pictsrc && ( $encode == 1:?:? || $multiaudio || $encode == 0:?:? && $IDACOD != mp3 && $IDACOD != a52 && $IDACOD != faad ) ]] && extra=1 || \
[[ $mpeg && ! $pictsrc && ( $encode = 1:?:? || $multiaudio || $encode = 0:?:? && $IDACOD != mp3 && $IDACOD != a52 && $IDACOD != faad ) ]] && extra=1 || \
extra=
[[ $extra ]] && do_log "**ERROR: [$PROGNAME] output stream: unsupported audio codec $IDACOD" && exit 1
@ -1857,7 +1857,7 @@ if [[ $encode ]]; then
PLOG=( -passlogfile "$output".avi2pass.log )
MSG=( -msglevel open=6:demuxer=6:demux=6 )
rm -f frameno.avi
[[ $encode == 0:?:? && ! $extra ]] && F= || F=$af
[[ $encode = 0:?:? && ! $extra ]] && F= || F=$af
if [[ $usesbr && ! $extra ]]; then
((DEBUG)) && debug_line $((LINENO+2)) "usesbr "
me_bit_log

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
#
# Version: 0.2.2
#
@ -92,7 +92,7 @@ VCDMODE=2
SVCDMODE=5
################################################################################
function usage() {
usage() {
echo "Usage: $HOWCALLED <basename> [$HOWCALLED options] [mplayer options]"
echo
echo " <basename> is used as basename of the resulting mpg/bin files."

View File

@ -8,7 +8,7 @@
# Licensed under GNU GPL.
if [ -z "$1" ]; then
echo "Usage: midentify <file> [<file> ...]"
echo "Usage: midentify.sh <file> [<file> ...]"
exit 1
fi

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# example how to output video on multiple windows in sync.
# might be even more useful in combination with vo ggi
# to distribute the video arbitrarily

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# Helper script to ease comparing the PSNR between two video files
# Copyleft 2005 by Matthias Wieser
# Copyleft 2005 by Ivo

View File

@ -43,7 +43,7 @@ RATIOY=3
OPTIONS="INPUTFILENAME TARGET ENCQ ABPS VBPS NORM SPLIT TOLERANCE OUTNAME"
function usage()
usage()
{
echo ""
echo "usage $MYNAME inputfile [options]"
@ -65,7 +65,7 @@ echo "http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-vcd-dvd.html"
echo ""
}
function test_needed()
test_needed()
{
for i in mencoder; do
@ -77,7 +77,7 @@ done
}
function test_sugested()
test_sugested()
{
for i in vcdimager cdrecord; do
@ -234,7 +234,7 @@ else
SUBTITLESTRING="$SUBFILENAME"
fi
if [ $SPLIT == "0" ]; then
if [ $SPLIT = "0" ]; then
CICLES=0
TIMESTRING=""
else

1
configure vendored
View File

@ -7538,6 +7538,7 @@ cat > $TMPC << EOF
int main(void) { return 0; }
EOF
if test "$cc_vendor" = "gnu" ; then
cc_check -std=gnu99 && CFLAGS="-std=gnu99 $CFLAGS"
cc_check -Wno-pointer-sign && CFLAGS="-Wno-pointer-sign $CFLAGS"
cc_check -Wdisabled-optimization && CFLAGS="-Wdisabled-optimization $CFLAGS"
fi

View File

@ -2912,6 +2912,13 @@ audiocodec ffape
driver ffmpeg
dll "ape"
audiocodec ffmlp
info "FFmpeg MLP decoder"
status working
fourcc "MLP " ; internal MPlayer FourCC
driver ffmpeg
dll "mlp"
audiocodec ffnellymoser
info "FFmpeg Nellymoser Audio decoder"
status working

View File

@ -50,7 +50,7 @@
extern unsigned int GetTimerMS( void );
inline void TranslateFilename( int c,char * tmp,size_t tmplen )
static inline void TranslateFilename( int c,char * tmp,size_t tmplen )
{
int i;
char * p;

View File

@ -29,7 +29,6 @@
#include "gui/bitmap.h"
#include "gui/wm/ws.h"
extern inline void TranslateFilename( int c,char * tmp );
extern char * Translate( char * str );
extern void PutImage( txSample * bf,int x,int y,int max,int ofs );
extern void SimplePotmeterPutImage( txSample * bf,int x,int y,float frac );

View File

@ -679,11 +679,11 @@ static void reset_render_context(void);
* \param pwr multiplier for some tag effects (comes from \t tags)
*/
static char* parse_tag(char* p, double pwr) {
#define skip_all(x) if (*p == (x)) ++p; else { \
while ((*p != (x)) && (*p != '}') && (*p != 0)) {++p;} }
#define skip_to(x) while ((*p != (x)) && (*p != '}') && (*p != 0)) { ++p;}
#define skip(x) if (*p == (x)) ++p; else { return p; }
skip_all('\\');
skip_to('\\');
skip('\\');
if ((*p == '}') || (*p == 0))
return p;
@ -787,7 +787,7 @@ static char* parse_tag(char* p, double pwr) {
} else if (mystrcmp(&p, "fn")) {
char* start = p;
char* family;
skip_all('\\');
skip_to('\\');
if (p > start) {
family = malloc(p - start + 1);
strncpy(family, start, p - start);
@ -928,7 +928,8 @@ static char* parse_tag(char* p, double pwr) {
}
while (*p == '\\')
p = parse_tag(p, k); // maybe k*pwr ? no, specs forbid nested \t's
skip_all(')'); // FIXME: better skip(')'), but much more tags support required
skip_to(')'); // in case there is some unknown tag or a comment
skip(')');
} else if (mystrcmp(&p, "clip")) {
int x0, y0, x1, y1;
int res = 1;
@ -1031,7 +1032,7 @@ static char* parse_tag(char* p, double pwr) {
return p;
#undef skip
#undef skip_all
#undef skip_to
}
/**

View File

@ -32,6 +32,7 @@ static const AVCodecTag mp_wav_tags[] = {
{ CODEC_ID_COOK, MKTAG('c', 'o', 'o', 'k')},
{ CODEC_ID_DSICINAUDIO, MKTAG('D', 'C', 'I', 'A')},
{ CODEC_ID_INTERPLAY_DPCM, MKTAG('I', 'N', 'P', 'A')},
{ CODEC_ID_MLP, MKTAG('M', 'L', 'P', ' ')},
{ CODEC_ID_MUSEPACK7, MKTAG('M', 'P', 'C', ' ')},
{ CODEC_ID_MUSEPACK8, MKTAG('M', 'P', 'C', '8')},
{ CODEC_ID_NELLYMOSER, MKTAG('N', 'E', 'L', 'L')},

View File

@ -58,7 +58,7 @@ send_mpeg_pes_packet_ll(unsigned char *data, int len, int id, uint64_t pts,
unsigned char pes_header[PES_MAX_SIZE];
mp_msg (MSGT_HEADER, MSGL_DBG2,
"MPEG%d PES packet: 0x%x => %lu \n", type, id, pts);
"MPEG%d PES packet: 0x%x => %"PRIu64" \n", type, id, pts);
memset (pes_header, '\0', PES_MAX_SIZE);
/* startcode */

View File

@ -1,4 +1,21 @@
/* nuppelvideo.h rh */
/*
nuppelvideo.h taken from NuppelVideo, by
(c) Roman Hochleitner roman@mars.tuwien.ac.at
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef MPLAYER_NUPPELVIDEO_H
#define MPLAYER_NUPPELVIDEO_H

View File

@ -88,12 +88,6 @@ untested special converters
#define RET 0xC3 //near return opcode for X86
#ifdef MP_DEBUG
#define ASSERT(x) assert(x);
#else
#define ASSERT(x) ;
#endif
#ifdef M_PI
#define PI M_PI
#else
@ -1060,7 +1054,7 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
else if (flags&SWS_BILINEAR) sizeFactor= 2.0;
else {
sizeFactor= 0.0; //GCC warning killer
ASSERT(0)
assert(0);
}
if (xInc1 <= 1.0) filterSizeInSrc= sizeFactor; // upscale
@ -1145,7 +1139,7 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
}
else {
coeff= 0.0; //GCC warning killer
ASSERT(0)
assert(0);
}
filter[i*filterSize + j]= coeff;
@ -1158,11 +1152,11 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
/* apply src & dst Filter to filter -> filter2
av_free(filter);
*/
ASSERT(filterSize>0)
assert(filterSize>0);
filter2Size= filterSize;
if (srcFilter) filter2Size+= srcFilter->length - 1;
if (dstFilter) filter2Size+= dstFilter->length - 1;
ASSERT(filter2Size>0)
assert(filter2Size>0);
filter2= av_malloc(filter2Size*dstW*sizeof(double));
for (i=0; i<dstW; i++)
@ -1177,7 +1171,7 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
if (srcFilter) outVec= sws_getConvVec(srcFilter, &scaleFilter);
else outVec= &scaleFilter;
ASSERT(outVec->length == filter2Size)
assert(outVec->length == filter2Size);
//FIXME dstFilter
for (j=0; j<outVec->length; j++)
@ -1252,9 +1246,9 @@ static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outF
filterAlign= 1;
}
ASSERT(minFilterSize > 0)
assert(minFilterSize > 0);
filterSize= (minFilterSize +(filterAlign-1)) & (~(filterAlign-1));
ASSERT(filterSize > 0)
assert(filterSize > 0);
filter= av_malloc(filterSize*dstW*sizeof(double));
if (filterSize >= MAX_FILTER_SIZE)
return -1;
@ -1731,62 +1725,62 @@ static int yvu9toyv12Wrapper(SwsContext *c, uint8_t* src[], int srcStride[], int
}
/* unscaled copy like stuff (assumes nearly identical formats) */
static int simpleCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
int srcSliceH, uint8_t* dst[], int dstStride[]){
if (isPacked(c->srcFormat))
static int packedCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
int srcSliceH, uint8_t* dst[], int dstStride[])
{
if (dstStride[0]==srcStride[0] && srcStride[0] > 0)
memcpy(dst[0] + dstStride[0]*srcSliceY, src[0], srcSliceH*dstStride[0]);
else
{
if (dstStride[0]==srcStride[0] && srcStride[0] > 0)
memcpy(dst[0] + dstStride[0]*srcSliceY, src[0], srcSliceH*dstStride[0]);
else
int i;
uint8_t *srcPtr= src[0];
uint8_t *dstPtr= dst[0] + dstStride[0]*srcSliceY;
int length=0;
/* universal length finder */
while(length+c->srcW <= FFABS(dstStride[0])
&& length+c->srcW <= FFABS(srcStride[0])) length+= c->srcW;
assert(length!=0);
for (i=0; i<srcSliceH; i++)
{
int i;
uint8_t *srcPtr= src[0];
uint8_t *dstPtr= dst[0] + dstStride[0]*srcSliceY;
int length=0;
/* universal length finder */
while(length+c->srcW <= FFABS(dstStride[0])
&& length+c->srcW <= FFABS(srcStride[0])) length+= c->srcW;
ASSERT(length!=0);
for (i=0; i<srcSliceH; i++)
{
memcpy(dstPtr, srcPtr, length);
srcPtr+= srcStride[0];
dstPtr+= dstStride[0];
}
memcpy(dstPtr, srcPtr, length);
srcPtr+= srcStride[0];
dstPtr+= dstStride[0];
}
}
else
{ /* Planar YUV or gray */
int plane;
for (plane=0; plane<3; plane++)
{
int length= plane==0 ? c->srcW : -((-c->srcW )>>c->chrDstHSubSample);
int y= plane==0 ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample);
int height= plane==0 ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
return srcSliceH;
}
if ((isGray(c->srcFormat) || isGray(c->dstFormat)) && plane>0)
{
if (!isGray(c->dstFormat))
memset(dst[plane], 128, dstStride[plane]*height);
}
static int planarCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
int srcSliceH, uint8_t* dst[], int dstStride[])
{
int plane;
for (plane=0; plane<3; plane++)
{
int length= plane==0 ? c->srcW : -((-c->srcW )>>c->chrDstHSubSample);
int y= plane==0 ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample);
int height= plane==0 ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
if ((isGray(c->srcFormat) || isGray(c->dstFormat)) && plane>0)
{
if (!isGray(c->dstFormat))
memset(dst[plane], 128, dstStride[plane]*height);
}
else
{
if (dstStride[plane]==srcStride[plane] && srcStride[plane] > 0)
memcpy(dst[plane] + dstStride[plane]*y, src[plane], height*dstStride[plane]);
else
{
if (dstStride[plane]==srcStride[plane] && srcStride[plane] > 0)
memcpy(dst[plane] + dstStride[plane]*y, src[plane], height*dstStride[plane]);
else
int i;
uint8_t *srcPtr= src[plane];
uint8_t *dstPtr= dst[plane] + dstStride[plane]*y;
for (i=0; i<height; i++)
{
int i;
uint8_t *srcPtr= src[plane];
uint8_t *dstPtr= dst[plane] + dstStride[plane]*y;
for (i=0; i<height; i++)
{
memcpy(dstPtr, srcPtr, length);
srcPtr+= srcStride[plane];
dstPtr+= dstStride[plane];
}
memcpy(dstPtr, srcPtr, length);
srcPtr+= srcStride[plane];
dstPtr+= dstStride[plane];
}
}
}
@ -2208,7 +2202,10 @@ SwsContext *sws_getContext(int srcW, int srcH, int srcFormat, int dstW, int dstH
|| (isPlanarYUV(srcFormat) && isGray(dstFormat))
|| (isPlanarYUV(dstFormat) && isGray(srcFormat)))
{
c->swScale= simpleCopy;
if (isPacked(c->srcFormat))
c->swScale= packedCopy;
else /* Planar YUV or gray */
c->swScale= planarCopy;
}
/* gray16{le,be} conversions */
@ -2385,7 +2382,7 @@ SwsContext *sws_getContext(int srcW, int srcH, int srcFormat, int dstW, int dstH
assert(2*VOFW == VOF);
ASSERT(c->chrDstH <= dstH)
assert(c->chrDstH <= dstH);
if (flags&SWS_PRINT_INFO)
{

View File

@ -3039,8 +3039,8 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
if (firstLumSrcY > lastInLumBuf) lastInLumBuf= firstLumSrcY-1;
if (firstChrSrcY > lastInChrBuf) lastInChrBuf= firstChrSrcY-1;
//printf("%d %d %d\n", firstChrSrcY, lastInChrBuf, vChrBufSize);
ASSERT(firstLumSrcY >= lastInLumBuf - vLumBufSize + 1)
ASSERT(firstChrSrcY >= lastInChrBuf - vChrBufSize + 1)
assert(firstLumSrcY >= lastInLumBuf - vLumBufSize + 1);
assert(firstChrSrcY >= lastInChrBuf - vChrBufSize + 1);
// Do we have enough lines in this slice to output the dstY line
if (lastLumSrcY < srcSliceY + srcSliceH && lastChrSrcY < -((-srcSliceY - srcSliceH)>>c->chrSrcVSubSample))
@ -3051,9 +3051,9 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
uint8_t *s= src[0]+(lastInLumBuf + 1 - srcSliceY)*srcStride[0];
lumBufIndex++;
//printf("%d %d %d %d\n", lumBufIndex, vLumBufSize, lastInLumBuf, lastLumSrcY);
ASSERT(lumBufIndex < 2*vLumBufSize)
ASSERT(lastInLumBuf + 1 - srcSliceY < srcSliceH)
ASSERT(lastInLumBuf + 1 - srcSliceY >= 0)
assert(lumBufIndex < 2*vLumBufSize);
assert(lastInLumBuf + 1 - srcSliceY < srcSliceH);
assert(lastInLumBuf + 1 - srcSliceY >= 0);
//printf("%d %d\n", lumBufIndex, vLumBufSize);
RENAME(hyscale)(lumPixBuf[ lumBufIndex ], dstW, s, srcW, lumXInc,
flags, canMMX2BeUsed, hLumFilter, hLumFilterPos, hLumFilterSize,
@ -3066,9 +3066,9 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
uint8_t *src1= src[1]+(lastInChrBuf + 1 - chrSrcSliceY)*srcStride[1];
uint8_t *src2= src[2]+(lastInChrBuf + 1 - chrSrcSliceY)*srcStride[2];
chrBufIndex++;
ASSERT(chrBufIndex < 2*vChrBufSize)
ASSERT(lastInChrBuf + 1 - chrSrcSliceY < (chrSrcSliceH))
ASSERT(lastInChrBuf + 1 - chrSrcSliceY >= 0)
assert(chrBufIndex < 2*vChrBufSize);
assert(lastInChrBuf + 1 - chrSrcSliceY < (chrSrcSliceH));
assert(lastInChrBuf + 1 - chrSrcSliceY >= 0);
//FIXME replace parameters through context struct (some at least)
if (!(isGray(srcFormat) || isGray(dstFormat)))
@ -3094,9 +3094,9 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
{
uint8_t *s= src[0]+(lastInLumBuf + 1 - srcSliceY)*srcStride[0];
lumBufIndex++;
ASSERT(lumBufIndex < 2*vLumBufSize)
ASSERT(lastInLumBuf + 1 - srcSliceY < srcSliceH)
ASSERT(lastInLumBuf + 1 - srcSliceY >= 0)
assert(lumBufIndex < 2*vLumBufSize);
assert(lastInLumBuf + 1 - srcSliceY < srcSliceH);
assert(lastInLumBuf + 1 - srcSliceY >= 0);
RENAME(hyscale)(lumPixBuf[ lumBufIndex ], dstW, s, srcW, lumXInc,
flags, canMMX2BeUsed, hLumFilter, hLumFilterPos, hLumFilterSize,
funnyYCode, c->srcFormat, formatConvBuffer,
@ -3108,9 +3108,9 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
uint8_t *src1= src[1]+(lastInChrBuf + 1 - chrSrcSliceY)*srcStride[1];
uint8_t *src2= src[2]+(lastInChrBuf + 1 - chrSrcSliceY)*srcStride[2];
chrBufIndex++;
ASSERT(chrBufIndex < 2*vChrBufSize)
ASSERT(lastInChrBuf + 1 - chrSrcSliceY < chrSrcSliceH)
ASSERT(lastInChrBuf + 1 - chrSrcSliceY >= 0)
assert(chrBufIndex < 2*vChrBufSize);
assert(lastInChrBuf + 1 - chrSrcSliceY < chrSrcSliceH);
assert(lastInChrBuf + 1 - chrSrcSliceY >= 0);
if (!(isGray(srcFormat) || isGray(dstFormat)))
RENAME(hcscale)(chrPixBuf[ chrBufIndex ], chrDstW, src1, src2, chrSrcW, chrXInc,
@ -3199,8 +3199,8 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
}
else
{
ASSERT(lumSrcPtr + vLumFilterSize - 1 < lumPixBuf + vLumBufSize*2);
ASSERT(chrSrcPtr + vChrFilterSize - 1 < chrPixBuf + vChrBufSize*2);
assert(lumSrcPtr + vLumFilterSize - 1 < lumPixBuf + vLumBufSize*2);
assert(chrSrcPtr + vChrFilterSize - 1 < chrPixBuf + vChrBufSize*2);
if (vLumFilterSize == 1 && vChrFilterSize == 2) //unscaled RGB
{
int chrAlpha= vChrFilter[2*dstY+1];
@ -3250,8 +3250,8 @@ static int RENAME(swScale)(SwsContext *c, uint8_t* src[], int srcStride[], int s
}
else
{
ASSERT(lumSrcPtr + vLumFilterSize - 1 < lumPixBuf + vLumBufSize*2);
ASSERT(chrSrcPtr + vChrFilterSize - 1 < chrPixBuf + vChrBufSize*2);
assert(lumSrcPtr + vLumFilterSize - 1 < lumPixBuf + vLumBufSize*2);
assert(chrSrcPtr + vChrFilterSize - 1 < chrPixBuf + vChrBufSize*2);
yuv2packedXinC(c,
vLumFilter+dstY*vLumFilterSize, lumSrcPtr, vLumFilterSize,
vChrFilter+dstY*vChrFilterSize, chrSrcPtr, vChrFilterSize,

View File

@ -688,14 +688,17 @@ static uint32_t get_image(mp_image_t *mpi) {
return VO_FALSE;
}
if (mpi->flags & MP_IMGFLAG_READABLE) return VO_FALSE;
if (!gl_buffer)
GenBuffers(1, &gl_buffer);
BindBuffer(GL_PIXEL_UNPACK_BUFFER, gl_buffer);
if (ati_hack) {
int s = 1;
// for unexplainable reasons, with width < 512 chroma tends to be messed up
// (after ca. 2/3 the previous line repeats all over)
if (mpi->width < 512) return VO_FALSE;
while (s < mpi->width) s *= 2;
mpi->width = s;
}
if (!gl_buffer)
GenBuffers(1, &gl_buffer);
BindBuffer(GL_PIXEL_UNPACK_BUFFER, gl_buffer);
mpi->stride[0] = mpi->width * mpi->bpp / 8;
if (mpi->stride[0] * mpi->height > gl_buffersize) {
BufferData(GL_PIXEL_UNPACK_BUFFER, mpi->stride[0] * mpi->height,

View File

@ -230,7 +230,7 @@ popd
rm -rf $RPM_BUILD_ROOT doc
make install DESTDIR=$RPM_BUILD_ROOT STRIPBINARIES=no
install -pm 755 TOOLS/midentify $RPM_BUILD_ROOT%{_bindir}/
install -pm 755 TOOLS/midentify.sh $RPM_BUILD_ROOT%{_bindir}/
# Clean up documentation
mkdir doc
@ -291,7 +291,7 @@ rm -rf $RPM_BUILD_ROOT
%config(noreplace) %{_sysconfdir}/mplayer/mplayer.conf
%config(noreplace) %{_sysconfdir}/mplayer/input.conf
%config(noreplace) %{_sysconfdir}/mplayer/menu.conf
%{_bindir}/midentify
%{_bindir}/midentify.sh
%{_bindir}/mplayer
%dir %{codecsdir}/
%dir %{_datadir}/mplayer/

View File

@ -124,9 +124,18 @@ cd_info_debug(cd_info_t *cd_info) {
mp_msg(MSGT_DEMUX, MSGL_INFO, " genre=[%s]\n", cd_info->genre);
mp_msg(MSGT_DEMUX, MSGL_INFO, " nb_tracks=%d\n", cd_info->nb_tracks);
mp_msg(MSGT_DEMUX, MSGL_INFO, " length= %2d:%02d.%02d\n", cd_info->min, cd_info->sec, cd_info->msec);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_ARTIST=%s\n", cd_info->artist);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_ALBUM=%s\n", cd_info->album);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_GENRE=%s\n", cd_info->genre);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_LENGTH_MSF=%02d:%02d.%02d\n", cd_info->min, cd_info->sec, cd_info->msec);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_TRACKS=%d\n", cd_info->nb_tracks);
current_track = cd_info->first;
while( current_track!=NULL ) {
mp_msg(MSGT_DEMUX, MSGL_INFO, " #%2d %2d:%02d.%02d @ %7ld\t[%s] \n", current_track->track_nb, current_track->min, current_track->sec, current_track->msec, current_track->frame_begin, current_track->name);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_TRACK_%d_NAME=%s\n", current_track->track_nb, current_track->name);
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_INFO_TRACK_%d_MSF=%02d:%02d.%02d\n", current_track->track_nb, current_track->min, current_track->sec, current_track->msec);
current_track = current_track->next;
}
mp_msg(MSGT_DEMUX, MSGL_INFO, "================ CD INFO === end =========\n");

View File

@ -41,6 +41,7 @@
#include <time.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <inttypes.h>
#ifdef HAVE_WINSOCK2
#include <winsock2.h>

View File

@ -379,8 +379,10 @@ void stream_reset(stream_t *s){
int stream_control(stream_t *s, int cmd, void *arg){
if(!s->control) return STREAM_UNSUPPORTED;
#ifdef USE_STREAM_CACHE
if (s->cache_pid)
return cache_do_control(s, cmd, arg);
#endif
return s->control(s, cmd, arg);
}

View File

@ -719,6 +719,8 @@ cddb_resolve(const char *dev, char **xmcd_file) {
cddb_data.disc_id = cddb_discid(cddb_data.tracks);
cddb_data.anonymous = 1; // Don't send user info by default
mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_CDDB_DISCID=%08lx\n", cddb_data.disc_id);
// Check if there is a CD in the drive
// FIXME: That's not really a good way to check
if( cddb_data.disc_id==0 ) {

View File

@ -790,7 +790,7 @@ static int open_s(stream_t *stream,int mode, void* opts, int* file_format) {
else if(dvd_device)
dvd_device_current = dvd_device;
else
dvd_device_current = strdup(DEFAULT_DVD_DEVICE);
dvd_device_current = DEFAULT_DVD_DEVICE;
dvd_set_speed(dvd_device_current, dvd_speed);
#if defined(__APPLE__) || defined(__DARWIN__)
/* Dynamic DVD drive selection on Darwin */