mirror of
https://github.com/mpv-player/mpv
synced 2025-03-24 20:31:37 +00:00
Merge svn changes up to r26979
Most of the conflicts are trivial. Conflicts: Makefile cfg-mplayer.h input/input.c libmenu/vf_menu.c libmpcodecs/dec_video.c libmpcodecs/vf_expand.c libmpcodecs/vf_vo.c libmpdemux/demux_mkv.c libmpdemux/demuxer.c libmpdemux/demuxer.h libvo/vo_directfb2.c libvo/vo_gl.c libvo/vo_winvidix.c libvo/vo_xv.c libvo/vo_xvidix.c libvo/vo_xvmc.c libvo/x11_common.c mplayer.c osdep/timer-linux.c stream/cache2.c
This commit is contained in:
commit
d5c868325c
7
AUTHORS
7
AUTHORS
@ -335,7 +335,7 @@ Gritsenko, Andriy N. (AG_LS) <andrej@lucky.net>
|
|||||||
Guyomarch, Rémi (rguyom) <rguyom@pobox.com>
|
Guyomarch, Rémi (rguyom) <rguyom@pobox.com>
|
||||||
* various fixes
|
* various fixes
|
||||||
* unsharp video filter
|
* unsharp video filter
|
||||||
* XviD encoding support
|
* Xvid encoding support
|
||||||
|
|
||||||
Hall, Julian <jules@meridiandigital.co.uk>
|
Hall, Julian <jules@meridiandigital.co.uk>
|
||||||
* black frame detection filter (vf_blackframe)
|
* black frame detection filter (vf_blackframe)
|
||||||
@ -642,7 +642,7 @@ Poettering, Lennart <mzzcynlre@0pointer.de>
|
|||||||
|
|
||||||
Poirier, Guillaume (poirierg) <poirierg@gmail.com>
|
Poirier, Guillaume (poirierg) <poirierg@gmail.com>
|
||||||
* French documentation translation and synchronization
|
* French documentation translation and synchronization
|
||||||
* XviD documentation
|
* Xvid documentation
|
||||||
* libavcodec turbo mode
|
* libavcodec turbo mode
|
||||||
* lots of updates of MEncoder's documentation
|
* lots of updates of MEncoder's documentation
|
||||||
* code fixes to support GCC-4.0
|
* code fixes to support GCC-4.0
|
||||||
@ -751,7 +751,7 @@ Svoboda, Jiří (zar) <Jiri.Svoboda@seznam.cz>
|
|||||||
|
|
||||||
Swain, Robert <robert.swain@gmail.com>
|
Swain, Robert <robert.swain@gmail.com>
|
||||||
* CQM support and turbo multipass mode in x264 interface
|
* CQM support and turbo multipass mode in x264 interface
|
||||||
* Profile support in XviD interface
|
* Profile support in Xvid interface
|
||||||
|
|
||||||
Syrjälä, Ville <syrjala@sci.fi>
|
Syrjälä, Ville <syrjala@sci.fi>
|
||||||
* -vo dfbmga driver (G400 DVDMax-like feature using dfb 0.9.14)
|
* -vo dfbmga driver (G400 DVDMax-like feature using dfb 0.9.14)
|
||||||
@ -846,6 +846,7 @@ Zores, Benjamin (ben) <ben@geexbox.org>
|
|||||||
* IVTV h/w MPEG decoder ao/vo driver.
|
* IVTV h/w MPEG decoder ao/vo driver.
|
||||||
* split of stream layer from libmpdemux to stream.
|
* split of stream layer from libmpdemux to stream.
|
||||||
* VIDIX core and drivers.
|
* VIDIX core and drivers.
|
||||||
|
* Linux AppleIR remote support.
|
||||||
|
|
||||||
________________
|
________________
|
||||||
The codecs, libs
|
The codecs, libs
|
||||||
|
@ -46,6 +46,7 @@ MPlayer (1.0)
|
|||||||
common API
|
common API
|
||||||
* grayscale decoding/encoding with FFmpeg disabled where it slowed down
|
* grayscale decoding/encoding with FFmpeg disabled where it slowed down
|
||||||
the color case
|
the color case
|
||||||
|
* Linux AppleIR remote support.
|
||||||
|
|
||||||
Ports:
|
Ports:
|
||||||
* small crash with vo_macosx fixed
|
* small crash with vo_macosx fixed
|
||||||
|
@ -150,3 +150,12 @@ Directory: libmpdemux/yuv4mpeg*
|
|||||||
Copyright: 2001 Matthew J. Marjanovic <maddog@mir.com>
|
Copyright: 2001 Matthew J. Marjanovic <maddog@mir.com>
|
||||||
2001 Andrew Stevens <andrew.stevens@philips.com>
|
2001 Andrew Stevens <andrew.stevens@philips.com>
|
||||||
License: GNU General Public License
|
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/
|
||||||
|
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
|
||||||
|
@ -232,6 +232,8 @@ Pressing once will pause movie, every consecutive press will play one frame
|
|||||||
and then go into pause mode again (any other key unpauses).
|
and then go into pause mode again (any other key unpauses).
|
||||||
.IPs "q / ESC"
|
.IPs "q / ESC"
|
||||||
Stop playing and quit.
|
Stop playing and quit.
|
||||||
|
.IPs "U\ \ \ \ "
|
||||||
|
Stop playing (and quit if \-idle is not used).
|
||||||
.IPs "+ and \-"
|
.IPs "+ and \-"
|
||||||
Adjust audio delay by +/\- 0.1 seconds.
|
Adjust audio delay by +/\- 0.1 seconds.
|
||||||
.IPs "/ and *"
|
.IPs "/ and *"
|
||||||
@ -823,7 +825,7 @@ xover, xv (see \-vo xv:ck), xvmc (see \-vo xv:ck) and directx video output
|
|||||||
drivers.
|
drivers.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B \-correct\-pts (experimental)
|
.B \-correct\-pts (EXPERIMENTAL)
|
||||||
Switches MPlayer to an experimental mode where timestamps for video frames
|
Switches MPlayer to an experimental mode where timestamps for video frames
|
||||||
are calculated differently and video filters which add new frames or
|
are calculated differently and video filters which add new frames or
|
||||||
modify timestamps of existing ones are supported.
|
modify timestamps of existing ones are supported.
|
||||||
@ -903,14 +905,14 @@ to ensure it does not cause security problems (e.g.\& make sure to use full
|
|||||||
paths if "." is in your path like on Windows).
|
paths if "." is in your path like on Windows).
|
||||||
.sp 1
|
.sp 1
|
||||||
This can be "misused" to disable screensavers that do not support the proper
|
This can be "misused" to disable screensavers that do not support the proper
|
||||||
X API for this.
|
X API.
|
||||||
If you think this is too complicated ask the author of the screensaver program
|
If you think this is too complicated, ask the author of the screensaver
|
||||||
to support the proper X APIs for this.
|
program to support the proper X APIs.
|
||||||
.sp 1
|
.sp 1
|
||||||
.I EXAMPLE for xscreensaver:
|
.I EXAMPLE for xscreensaver:
|
||||||
mplayer \-heartbeat\-cmd "xscreensaver\-command \-deactivate" file
|
mplayer \-heartbeat\-cmd "xscreensaver\-command \-deactivate" file
|
||||||
.sp 1
|
.sp 1
|
||||||
.I EXAMPLE for gnome screensaver:
|
.I EXAMPLE for GNOME screensaver:
|
||||||
mplayer \-heartbeat\-cmd "gnome\-screensaver\-command \-p" file
|
mplayer \-heartbeat\-cmd "gnome\-screensaver\-command \-p" file
|
||||||
.RE
|
.RE
|
||||||
.PD 1
|
.PD 1
|
||||||
@ -950,6 +952,8 @@ Available commands are:
|
|||||||
Specify input configuration file other than the default
|
Specify input configuration file other than the default
|
||||||
~/\:.mplayer/\:input.conf.
|
~/\:.mplayer/\:input.conf.
|
||||||
~/\:.mplayer/\:<filename> is assumed if no full path is given.
|
~/\:.mplayer/\:<filename> is assumed if no full path is given.
|
||||||
|
.IPs ar-dev=<device>
|
||||||
|
Device to be used for Apple IR Remote (default is autodetected, Linux only).
|
||||||
.IPs ar-delay
|
.IPs ar-delay
|
||||||
Delay in milliseconds before we start to autorepeat a key (0 to disable).
|
Delay in milliseconds before we start to autorepeat a key (0 to disable).
|
||||||
.IPs ar-rate
|
.IPs ar-rate
|
||||||
@ -1052,6 +1056,10 @@ Turns off joystick support.
|
|||||||
Turns off LIRC support.
|
Turns off LIRC support.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B \-noar
|
||||||
|
Turns off AppleIR remote support.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B \-nomouseinput
|
.B \-nomouseinput
|
||||||
Disable mouse button press/\:release input (mozplayerxp's context menu relies
|
Disable mouse button press/\:release input (mozplayerxp's context menu relies
|
||||||
on this option).
|
on this option).
|
||||||
@ -3594,16 +3602,25 @@ the maximum texture size of your OpenGL implementation.
|
|||||||
Intended to work even with the most basic OpenGL implementations,
|
Intended to work even with the most basic OpenGL implementations,
|
||||||
but also makes use of newer extensions, which allow support for more
|
but also makes use of newer extensions, which allow support for more
|
||||||
colorspaces and direct rendering.
|
colorspaces and direct rendering.
|
||||||
Please use \-dr if it works with your OpenGL implementation,
|
For optimal speed try something similar to
|
||||||
since for higher resolutions this provides a
|
.br
|
||||||
.B big
|
\-vo gl:yuv=2:force\-pbo:ati\-hack \-dr \-noslices
|
||||||
speedup.
|
.br
|
||||||
The code performs very few checks, so if a feature does not work, this
|
The code performs very few checks, so if a feature does not work, this
|
||||||
might be because it is not supported by your card/OpenGL implementation
|
might be because it is not supported by your card/OpenGL implementation
|
||||||
even if you do not get any error message.
|
even if you do not get any error message.
|
||||||
Use glxinfo or a similar tool to display the supported OpenGL extensions.
|
Use glxinfo or a similar tool to display the supported OpenGL extensions.
|
||||||
.PD 0
|
.PD 0
|
||||||
.RSs
|
.RSs
|
||||||
|
.IPs (no)ati\-hack
|
||||||
|
ATI drivers may give a corrupted image when PBOs are used (when using \-dr
|
||||||
|
or force\-pbo).
|
||||||
|
This option fixes this, at the expense of using a bit more memory.
|
||||||
|
.IPs (no)force\-pbo
|
||||||
|
Always uses PBOs to transfer textures even if this involves an extra copy.
|
||||||
|
Currently this gives a little extra speed with NVidia drivers and a lot more
|
||||||
|
speed with ATI drivers.
|
||||||
|
May need \-noslices and the ati\-hack suboption to work correctly.
|
||||||
.IPs (no)scaled-osd
|
.IPs (no)scaled-osd
|
||||||
Changes the way the OSD behaves when the size of the
|
Changes the way the OSD behaves when the size of the
|
||||||
window changes (default: disabled).
|
window changes (default: disabled).
|
||||||
@ -5362,7 +5379,7 @@ Scales pitch without altering tempo.
|
|||||||
Add \'[ speed_mult 0.9438743126816935\' and \'] speed_mult 1.059463094352953\'
|
Add \'[ speed_mult 0.9438743126816935\' and \'] speed_mult 1.059463094352953\'
|
||||||
to your input.conf to step by musical semi-tones.
|
to your input.conf to step by musical semi-tones.
|
||||||
.I WARNING:
|
.I WARNING:
|
||||||
Looses synch with video.
|
Loses sync with video.
|
||||||
.IPs both
|
.IPs both
|
||||||
Scale both tempo and pitch
|
Scale both tempo and pitch
|
||||||
.IPs none
|
.IPs none
|
||||||
@ -10120,6 +10137,27 @@ Use a different quantizer for chroma as compared to luma.
|
|||||||
Useful values are in the range <\-2\-2> (default: 0).
|
Useful values are in the range <\-2\-2> (default: 0).
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B aq_mode=<0\-2>
|
||||||
|
Defines how adaptive quantization (AQ) distributes bits:
|
||||||
|
.PD 0
|
||||||
|
.RSs
|
||||||
|
.IPs 0
|
||||||
|
disabled
|
||||||
|
.IPs 1
|
||||||
|
Avoid moving bits between frames.
|
||||||
|
.IPs 2
|
||||||
|
Move bits between frames (by default).
|
||||||
|
.RE
|
||||||
|
.PD 1
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B aq_strength=<positive float value>
|
||||||
|
Controls how much adaptive quantization (AQ) reduces blocking and blurring
|
||||||
|
in flat and textured areas (default: 1.0).
|
||||||
|
A value of 0.5 will lead to weak AQ and less details, when a value of 1.5
|
||||||
|
will lead to strong AQ and more details.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B cqm=<flat|jvt|<filename>>
|
.B cqm=<flat|jvt|<filename>>
|
||||||
Either uses a predefined custom quantization matrix or loads a JM format
|
Either uses a predefined custom quantization matrix or loads a JM format
|
||||||
matrix file.
|
matrix file.
|
||||||
|
@ -246,6 +246,8 @@ juste une trame et remettra le film en pause (toute autre touche arr
|
|||||||
pause).
|
pause).
|
||||||
.IPs "q / ESC"
|
.IPs "q / ESC"
|
||||||
Stoppe la lecture et quitte.
|
Stoppe la lecture et quitte.
|
||||||
|
.IPs "U\ \ \ \ "
|
||||||
|
Stoppe la lecture (et quitte si \-idle n'est pas utilisé).
|
||||||
.IPs "+ et \-"
|
.IPs "+ et \-"
|
||||||
Ajuste le décalage audio de +/\- 0.1 secondes.
|
Ajuste le décalage audio de +/\- 0.1 secondes.
|
||||||
.IPs "/ et *"
|
.IPs "/ et *"
|
||||||
@ -998,6 +1000,9 @@ D
|
|||||||
lieu de ~/\:.mplayer/\:input.conf par défaut.
|
lieu de ~/\:.mplayer/\:input.conf par défaut.
|
||||||
Si vous ne donnez pas le chemin absolu, il sera cherché à
|
Si vous ne donnez pas le chemin absolu, il sera cherché à
|
||||||
~/\:.mplayer/\:<nom_fichier>.
|
~/\:.mplayer/\:<nom_fichier>.
|
||||||
|
.IPs ar-dev=<peripherique>
|
||||||
|
Périphérique à utiliser pour contrôler la télécommande Apple IR
|
||||||
|
(auto-détecté par défaut, Linux uniquement).
|
||||||
.IPs ar-delay
|
.IPs ar-delay
|
||||||
Temps en milli-secondes avant de démarrer la répétition automatique
|
Temps en milli-secondes avant de démarrer la répétition automatique
|
||||||
d'une touche
|
d'une touche
|
||||||
@ -1113,6 +1118,10 @@ Activ
|
|||||||
Désactive la gestion de LIRC.
|
Désactive la gestion de LIRC.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B \-noar
|
||||||
|
Désactive la gestion de la télécommande AppleIR.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B \-nomouseinput
|
.B \-nomouseinput
|
||||||
Désactive l'interprétation des boutons de la souris (le menu contextuel
|
Désactive l'interprétation des boutons de la souris (le menu contextuel
|
||||||
de mozplayerxp dépend de cette option).
|
de mozplayerxp dépend de cette option).
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
.\" Synced with r26674
|
.\" Synced with r26909
|
||||||
.\" MPlayer (C) 2000-2008 MPlayer Team
|
.\" MPlayer (C) 2000-2008 MPlayer Team
|
||||||
.\" Ezt a man oldalt Gabucino, Diego Biurrun és Jonas Jermann készíti/készítette
|
.\" Ezt a man oldalt Gabucino, Diego Biurrun és Jonas Jermann készíti/készítette
|
||||||
.\" Karbantartó: Gabrov
|
.\" Karbantartó: Gabrov
|
||||||
@ -33,7 +33,7 @@
|
|||||||
.\" Név
|
.\" Név
|
||||||
.\" --------------------------------------------------------------------------
|
.\" --------------------------------------------------------------------------
|
||||||
.
|
.
|
||||||
.TH MPlayer 1 "2008. 05. 11." "MPlayer Project" "A film lejátszó"
|
.TH MPlayer 1 "2008. 06. 02." "MPlayer Project" "A film lejátszó"
|
||||||
.
|
.
|
||||||
.SH NÉV
|
.SH NÉV
|
||||||
mplayer \- film lejátszó
|
mplayer \- film lejátszó
|
||||||
@ -233,6 +233,8 @@ Egyszer megnyomva meg
|
|||||||
képkockát lejátszik és újra megáll (bármelyik másik gombbal elindul újra).
|
képkockát lejátszik és újra megáll (bármelyik másik gombbal elindul újra).
|
||||||
.IPs "q / ESC"
|
.IPs "q / ESC"
|
||||||
Lejátszás megállítása és kilépés.
|
Lejátszás megállítása és kilépés.
|
||||||
|
.IPs "U\ \ \ \ "
|
||||||
|
Lejátszás megállítása (és kilépés, ha a \-idle nincs megadva).
|
||||||
.IPs "+ és \-"
|
.IPs "+ és \-"
|
||||||
Audió késleltetés állítása +/\- 0.1 másodperccel.
|
Audió késleltetés állítása +/\- 0.1 másodperccel.
|
||||||
.IPs "/ and *"
|
.IPs "/ and *"
|
||||||
@ -948,6 +950,8 @@ A rendelkez
|
|||||||
Az alapértelmezett ~/\:.mplayer/\:input.conf -tól eltérő bemeneti
|
Az alapértelmezett ~/\:.mplayer/\:input.conf -tól eltérő bemeneti
|
||||||
konfigurációs fájl megadása.
|
konfigurációs fájl megadása.
|
||||||
Ha nincs elérési út megadva, a ~/\:.mplayer/\:<fájlnév> a feltételezett.
|
Ha nincs elérési út megadva, a ~/\:.mplayer/\:<fájlnév> a feltételezett.
|
||||||
|
.IPs ar-dev=<eszköz>
|
||||||
|
Az Apple IR távirányítóhoz használt eszköz (alapértelmezetten automatikus detektálás, csak Linux-on).
|
||||||
.IPs ar-delay
|
.IPs ar-delay
|
||||||
Egy gomb automatikus ismétlése előtti késleltetés miliszekundumban (0: kikapcsolás).
|
Egy gomb automatikus ismétlése előtti késleltetés miliszekundumban (0: kikapcsolás).
|
||||||
.IPs ar-rate
|
.IPs ar-rate
|
||||||
@ -1053,6 +1057,10 @@ Joystick t
|
|||||||
LIRC támogatás kikapcsolása.
|
LIRC támogatás kikapcsolása.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B \-noar
|
||||||
|
Kikapcsolja az AppleIR távirányító támogatását.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B \-nomouseinput
|
.B \-nomouseinput
|
||||||
Kikapcsolja az egérgomb nyomás/\:felengedés input-ot (a mozplayerxp
|
Kikapcsolja az egérgomb nyomás/\:felengedés input-ot (a mozplayerxp
|
||||||
helyzetérzékeny menüje igényli ezt a kapcsolót).
|
helyzetérzékeny menüje igényli ezt a kapcsolót).
|
||||||
@ -1565,10 +1573,10 @@ Automatikusan visszav
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B \-psprobe <bájt pozíció>
|
.B \-psprobe <bájt pozíció>
|
||||||
MPEG-PS folyam lejátszásakor ezzel az opcióval megadhatod, hogy az
|
MPEG-PS vagy MPEG-PES folyam lejátszásakor ezzel az opcióval megadhatod,
|
||||||
MPlayer hány bájtot vizsgáljon át a használt videó codec azonosításához.
|
hogy az MPlayer hány bájtot vizsgáljon át a használt videó codec
|
||||||
Ez az opció a H264 folyamokat tartalmazó EVO fájlok lejátszásához
|
azonosításához.
|
||||||
szükséges.
|
Ez az opció a H264 folyamokat tartalmazó EVO vagy VDR fájlok lejátszásához szükséges.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B \-pvr <opció1:opció2:...> (csak PVR)
|
.B \-pvr <opció1:opció2:...> (csak PVR)
|
||||||
@ -3356,6 +3364,8 @@ A haszn
|
|||||||
információkat az MPlayer, keresd az [xv common] tag-gel kezdődő sorokat.
|
információkat az MPlayer, keresd az [xv common] tag-gel kezdődő sorokat.
|
||||||
.PD 0
|
.PD 0
|
||||||
.RSs
|
.RSs
|
||||||
|
.IPs adaptor=<szám>
|
||||||
|
Kiválasztja a megadott XVideo adaptort (lásd az xvinfo ereményét).
|
||||||
.IPs port=<szám>
|
.IPs port=<szám>
|
||||||
Adott XVideo port kiválasztása.
|
Adott XVideo port kiválasztása.
|
||||||
.IPs ck=<cur|use|set>
|
.IPs ck=<cur|use|set>
|
||||||
@ -3404,6 +3414,8 @@ Vide
|
|||||||
kiterjesztését használja az MPEG-1/2 és VCR2 dekódolás gyorsításához.
|
kiterjesztését használja az MPEG-1/2 és VCR2 dekódolás gyorsításához.
|
||||||
.PD 0
|
.PD 0
|
||||||
.RSs
|
.RSs
|
||||||
|
.IPs adaptor=<szám>
|
||||||
|
Kiválasztja a megadott XVideo adaptort (lásd az xvinfo eredményét).
|
||||||
.IPs port=<szám>
|
.IPs port=<szám>
|
||||||
Adott XVideo port kiválasztása.
|
Adott XVideo port kiválasztása.
|
||||||
.IPs (no)benchmark
|
.IPs (no)benchmark
|
||||||
@ -3605,11 +3617,11 @@ A vide
|
|||||||
textúra mérete.
|
textúra mérete.
|
||||||
A szándékok szerint a legegyszerűbb OpenGL implementációkkal is működik, de
|
A szándékok szerint a legegyszerűbb OpenGL implementációkkal is működik, de
|
||||||
használhat újabb kiterjesztéseket is, melyek engedélyezik több színtér és a
|
használhat újabb kiterjesztéseket is, melyek engedélyezik több színtér és a
|
||||||
DirectRendering támogatását.
|
direct rendering támogatását.
|
||||||
Kérjük használd a \-dr kapcsolót, ha működik az OpenGL implementációddal, mivel
|
Az optimális sebességhez próbálj ki valami ehhez hasonlót
|
||||||
nagyobb felbontásoknál ez
|
.br
|
||||||
.B sokkal
|
\-vo gl:yuv=2:force\-pbo:ati\-hack \-dr \-noslices
|
||||||
gyorsabb.
|
.br
|
||||||
A kód nagyon kevés ellenőrzést végez, így ha egy tulajdonság nem elérhető, az
|
A kód nagyon kevés ellenőrzést végez, így ha egy tulajdonság nem elérhető, az
|
||||||
azért lehet, mert a kártyád/OpenGL implementációd nem támogatja, akkor sem, ha
|
azért lehet, mert a kártyád/OpenGL implementációd nem támogatja, akkor sem, ha
|
||||||
hibaüzenetet nem kapsz.
|
hibaüzenetet nem kapsz.
|
||||||
@ -3617,6 +3629,16 @@ Haszn
|
|||||||
kiterjesztések megtekintéséhez.
|
kiterjesztések megtekintéséhez.
|
||||||
.PD 0
|
.PD 0
|
||||||
.RSs
|
.RSs
|
||||||
|
.IPs (no)ati\-hack
|
||||||
|
Az ATI vezérlők hibás képet adhatnak ha PBO-kat használsz (\-dr vagy
|
||||||
|
force\-pbo használata).
|
||||||
|
Ez az opció javítja ezt, egy kicsivel nagyobb memória használat mellett.
|
||||||
|
.IPs (no)force\-pbo
|
||||||
|
Mindig PBO-kat használ a textúrák átviteléhez, akkor is, ha ez egy plusz
|
||||||
|
másolást igényel.
|
||||||
|
Jelenleg ez egy kis extra sebességet ad az NVidia vezérlőkkel és sokkal
|
||||||
|
gyorsabb az ATI vezérlőkkel.
|
||||||
|
Szükség lehet a \-noslices és az ati\-hack alopciókra a megfelelő működéshez.
|
||||||
.IPs (no)scaled-osd
|
.IPs (no)scaled-osd
|
||||||
Az OSD viselkedésének megváltoztatása, amikor az ablakméret módosul
|
Az OSD viselkedésének megváltoztatása, amikor az ablakméret módosul
|
||||||
(alapértelmezett: letiltva).
|
(alapértelmezett: letiltva).
|
||||||
@ -4476,6 +4498,8 @@ Ez nem hiba, hanem a nem teljes felbont
|
|||||||
Ha a <w> is meg van adva, a lowres dekódolás csak akkor lesz használva, ha a
|
Ha a <w> is meg van adva, a lowres dekódolás csak akkor lesz használva, ha a
|
||||||
videó szélessége nagyobb vagy egyenlő mint <w>.
|
videó szélessége nagyobb vagy egyenlő mint <w>.
|
||||||
.RE
|
.RE
|
||||||
|
.IPs "o\ \ \ \ "
|
||||||
|
FIXME: nem dokumentált
|
||||||
.IPs "sb=<szám> (csak MPEG-2)"
|
.IPs "sb=<szám> (csak MPEG-2)"
|
||||||
Kihagyja a megadott számú makroblokk sort a tetején.
|
Kihagyja a megadott számú makroblokk sort a tetején.
|
||||||
.IPs "st=<szám> (csak MPEG-2)"
|
.IPs "st=<szám> (csak MPEG-2)"
|
||||||
@ -7739,7 +7763,7 @@ Windows Media Video, 2-es verzi
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vqmin=<1\-31>
|
.B vqmin=<1\-31>
|
||||||
minimális kvantáló (pass 1/2)
|
minimális kvantáló
|
||||||
.RSs
|
.RSs
|
||||||
.IPs 1
|
.IPs 1
|
||||||
Nem javasolt (sokkal nagyobb fájl, csekély minőségbeli különbség és ijesztő
|
Nem javasolt (sokkal nagyobb fájl, csekély minőségbeli különbség és ijesztő
|
||||||
@ -7798,7 +7822,7 @@ Az 1 nem javasolt (l
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vqmax=<1\-31>
|
.B vqmax=<1\-31>
|
||||||
Maximális kvantáló (1/2. lépés), 10\-31 közötti ésszerű érték (alapértelmezett: 31).
|
Maximális kvantáló, 10\-31 közötti ésszerű érték (alapértelmezett: 31).
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B mbqmin=<1\-31>
|
.B mbqmin=<1\-31>
|
||||||
@ -7810,7 +7834,7 @@ idej
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vqdiff=<1\-31>
|
.B vqdiff=<1\-31>
|
||||||
maximális kvantáló különbség az egymást követő I- vagy P-kockáknál (1/2. lépés)
|
maximális kvantáló különbség az egymást követő I- vagy P-kockáknál
|
||||||
(alapértelmezett: 3)
|
(alapértelmezett: 3)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
@ -8078,7 +8102,7 @@ Nem okoz teljes
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vbitrate=<érték>
|
.B vbitrate=<érték>
|
||||||
Bitráta megadása (1/2. lépés) (alapértelmezett: 800).
|
Bitráta megadása (alapértelmezett: 800).
|
||||||
.br
|
.br
|
||||||
.I FIGYELMEZTETÉS:
|
.I FIGYELMEZTETÉS:
|
||||||
1kbit = 1000 bit
|
1kbit = 1000 bit
|
||||||
@ -8104,17 +8128,17 @@ probl
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vrc_maxrate=<érték>
|
.B vrc_maxrate=<érték>
|
||||||
maximális bitráta kbit/\:sec-ben (1/2. lépés)
|
maximális bitráta kbit/\:sec-ben
|
||||||
(alapértelmezett: 0, határtalan)
|
(alapértelmezett: 0, határtalan)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vrc_minrate=<érték>
|
.B vrc_minrate=<érték>
|
||||||
minimális bitráta kbit/\:sec-ben (1/2. lépés)
|
minimális bitráta kbit/\:sec-ben
|
||||||
(alapértelmezett: 0, határtalan)
|
(alapértelmezett: 0, határtalan)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vrc_buf_size=<érték>
|
.B vrc_buf_size=<érték>
|
||||||
buffer méret kbit-ben (1/2. lépés).
|
buffer méret kbit-ben
|
||||||
MPEG-1/2-nél ez a vbv buffer méretét is beállítja, használj 327-et
|
MPEG-1/2-nél ez a vbv buffer méretét is beállítja, használj 327-et
|
||||||
a VCD-hez, 917-et az SVCD-hez és 1835-at a DVD-hez.
|
a VCD-hez, 917-et az SVCD-hez és 1835-at a DVD-hez.
|
||||||
.
|
.
|
||||||
@ -8139,19 +8163,19 @@ t
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vb_qfactor=<\-31.0\-31.0>
|
.B vb_qfactor=<\-31.0\-31.0>
|
||||||
kvantálási faktor a B- és nem-B-kockák között (1/2. lépés) (alapértelmezett: 1.25)
|
kvantálási faktor a B- és nem-B-kockák között (alapértelmezett: 1.25)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vi_qfactor=<\-31.0\-31.0>
|
.B vi_qfactor=<\-31.0\-31.0>
|
||||||
kvantálási faktor az I- és nem-I-kockák között (1/2. lépés) (alapértelmezett: 0.8)
|
kvantálási faktor az I- és nem-I-kockák között (alapértelmezett: 0.8)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vb_qoffset=<\-31.0\-31.0>
|
.B vb_qoffset=<\-31.0\-31.0>
|
||||||
kvantálási lépés B- és nem-B-kockák között (1/2. lépés) (alapértelmezett: 1.25)
|
kvantálási lépés B- és nem-B-kockák között (alapértelmezett: 1.25)
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vi_qoffset=<\-31.0\-31.0>
|
.B vi_qoffset=<\-31.0\-31.0>
|
||||||
(1/2. lépés) (alapértelmezett: 0.0)
|
(alapértelmezett: 0.0)
|
||||||
.br
|
.br
|
||||||
ha v{b|i}_qfactor > 0
|
ha v{b|i}_qfactor > 0
|
||||||
.br
|
.br
|
||||||
@ -8187,7 +8211,7 @@ id
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vqcomp=<0.0\-1.0>
|
.B vqcomp=<0.0\-1.0>
|
||||||
Kvantálási tömörítés, a vrc_eq függ ettől (1/2. lépés) (alapértelmezett: 0.5).
|
Kvantálási tömörítés, a vrc_eq függ ettől (alapértelmezett: 0.5).
|
||||||
Például feltéve, hogy az alapértelmezett rate control egyenletet használjuk,
|
Például feltéve, hogy az alapértelmezett rate control egyenletet használjuk,
|
||||||
ha a vqcomp=1.0, a ratecontrol minden kockához annyi számú bitet foglal le,
|
ha a vqcomp=1.0, a ratecontrol minden kockához annyi számú bitet foglal le,
|
||||||
amennyi szükséges az azonos QP melletti kódolásukhoz.
|
amennyi szükséges az azonos QP melletti kódolásukhoz.
|
||||||
@ -8199,7 +8223,7 @@ A l
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vrc_eq=<egyenlet>
|
.B vrc_eq=<egyenlet>
|
||||||
fő ratecontrol egyenlet (1/2. lépés)
|
fő ratecontrol egyenlet
|
||||||
.RE
|
.RE
|
||||||
.RSs
|
.RSs
|
||||||
.IPs "1\ \ \ \ "
|
.IPs "1\ \ \ \ "
|
||||||
@ -8272,7 +8296,7 @@ maximum / minimum
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vrc_override=<opciók>
|
.B vrc_override=<opciók>
|
||||||
Felhasználó által megadott minőség a megadott részekhez (befejezés, feliratok, ...) (1/2. lépés).
|
Felhasználó által megadott minőség a megadott részekhez (befejezés, feliratok, ...).
|
||||||
Az opciók <kezdő-kocka>, <záró-kocka>, <minőség>[/<kezdő-kocka>,
|
Az opciók <kezdő-kocka>, <záró-kocka>, <minőség>[/<kezdő-kocka>,
|
||||||
<záró-kocka>, <minőség>[/...]]:
|
<záró-kocka>, <minőség>[/...]]:
|
||||||
.PD 0
|
.PD 0
|
||||||
@ -8294,7 +8318,7 @@ kezdeti buffer felt
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B vqsquish=<0|1>
|
.B vqsquish=<0|1>
|
||||||
Itt adható meg hogy hogyan maradjon a kvantáló a qmin és qmax között (1/2. lépés).
|
Itt adható meg hogy hogyan maradjon a kvantáló a qmin és qmax között.
|
||||||
.PD 0
|
.PD 0
|
||||||
.RSs
|
.RSs
|
||||||
.IPs 0
|
.IPs 0
|
||||||
@ -9057,6 +9081,10 @@ FIXME: Ezt m
|
|||||||
.B skip_threshold=<0\-1000000>
|
.B skip_threshold=<0\-1000000>
|
||||||
FIXME: Ezt még dokumentálni kell.
|
FIXME: Ezt még dokumentálni kell.
|
||||||
.
|
.
|
||||||
|
.TP
|
||||||
|
.B "o\ \ \ \ \ \ "
|
||||||
|
FIXME: nem dokumentált
|
||||||
|
.
|
||||||
.
|
.
|
||||||
.SS nuv (\-nuvopts)
|
.SS nuv (\-nuvopts)
|
||||||
.
|
.
|
||||||
@ -10130,6 +10158,27 @@ K
|
|||||||
A használható értékek <\-2\-2> (alapértelmezett: 0).
|
A használható értékek <\-2\-2> (alapértelmezett: 0).
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B aq_mode=<0\-2>
|
||||||
|
Definiálja, hogy az adaptív kvantálás (AQ) hogyan ossza el a biteket:
|
||||||
|
.PD 0
|
||||||
|
.RSs
|
||||||
|
.IPs 0
|
||||||
|
letiltva
|
||||||
|
.IPs 1
|
||||||
|
Nem mozgatja a biteket a kockák között.
|
||||||
|
.IPs 2
|
||||||
|
Mozgatja a biteket a kockák között (alapértelmezett).
|
||||||
|
.RE
|
||||||
|
.PD 1
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B aq_strength=<pozitív lebegőpontos szám>
|
||||||
|
Megadja, hogy az adaptív kvantálás (AQ) mennyire csökkentse a blokkosodást
|
||||||
|
és az elmosódást a sík és textúrázott területeken (alapértelmezett: 1.0).
|
||||||
|
A 0.5-ös érték gyenge AQ-t eredményez és kevesebb részlethez, míg az 1.5-ös
|
||||||
|
erős AQ-t és nagyobb részletességet.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B cqm=<flat|jvt|<fájlnév>>
|
.B cqm=<flat|jvt|<fájlnév>>
|
||||||
Vagy egy előre definiált saját kvantálást használ vagy betölt egy JM formátumú
|
Vagy egy előre definiált saját kvantálást használ vagy betölt egy JM formátumú
|
||||||
mátrix fájlt.
|
mátrix fájlt.
|
||||||
@ -10432,8 +10481,12 @@ A folyam tulajdons
|
|||||||
Kényszeríti a megadott libavformat demuxer-t.
|
Kényszeríti a megadott libavformat demuxer-t.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B "o\ \ \ \ \ \ "
|
||||||
|
FIXME: nem dokumentált
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B probesize=<érték>
|
.B probesize=<érték>
|
||||||
A detektálási folyamatban használt adat maximális mennyisége.
|
A detektálási folyamatban a próbálkozáshoz használt adat maximális mennyisége.
|
||||||
MPEG-TS esetén ez az érték az átvizsgálandó TS csomagok számát
|
MPEG-TS esetén ez az érték az átvizsgálandó TS csomagok számát
|
||||||
adja meg.
|
adja meg.
|
||||||
.
|
.
|
||||||
@ -10501,9 +10554,14 @@ MPEG[12] implement
|
|||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B preload=<különbség>
|
.B preload=<különbség>
|
||||||
Jelenleg csak az MPEG[12]-nél van értelme: Kezdeti különbség másodpercben
|
Jelenleg csak az MPEG[12]-nél van értelme: Kezdeti különbség
|
||||||
a kimenet referencia időzítője (SCR) és a dekódolási időbélyeg (DTS) között
|
másodpercben a kimenet referencia időzítője (SCR) és a dekódolási
|
||||||
bármelyik jelenlévő folyamnál (késleltetés demux-ból dekódolásba).
|
időbélyeg (DTS) között bármelyik jelenlévő folyamnál
|
||||||
|
(késleltetés demux-ból dekódolásba).
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B "o\ \ \ \ \ \ "
|
||||||
|
FIXME: nem dokumentált
|
||||||
.
|
.
|
||||||
.
|
.
|
||||||
.
|
.
|
||||||
|
@ -134,7 +134,7 @@ streams:
|
|||||||
|
|
||||||
codec support:
|
codec support:
|
||||||
* FFmpeg: Michael Niedermayer
|
* FFmpeg: Michael Niedermayer
|
||||||
* XviD: Ivan Kalvachev
|
* Xvid: Ivan Kalvachev
|
||||||
* x264: Loren Merritt
|
* x264: Loren Merritt
|
||||||
* musepack, speex: Reimar Döffinger
|
* musepack, speex: Reimar Döffinger
|
||||||
|
|
||||||
|
@ -21,13 +21,14 @@ $ make install
|
|||||||
From within the MPlayer source tree run
|
From within the MPlayer source tree run
|
||||||
$ ./configure --disable-dvdread-internal
|
$ ./configure --disable-dvdread-internal
|
||||||
followed by your preferred parameters.
|
followed by your preferred parameters.
|
||||||
|
Be warned that you *MUST* disable MPlayer's internal copy of dvdread or something
|
||||||
|
- most likely - won't work as expected (if at all).
|
||||||
After configure is run it should say that support for dvdnav and dvdread was
|
After configure is run it should say that support for dvdnav and dvdread was
|
||||||
enabled. If not, investigate the dvdnav and dvdread sections in configure.log
|
enabled. If not, investigate the dvdnav and dvdread sections in configure.log
|
||||||
and try to understand what went wrong. If you can't solve the problem yourself
|
and try to understand what went wrong. If you can't solve the problem yourself
|
||||||
post the two sections to mplayer-users.
|
post the two sections to mplayer-users.
|
||||||
|
|
||||||
Notice: Animated menus are working, but still menus and still scenes are not
|
Notice: Audio and subtitle language selection by means of menus doesn't work yet.
|
||||||
yet supported. Also, audio and subtitle language selection by means of menus
|
Nonetheless they can be switched as usual at any time during
|
||||||
doesn't work yet. Nonetheless they can be switched as usual at any time during
|
|
||||||
playback by pressing '#' and 'j' (or the keys you chose to override those two
|
playback by pressing '#' and 'j' (or the keys you chose to override those two
|
||||||
bindings).
|
bindings).
|
||||||
|
@ -122,7 +122,7 @@ during the first pass. However, sometimes it is beneficial to watch
|
|||||||
the first-pass file before beginning the second pass to make sure
|
the first-pass file before beginning the second pass to make sure
|
||||||
nothing went wrong in the encoding.
|
nothing went wrong in the encoding.
|
||||||
|
|
||||||
Next, an example using XviD instead of libavcodec:
|
Next, an example using Xvid instead of libavcodec:
|
||||||
|
|
||||||
Encoding from an existing AVI file
|
Encoding from an existing AVI file
|
||||||
500 kbit/sec MPEG-4 video
|
500 kbit/sec MPEG-4 video
|
||||||
|
@ -304,7 +304,7 @@ This way it apeared that the minimum bits per block is ~40, very
|
|||||||
good results are with ~50, and everything above 60 is a waste of bandwidth.
|
good results are with ~50, and everything above 60 is a waste of bandwidth.
|
||||||
And what's actually funny is that it was independent of codec used. The
|
And what's actually funny is that it was independent of codec used. The
|
||||||
results were exactly the same, whether I used DIV3 (with tricky nandub's
|
results were exactly the same, whether I used DIV3 (with tricky nandub's
|
||||||
magick), ffmpeg odivx, DivX5 on Windows or XviD.
|
magick), ffmpeg odivx, DivX5 on Windows or Xvid.
|
||||||
|
|
||||||
Surprisingly there is one advantage of using nandub-DIV3 for bitrate
|
Surprisingly there is one advantage of using nandub-DIV3 for bitrate
|
||||||
starved encoding: ringing almost never apears this way.
|
starved encoding: ringing almost never apears this way.
|
||||||
|
@ -267,6 +267,9 @@ step_property <property> [value] [direction]
|
|||||||
not given or zero. The direction is reversed if direction is less
|
not given or zero. The direction is reversed if direction is less
|
||||||
than zero.
|
than zero.
|
||||||
|
|
||||||
|
stop
|
||||||
|
Stop playback.
|
||||||
|
|
||||||
sub_alignment [value]
|
sub_alignment [value]
|
||||||
Toggle/set subtitle alignment.
|
Toggle/set subtitle alignment.
|
||||||
0 top alignment
|
0 top alignment
|
||||||
|
@ -36,8 +36,8 @@ I. BASICS:
|
|||||||
|
|
||||||
0. Get Subversion:
|
0. Get Subversion:
|
||||||
|
|
||||||
The MPlayer project server runs Subversion 1.2.3. For optimal compatibility
|
The MPlayer project server runs Subversion 1.4. For optimal compatibility
|
||||||
you should use version 1.2.3 or later.
|
you should use version 1.4 or later.
|
||||||
|
|
||||||
|
|
||||||
1. Checking out the source tree:
|
1. Checking out the source tree:
|
||||||
@ -305,6 +305,10 @@ II. POLICY / RULES:
|
|||||||
- verbosity changes from default (info) level
|
- verbosity changes from default (info) level
|
||||||
- changes to "historical" parts of docs and web pages
|
- changes to "historical" parts of docs and web pages
|
||||||
- use of internal or external libraries
|
- use of internal or external libraries
|
||||||
|
- reverting commits from other developers
|
||||||
|
- mixing functional and cosmetic changes
|
||||||
|
- making the spelling of words consistent without actually correcting
|
||||||
|
any spelling errors.
|
||||||
|
|
||||||
|
|
||||||
13. Try to keep important discussions and requests (also) on the mplayer-dev-eng
|
13. Try to keep important discussions and requests (also) on the mplayer-dev-eng
|
||||||
|
@ -2158,7 +2158,7 @@ corresponding lines for each field (this has drawbacks - see method 3).
|
|||||||
these filters available to choose from, each with its own advantages
|
these filters available to choose from, each with its own advantages
|
||||||
and disadvantages. Consult <option>mplayer -pphelp</option> and
|
and disadvantages. Consult <option>mplayer -pphelp</option> and
|
||||||
<option>mplayer -vf help</option> to see what is available
|
<option>mplayer -vf help</option> to see what is available
|
||||||
(grep for "deint"), read Michael's Niedermayer
|
(grep for "deint"), read Michael Niedermayer's
|
||||||
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing filters comparison</ulink>,
|
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing filters comparison</ulink>,
|
||||||
and search the
|
and search the
|
||||||
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
||||||
@ -2250,7 +2250,7 @@ mencoder dvd://1 -oac copy -vf pullup,softskip
|
|||||||
fields to form a complete frame. <option>filmdint</option> will
|
fields to form a complete frame. <option>filmdint</option> will
|
||||||
deinterlace individual fields that it cannot match, however, whereas
|
deinterlace individual fields that it cannot match, however, whereas
|
||||||
<option>pullup</option> will simply drop them. Also, the two filters
|
<option>pullup</option> will simply drop them. Also, the two filters
|
||||||
have separate detection code, and filmdint may tend to match fields a
|
have separate detection code, and <option>filmdint</option> may tend to match fields a
|
||||||
bit less often. Which filter works better may depend on the input
|
bit less often. Which filter works better may depend on the input
|
||||||
video and personal taste; feel free to experiment with fine-tuning
|
video and personal taste; feel free to experiment with fine-tuning
|
||||||
the filters' options if you encounter problems with either one (see
|
the filters' options if you encounter problems with either one (see
|
||||||
|
@ -603,10 +603,8 @@ and needs a bit of manual setup. Download
|
|||||||
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (with MTRR support)</ulink>
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (with MTRR support)</ulink>
|
||||||
and copy it to the <filename class="directory">vidix/dhahelperwin</filename>
|
and copy it to the <filename class="directory">vidix/dhahelperwin</filename>
|
||||||
directory in your <application>MPlayer</application> source tree.
|
directory in your <application>MPlayer</application> source tree.
|
||||||
Open a console and change to that directory. Then type
|
Open a console and type
|
||||||
<screen>gcc -o dhasetup.exe dhasetup.c</screen>
|
<screen>make install-dhahelperwin</screen>
|
||||||
and execute
|
|
||||||
<screen>dhasetup.exe install</screen>
|
|
||||||
as Administrator. After that you will have to reboot.
|
as Administrator. After that you will have to reboot.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@ -854,15 +854,14 @@ For a Linux 2.6.x version of this driver check out
|
|||||||
<procedure>
|
<procedure>
|
||||||
<title>Installation:</title>
|
<title>Installation:</title>
|
||||||
<step><para>
|
<step><para>
|
||||||
To use it, you first have to compile <filename>mga_vid.o</filename>:
|
To use it, you first have to compile <filename>drivers/mga_vid.o</filename>:
|
||||||
<screen>
|
<screen>
|
||||||
cd drivers
|
make drivers<!--
|
||||||
make<!--
|
|
||||||
--></screen>
|
--></screen>
|
||||||
</para></step>
|
</para></step>
|
||||||
<step><para>
|
<step><para>
|
||||||
Then run (as <systemitem class="username">root</systemitem>)
|
Then run (as <systemitem class="username">root</systemitem>)
|
||||||
<screen>make install</screen>
|
<screen>make install-drivers</screen>
|
||||||
which should install the module and create the device node for you.
|
which should install the module and create the device node for you.
|
||||||
Load the driver with
|
Load the driver with
|
||||||
<screen>insmod mga_vid.o</screen>
|
<screen>insmod mga_vid.o</screen>
|
||||||
@ -941,14 +940,13 @@ the following instructions.
|
|||||||
<procedure>
|
<procedure>
|
||||||
<title>Installing the tdfx_vid.o kernel module:</title>
|
<title>Installing the tdfx_vid.o kernel module:</title>
|
||||||
<step><para>
|
<step><para>
|
||||||
Compile <filename>tdfx_vid.o</filename>:
|
Compile <filename>drivers/tdfx_vid.o</filename>:
|
||||||
<screen>
|
<screen>
|
||||||
cd drivers
|
make drivers</screen>
|
||||||
make</screen>
|
|
||||||
</para></step>
|
</para></step>
|
||||||
<step><para>
|
<step><para>
|
||||||
Then run (as <systemitem class="username">root</systemitem>)
|
Then run (as <systemitem class="username">root</systemitem>)
|
||||||
<screen>make install</screen>
|
<screen>make install-drivers</screen>
|
||||||
which should install the module and create the device node for you.
|
which should install the module and create the device node for you.
|
||||||
Load the driver with
|
Load the driver with
|
||||||
<screen>insmod tdfx_vid.o</screen>
|
<screen>insmod tdfx_vid.o</screen>
|
||||||
|
@ -262,7 +262,7 @@ Overview and Introduction to the Fidelity Range Extensions</ulink>.
|
|||||||
<application>MPlayer</application> utilise le décodeur H264 de
|
<application>MPlayer</application> utilise le décodeur H264 de
|
||||||
<systemitem class="library">libavcodec</systemitem>.
|
<systemitem class="library">libavcodec</systemitem>.
|
||||||
<systemitem class="library">libavcodec</systemitem> a eu
|
<systemitem class="library">libavcodec</systemitem> a eu
|
||||||
un décodeur H.264 un minimum utilisable environ juillet 2004,
|
un décodeur H.264 un minimum utilisable aux environs de juillet 2004,
|
||||||
cependant des changements et améliorations majeurs ont été implémentés depuis cette date,
|
cependant des changements et améliorations majeurs ont été implémentés depuis cette date,
|
||||||
à la fois en terme de fonctionalités supportées et d'utilisation du processeur.
|
à la fois en terme de fonctionalités supportées et d'utilisation du processeur.
|
||||||
Pour être sûr de soi, c'est toujours une bonne idée d'utiliser une version récente extraite
|
Pour être sûr de soi, c'est toujours une bonne idée d'utiliser une version récente extraite
|
||||||
@ -302,7 +302,7 @@ Overview and Introduction to the Fidelity Range Extensions</ulink>.
|
|||||||
Ceci installe libx264.a dans /usr/local/lib et x264.h est placé dans
|
Ceci installe libx264.a dans /usr/local/lib et x264.h est placé dans
|
||||||
/usr/local/include.
|
/usr/local/include.
|
||||||
|
|
||||||
Avec la bibliothèqye <systemitem class="library">x264</systemitem> et l'en-tête
|
Avec la bibliothèque <systemitem class="library">x264</systemitem> et l'en-tête
|
||||||
aux emplacements standards, construire
|
aux emplacements standards, construire
|
||||||
<application>MPlayer</application> avec le support
|
<application>MPlayer</application> avec le support
|
||||||
<systemitem class="library">x264</systemitem> est facile.
|
<systemitem class="library">x264</systemitem> est facile.
|
||||||
@ -490,7 +490,7 @@ RedHat sur <ulink url="http://greysector.rangers.eu.org/">Grey Sector</ulink>.
|
|||||||
<sect2 id="amr">
|
<sect2 id="amr">
|
||||||
<title>codecs AMR</title>
|
<title>codecs AMR</title>
|
||||||
<para>
|
<para>
|
||||||
Le dodec de voix Adaptive Multi-Rate est utilisé dans les téléphones mobiles de
|
Le codec de voix Adaptive Multi-Rate est utilisé dans les téléphones mobiles de
|
||||||
troisième génération (3G).
|
troisième génération (3G).
|
||||||
L'implémentation de référence est disponible depuis
|
L'implémentation de référence est disponible depuis
|
||||||
<ulink url="http://www.3gpp.org">Projet d'Association sur la 3ème Génération</ulink>
|
<ulink url="http://www.3gpp.org">Projet d'Association sur la 3ème Génération</ulink>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r25308 -->
|
<!-- synced with r26920 -->
|
||||||
<chapter id="encoding-guide">
|
<chapter id="encoding-guide">
|
||||||
<title>L'encodage avec <application>MEncoder</application></title>
|
<title>L'encodage avec <application>MEncoder</application></title>
|
||||||
|
|
||||||
@ -143,7 +143,7 @@
|
|||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
<emphasis role="bold">pulldown PAL 2:2:2:2:2:2:2:2:2:2:2:3</emphasis>:
|
<emphasis role="bold">pulldown PAL 2:2:2:2:2:2:2:2:2:2:2:3</emphasis>:
|
||||||
Toutes les 12 images sont affichées pour la durée de 3 trames au lieu de deux. Cela
|
Toutes les 12 images, une image est affichées pour la durée de 3 trames au lieu de deux. Cela
|
||||||
permet d'éviter le problème de l'accélération de 4% mais rend le processus bien plus
|
permet d'éviter le problème de l'accélération de 4% mais rend le processus bien plus
|
||||||
difficile à inverser. Cette technique est généralement utilisée dans les productions
|
difficile à inverser. Cette technique est généralement utilisée dans les productions
|
||||||
musicales où l'accélération de 4% endommagerait sérieusement la qualité musicale.
|
musicales où l'accélération de 4% endommagerait sérieusement la qualité musicale.
|
||||||
@ -156,7 +156,7 @@
|
|||||||
trames par seconde pour maintenir la vitesse d'affichage NTSC.
|
trames par seconde pour maintenir la vitesse d'affichage NTSC.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
<emphasis role="bold">Pulldown NTSC 2:2</emphasis>: Utilisé pour montré
|
<emphasis role="bold">Pulldown NTSC 2:2</emphasis>: Utilisé pour montrer
|
||||||
du 30 images par secondes sur du NTSC. Joli, comme le pulldown PAL 2:2.
|
du 30 images par secondes sur du NTSC. Joli, comme le pulldown PAL 2:2.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
@ -890,7 +890,7 @@
|
|||||||
conserver l'entrelacement, vous devrez vous abstenir de redimensionner.
|
conserver l'entrelacement, vous devrez vous abstenir de redimensionner.
|
||||||
Sans redimensionner, pour utiliser des dimensions multiples de 16,
|
Sans redimensionner, pour utiliser des dimensions multiples de 16,
|
||||||
il vous faudra recadrer plus petit que l'image. Ne pas recadrer plus grand que l'image
|
il vous faudra recadrer plus petit que l'image. Ne pas recadrer plus grand que l'image
|
||||||
parce que car les bandes noires sont nuisibles à la compression.
|
parce que les bandes noires sont nuisibles à la compression.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@ -938,7 +938,7 @@
|
|||||||
devez sélectionner un débit.
|
devez sélectionner un débit.
|
||||||
Le concept de débit (bitrate) est assez simple.
|
Le concept de débit (bitrate) est assez simple.
|
||||||
C'est un nombre (moyen) de bits par seconde qui sera utilisé pour stocker votre film.
|
C'est un nombre (moyen) de bits par seconde qui sera utilisé pour stocker votre film.
|
||||||
Normalement, le débit est mesuré en kilobits (1000 bits) par seconde.
|
Normalement, le débit est mesuré en kilobits (1000bits) par seconde.
|
||||||
La taille de votre film sur le disque dur correspond au débit multiplié par sa
|
La taille de votre film sur le disque dur correspond au débit multiplié par sa
|
||||||
durée plus une petite quantité pour l'"en-tête" (surcoût, voir par exemple la section sur
|
durée plus une petite quantité pour l'"en-tête" (surcoût, voir par exemple la section sur
|
||||||
<link linkend="menc-feat-dvd-mpeg4-muxing-avi-limitations">les conteneurs AVI</link>).
|
<link linkend="menc-feat-dvd-mpeg4-muxing-avi-limitations">les conteneurs AVI</link>).
|
||||||
@ -1118,7 +1118,7 @@
|
|||||||
l'encodage le plus proche possible du DVD source. Le recadrage est souvent
|
l'encodage le plus proche possible du DVD source. Le recadrage est souvent
|
||||||
nécessaire (comme expliqué plus haut), mais évitez de redimensionner l'image.
|
nécessaire (comme expliqué plus haut), mais évitez de redimensionner l'image.
|
||||||
Bien qu'il soit parfois préférable de réduire la taille de l'image plutôt que d'utiliser
|
Bien qu'il soit parfois préférable de réduire la taille de l'image plutôt que d'utiliser
|
||||||
un quantificateur plus élevé, nous voulons éviter tout ceci:souvenez-vous que
|
un quantificateur plus élevé, nous voulons éviter tout ceci. Souvenez-vous que
|
||||||
nous avons décidé au départ d'échanger des bits pour de la qualité.
|
nous avons décidé au départ d'échanger des bits pour de la qualité.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -1330,7 +1330,7 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
<para>
|
<para>
|
||||||
Néanmoins, les nouveaux codecs qui sont en développement peuvent souffrir
|
Néanmoins, les nouveaux codecs qui sont en développement peuvent souffrir
|
||||||
de bugs qui n'ont pas encore été repérés et qui peuvent saboter un encodage.
|
de bugs qui n'ont pas encore été repérés et qui peuvent saboter un encodage.
|
||||||
Ce malheureusement parfois le prix à payer pour l'utilisation de
|
Ceci est malheureusement parfois le prix à payer pour l'utilisation de
|
||||||
technologies de pointe.
|
technologies de pointe.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
@ -1402,8 +1402,8 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
Prenez quelques échantillons de sources brutes et comparez les
|
Prenez quelques échantillons de sources brutes et comparez les
|
||||||
différentes options et codecs pour en trouver un qui vous convienne
|
différentes options et codecs pour en trouver un qui vous convienne
|
||||||
le mieux.
|
le mieux.
|
||||||
Le meilleur codec est celui que vous maîtrisez et celui qui vous semble
|
Le meilleur codec est celui que vous maîtrisez et qui vous semble
|
||||||
le plus joli à vous yeux
|
le plus joli à vos yeux
|
||||||
<footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'>
|
<footnote id='fn-menc-feat-dvd-mpeg4-codec-playback'>
|
||||||
<para>Le même encodage peut apparaître différement sur le moniteur de
|
<para>Le même encodage peut apparaître différement sur le moniteur de
|
||||||
quelqu'un d'autre ou lorsqu'il est lu par un autre décodeur, donc armez
|
quelqu'un d'autre ou lorsqu'il est lu par un autre décodeur, donc armez
|
||||||
@ -1689,7 +1689,7 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
<formalpara>
|
<formalpara>
|
||||||
<title>Une note à propos des nombres</title>
|
<title>Une note à propos des nombres</title>
|
||||||
<para>
|
<para>
|
||||||
Beaucoup de documents renvoient à un
|
Beaucoup de documents, incluant l'article pointé par le lien précédent, renvoient à un
|
||||||
nombre de trames par secondes pour la vidéo NTSC de 59.94 ce qui correspond à
|
nombre de trames par secondes pour la vidéo NTSC de 59.94 ce qui correspond à
|
||||||
29.97 images complètes par secondes (pour le télécine et l'entrelacé) et à 23.976 (pour
|
29.97 images complètes par secondes (pour le télécine et l'entrelacé) et à 23.976 (pour
|
||||||
le progressif). Pour simplifier, certains documents arrondissent même à 60, 30 et 24.
|
le progressif). Pour simplifier, certains documents arrondissent même à 60, 30 et 24.
|
||||||
@ -1732,7 +1732,7 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
Sur un DVD, la vidéo n'est jamais vraiment stockée à 60000/1001 trames par seconde.
|
Sur un DVD, la vidéo n'est jamais vraiment stockée à 60000/1001 trames par seconde.
|
||||||
Si la vidéo est d'origine en 60000/1001, chaque paire de trames est alors combinée
|
Si la vidéo est d'origine en 60000/1001, chaque paire de trames est alors combinée
|
||||||
pour former une image, ce qui donne 30000/1001 images par seconde. Les lecteurs de
|
pour former une image, ce qui donne 30000/1001 images par seconde. Les lecteurs de
|
||||||
DVD de salon lisent alors les fanions incorporé au flux vidéo pour déterminer
|
DVD de salon lisent alors les drapeaux incorporés au flux vidéo pour déterminer
|
||||||
si la première ligne à afficher doit être paire ou impaire.
|
si la première ligne à afficher doit être paire ou impaire.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -1767,7 +1767,9 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
Elles représentent juste le minimum requis pour encoder la vidéo qui s'y rapportent.
|
Elles représentent juste le minimum requis pour encoder la vidéo qui s'y rapportent.
|
||||||
La meilleure méthode pour faire un bon encodage de DVD ou procéder à des réglages avancés de
|
La meilleure méthode pour faire un bon encodage de DVD ou procéder à des réglages avancés de
|
||||||
<systemitem class="library">libavcodec</systemitem> pour atteindre une qualité optimum sont des
|
<systemitem class="library">libavcodec</systemitem> pour atteindre une qualité optimum sont des
|
||||||
questions en dehors des propos de ce guide.
|
questions en dehors des propos de cette section.
|
||||||
|
Référez-vous aux autres sections contenues dans
|
||||||
|
<link linkend="encoding-guide">L'encodage avec <application>MPlayer</application></link>.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Il y a quelques notes en bas de page spécifiques à ce guide, elles sont liées comme ceci :
|
Il y a quelques notes en bas de page spécifiques à ce guide, elles sont liées comme ceci :
|
||||||
@ -1991,7 +1993,7 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
Encodez la vidéo sous forme entrelacée. Normalement, l'entrelacement
|
Encodez la vidéo sous forme entrelacée. Normalement, l'entrelacement
|
||||||
ruine la capacité de compression de l'encodeur, mais <systemitem class="library">libavcodec</systemitem>
|
ruine la capacité de compression de l'encodeur, mais <systemitem class="library">libavcodec</systemitem>
|
||||||
possède deux paramètres spécialement définis pour gérer le stockage de la vidéo entrelacée de manière
|
possède deux paramètres spécialement définis pour gérer le stockage de la vidéo entrelacée de manière
|
||||||
plus satisfaisante: <option> ildct</option> et <option>ilme</option>. Aussi,
|
plus satisfaisante: <option>ildct</option> et <option>ilme</option>. Aussi,
|
||||||
l'utilisation de <option>mbd=2</option> est-elle fortement recommandée <link linkend="menc-feat-telecine-footnotes">[2] </link>
|
l'utilisation de <option>mbd=2</option> est-elle fortement recommandée <link linkend="menc-feat-telecine-footnotes">[2] </link>
|
||||||
car cela encodera les macroblocs non-entrelacés à des endroits où il n'y
|
car cela encodera les macroblocs non-entrelacés à des endroits où il n'y
|
||||||
a pas de mouvements. Notez que <option>-ofps</option> n'est <emphasis>pas</emphasis> nécessaire ici.
|
a pas de mouvements. Notez que <option>-ofps</option> n'est <emphasis>pas</emphasis> nécessaire ici.
|
||||||
@ -2017,7 +2019,7 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
<screen>mencoder dvd://1 -oac copy -vf pp=lb -ovc lavc</screen>
|
<screen>mencoder dvd://1 -oac copy -vf pp=lb -ovc lavc</screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Malheureusement, cette option est un boguée dans
|
Malheureusement, cette option est boguée dans
|
||||||
<application>MEncoder</application> ; cela devrait bien marcher avec
|
<application>MEncoder</application> ; cela devrait bien marcher avec
|
||||||
<application>MEncoder G2</application>, mais on n'en est pas encore là. Vous
|
<application>MEncoder G2</application>, mais on n'en est pas encore là. Vous
|
||||||
risquez de subir des plantages. Peu importe, l'option <option>-vf tfields</option>
|
risquez de subir des plantages. Peu importe, l'option <option>-vf tfields</option>
|
||||||
@ -2079,10 +2081,28 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
disponible pour encoder le téléciné et le "Mélange de progressive et télécinée".
|
disponible pour encoder le téléciné et le "Mélange de progressive et télécinée".
|
||||||
|
|
||||||
<screen>mencoder dvd://1 -oac copy -vf pullup,softskip -ovc lavc -ofps 24000/1001</screen>
|
<screen>mencoder dvd://1 -oac copy -vf pullup,softskip -ovc lavc -ofps 24000/1001</screen>
|
||||||
</para>
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<option>-vf filmdint</option> est similaire à
|
||||||
</listitem>
|
<option>-vf pullup</option> : les deux filtres tentent d'appairer deux
|
||||||
|
demi-trames pour construire une trame complète.
|
||||||
|
Néanmoins, <option>filmdint</option> desentrelacera les demi-trames
|
||||||
|
orphelines tandis que <option>pullup</option> les éliminera.
|
||||||
|
De plus, les deux filtres ont des codes de détection différents et
|
||||||
|
<option>filmdint</option> peut avoir tendence à faire correspondre les
|
||||||
|
demi-trames un peu moins souvent.
|
||||||
|
Le contenu video à traiter et votre sensibilité personnelle fera qu'un
|
||||||
|
filtre fonctionnera mieux qu'un autre.
|
||||||
|
Sentez-vous libre d'ajuster les options des filtres si vous rencontrez
|
||||||
|
des problèmes avec l'un d'eux (consultez le manuel pour plus de
|
||||||
|
détails).
|
||||||
|
Pour la plupart des supports vidéo de qualité, les deux filtres
|
||||||
|
fonctionnent plutôt bien : débuter avec l'un ou l'autre ne fera pas
|
||||||
|
grande différence.
|
||||||
|
<screen>
|
||||||
|
mencoder dvd://1 -oac copy -vf filmdint -ovc lavc -ofps 24000/1001<!--
|
||||||
|
--></screen>
|
||||||
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Une méthode plus ancienne consiste à, au lieu de téléciner-inverse les passages télécinés,
|
Une méthode plus ancienne consiste à, au lieu de téléciner-inverse les passages télécinés,
|
||||||
téléciner les parties non-télécinées
|
téléciner les parties non-télécinées
|
||||||
@ -2096,17 +2116,6 @@ Notez l'usage des options <option>ilme</option> et <option>ildct</option>.
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem><para>
|
|
||||||
Je n'ai pas moi-même utilisé <option>-vf filmdint</option>, mais voilà ce que
|
|
||||||
D Richard Felker III en dit:
|
|
||||||
|
|
||||||
<blockquote><para>Il est correct, mais à mon avis, il essaie de désentrelacer plutôt
|
|
||||||
que de téléciner-inverse trop souvent (tout comme les lecteurs DVD de salon
|
|
||||||
& les TVs progressive) ce qui donne des clignotements affreux et d'autre
|
|
||||||
artefacts. Si vous prévoyer l'utiliser, vous aurez au minimum besoin de passer
|
|
||||||
du temps à affiner les options et à regarder le résultat en sortie pour vous assurer
|
|
||||||
que cela n'esquinte pas tout.</para></blockquote>
|
|
||||||
</para></listitem>
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
@ -4923,9 +4932,9 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
|
|||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
<sect3 id="menc-feat-vcd-dvd-a-v-sync">
|
<sect3 id="menc-feat-vcd-dvd-a-v-sync">
|
||||||
<title>Maintaining A/V sync</title>
|
<title>Maintient de la synchronisation A/V</title>
|
||||||
<para>
|
<para>
|
||||||
Afin de maintenir la synchronization audio/video lors de l'encodage,
|
Afin de maintenir la synchronisation audio/video lors de l'encodage,
|
||||||
<application>MEncoder</application> doit dupliquer ou effacer des images.
|
<application>MEncoder</application> doit dupliquer ou effacer des images.
|
||||||
Cela marche plutôt bien lor du multiplexage dans un fichier AVI
|
Cela marche plutôt bien lor du multiplexage dans un fichier AVI
|
||||||
mais il est pratiquement garanti d'échouer à maintenir la synchronisation A/V
|
mais il est pratiquement garanti d'échouer à maintenir la synchronisation A/V
|
||||||
@ -5241,7 +5250,7 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
||||||
scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
|
vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
|
||||||
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 25 \
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
||||||
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5254,7 +5263,7 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
||||||
scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
|
vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
|
||||||
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 30000/1001 \
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
||||||
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5267,7 +5276,7 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
||||||
scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
|
vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
|
||||||
vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 \
|
vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
||||||
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5280,7 +5289,7 @@ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
||||||
scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
|
vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
|
||||||
vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 \
|
vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
||||||
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
-o <replaceable>film.mpg</replaceable> <replaceable>film.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
|
@ -10,7 +10,7 @@ Veuillez le lire d'abord et revenir ensuite ici pour le reste des détails.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Dans ce chapitre je vous serez guidé à travers étapes de configuration et de
|
Dans ce chapitre, vous serez guidé à travers étapes de configuration et de
|
||||||
compilation de <application>MPlayer</application>.
|
compilation de <application>MPlayer</application>.
|
||||||
Ce n'est pas facile, mais pas vraiment difficile non plus.
|
Ce n'est pas facile, mais pas vraiment difficile non plus.
|
||||||
Si vous observez un comportement différent de celui de ces explications,
|
Si vous observez un comportement différent de celui de ces explications,
|
||||||
@ -270,7 +270,7 @@ supportant plusieurs encodages.
|
|||||||
Décompressez le fichier que vous avez téléchargé dans le répertoire
|
Décompressez le fichier que vous avez téléchargé dans le répertoire
|
||||||
<filename class="directory">~/.mplayer</filename> ou dans
|
<filename class="directory">~/.mplayer</filename> ou dans
|
||||||
<filename class="directory">$PREFIX/share/mplayer</filename>.
|
<filename class="directory">$PREFIX/share/mplayer</filename>.
|
||||||
Ensuite, renommez ou créez un mien symbolique de l'un des répertoires ainsi créés vers
|
Ensuite, renommez ou créez un lien symbolique de l'un des répertoires ainsi créés vers
|
||||||
le sous-repertoire
|
le sous-repertoire
|
||||||
<filename class="directory">font</filename>. Exemple :
|
<filename class="directory">font</filename>. Exemple :
|
||||||
<screen>ln -s <replaceable>~/.mplayer/arial-24</replaceable> ~/.mplayer/font</screen>
|
<screen>ln -s <replaceable>~/.mplayer/arial-24</replaceable> ~/.mplayer/font</screen>
|
||||||
@ -371,7 +371,7 @@ Vous pouvez rendre ce réglagle permanant en ajoutant la seconde commande au fic
|
|||||||
le secteur avant de le démarrer semble régler le problème dans la plupart des cas.
|
le secteur avant de le démarrer semble régler le problème dans la plupart des cas.
|
||||||
Avec certaines configurations matérielles (confirmé par l'utilisation de lecteurs DVD ne supportant pas
|
Avec certaines configurations matérielles (confirmé par l'utilisation de lecteurs DVD ne supportant pas
|
||||||
le DMA avec une carte-mère basée sur le chipset ALi1541), l'utilisation du timer RTC rend la lecture
|
le DMA avec une carte-mère basée sur le chipset ALi1541), l'utilisation du timer RTC rend la lecture
|
||||||
irrégulière (NdT: skippy). Il est recommandé d'utiliser la troisième méthode dans ce cas.
|
saccadée (NdT: skippy). Il est recommandé d'utiliser la troisième méthode dans ce cas.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
<emphasis role="bold">La troisième méthode de synchro</emphasis> est activée par l'option
|
<emphasis role="bold">La troisième méthode de synchro</emphasis> est activée par l'option
|
||||||
|
@ -340,7 +340,7 @@ Le nom vient du fait que cette méthode encode le fichier
|
|||||||
Le premier encodage (du mode deux passes) crée quelques
|
Le premier encodage (du mode deux passes) crée quelques
|
||||||
fichiers temporaires (<filename>*.log</filename>) avec
|
fichiers temporaires (<filename>*.log</filename>) avec
|
||||||
une taille de quelques méga-octets, ne les détruisez pas
|
une taille de quelques méga-octets, ne les détruisez pas
|
||||||
tout de suite (vous pouvez effacer l'AVI ou redirigez le
|
tout de suite (vous pouvez effacer l'AVI ou rediriger le
|
||||||
flux vidéo vers <filename>/dev/null</filename>).
|
flux vidéo vers <filename>/dev/null</filename>).
|
||||||
Lors de la seconde passe, le fichier de sortie est créé, en
|
Lors de la seconde passe, le fichier de sortie est créé, en
|
||||||
utilisant les données bitrate des fichiers temporaires.
|
utilisant les données bitrate des fichiers temporaires.
|
||||||
|
@ -1,22 +1,25 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r20417 -->
|
<!-- synced with r26936 -->
|
||||||
<chapter id="ports" xreflabel="Ports">
|
<chapter id="ports" xreflabel="Ports">
|
||||||
<title>Ports</title>
|
<title>Ports</title>
|
||||||
|
|
||||||
<sect1 id="linux">
|
<sect1 id="linux">
|
||||||
<title>Linux</title>
|
<title>Linux</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
La plateforme principale de développement est Linux sur x86, bien que
|
La plateforme principale de développement est Linux sur x86, bien que
|
||||||
<application>MPlayer</application> fonctionne sur de nombreux autres ports
|
<application>MPlayer</application> fonctionne sur de nombreux autres ports
|
||||||
Linux.
|
Linux.
|
||||||
Des binaires de <application>MPlayer</application> sont disponibles depuis
|
Des binaires de <application>MPlayer</application> sont disponibles depuis
|
||||||
de nombreuses sources.
|
de nombreuses sources. Par contre, <emphasis role="bold">aucun de ces paquets n'est supporté</emphasis>.
|
||||||
Par contre, <emphasis role="bold">aucun de ces paquets n'est supporté</emphasis>.
|
|
||||||
Rapportez les problèmes à leurs auteurs, pas à nous.
|
Rapportez les problèmes à leurs auteurs, pas à nous.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="debian">
|
<sect2 id="debian">
|
||||||
<title>Paquets Debian</title>
|
<title>Paquets Debian</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Pour construire le paquet Debian, lancez la commande suivante dans le
|
Pour construire le paquet Debian, lancez la commande suivante dans le
|
||||||
répertoire source de <application>MPlayer</application>:
|
répertoire source de <application>MPlayer</application>:
|
||||||
@ -51,13 +54,15 @@ depuis sa <ulink url="http://www.debian-multimedia.org/">page web</ulink>.
|
|||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="rpm">
|
<sect2 id="rpm">
|
||||||
<title>Paquets RPM</title>
|
<title>Paquets RPM</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Dominik Mierzejewski a créé et maintient des paquets RPM officiels de
|
Dominik Mierzejewski maintient les paquets RPM officiels de
|
||||||
<application>MPlayer</application> pour Red Hat et Fedora Core.
|
<application>MPlayer</application> pour Fedora Core.
|
||||||
Ils sont disponibles sur son
|
Ils sont disponibles sur le <ulink url="http://rpm.greysector.net/mplayer/">dépôt Livna</ulink>.
|
||||||
<ulink url="http://rpm.greysector.net/mplayer/">repository</ulink>.
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@ -71,8 +76,11 @@ Vous pouvez obtenir des RPMs fonctionnels sur
|
|||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="arm">
|
<sect2 id="arm">
|
||||||
<title>ARM</title>
|
<title>ARM</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<application>MPlayer</application> fonctionne sur les PDAs Linux avec un
|
<application>MPlayer</application> fonctionne sur les PDAs Linux avec un
|
||||||
CPU ARM c-a-d Sharp Zaurus, Compaq Ipaq. La manière
|
CPU ARM c-a-d Sharp Zaurus, Compaq Ipaq. La manière
|
||||||
@ -91,8 +99,13 @@ Si vous avez besoin d'une GUI, vous pouvez utiliser xmms-embedded.
|
|||||||
</sect2>
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||||
|
|
||||||
|
|
||||||
<sect1 id="bsd">
|
<sect1 id="bsd">
|
||||||
<title>*BSD</title>
|
<title>*BSD</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<application>MPlayer</application> fonctionne sur toutes les variations
|
<application>MPlayer</application> fonctionne sur toutes les variations
|
||||||
de BSD connues.
|
de BSD connues.
|
||||||
@ -120,9 +133,11 @@ vous devrez recompiler le noyau avec "<envar>option USER_LDT</envar>"
|
|||||||
(à moins d'utiliser FreeBSD-CURRENT, où c'est le cas par défaut).
|
(à moins d'utiliser FreeBSD-CURRENT, où c'est le cas par défaut).
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="freebsd">
|
<sect2 id="freebsd">
|
||||||
<title>FreeBSD</title>
|
<title>FreeBSD</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Si votre CPU à SSE, recompilez votre noyau avec
|
Si votre CPU à SSE, recompilez votre noyau avec
|
||||||
"<envar>options CPU_ENABLE_SSE</envar>" (FreeBSD-STABLE ou patches noyau
|
"<envar>options CPU_ENABLE_SSE</envar>" (FreeBSD-STABLE ou patches noyau
|
||||||
@ -132,6 +147,7 @@ requis).
|
|||||||
|
|
||||||
<sect2 id="openbsd">
|
<sect2 id="openbsd">
|
||||||
<title>OpenBSD</title>
|
<title>OpenBSD</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
À cause des limitations dans les différentes versions de gas (relocation
|
À cause des limitations dans les différentes versions de gas (relocation
|
||||||
contre MMX), vous aurez besoin de compiler en deux étapes:
|
contre MMX), vous aurez besoin de compiler en deux étapes:
|
||||||
@ -140,19 +156,27 @@ D'abord assurez-vous que le non-natif est en premier dans votre
|
|||||||
assurez-vous que la version native est utilisée et faites
|
assurez-vous que la version native est utilisée et faites
|
||||||
<command>gmake</command>.
|
<command>gmake</command>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Depuis OpenBSD 3.4 le hack ci-dessus n'est plus nécessaire.
|
Depuis OpenBSD 3.4 le hack ci-dessus n'est plus nécessaire.
|
||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="darwin">
|
<sect2 id="darwin">
|
||||||
<title>Darwin</title>
|
<title>Darwin</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Voir la section <link linkend="macos">Mac OS</link>.
|
Voir la section <link linkend="macos">Mac OS</link>.
|
||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||||
|
|
||||||
|
|
||||||
<sect1 id="unix">
|
<sect1 id="unix">
|
||||||
<title>Unix Commercial</title>
|
<title>Unix Commercial</title>
|
||||||
|
|
||||||
@ -164,8 +188,11 @@ ont tendances à être différent de ceux trouvé sur les Unix libres, vous devr
|
|||||||
peut-être faire quelques ajustements manuels pour que le build fonctionne.
|
peut-être faire quelques ajustements manuels pour que le build fonctionne.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="solaris">
|
<sect2 id="solaris">
|
||||||
<title>Solaris</title>
|
<title>Solaris</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<application>MPlayer</application> devrait fonctionner sous Solaris 2.6
|
<application>MPlayer</application> devrait fonctionner sous Solaris 2.6
|
||||||
ou supérieur.
|
ou supérieur.
|
||||||
@ -188,18 +215,17 @@ installé.
|
|||||||
|
|
||||||
<para><emphasis role="bold">Attention :</emphasis></para>
|
<para><emphasis role="bold">Attention :</emphasis></para>
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem><para><emphasis role="bold">mediaLib</emphasis> est
|
<listitem><para>
|
||||||
<emphasis role="bold">actuellement désactivé</emphasis> par défaut dans
|
<emphasis role="bold">mediaLib</emphasis> est
|
||||||
<application>MPlayer</application>. Les utilisateurs SPARC
|
<emphasis role="bold">actuellement désactivé</emphasis> par défaut dans
|
||||||
|
<application>MPlayer</application> pour cause d'inconsistance. Les utilisateurs SPARC
|
||||||
qui ont construit MPlayer avec le support mediaLib ont reporté une
|
qui ont construit MPlayer avec le support mediaLib ont reporté une
|
||||||
forte coloration verte sur les vidéo encodées et décodées avec
|
forte coloration verte sur les vidéo encodées et décodées avec
|
||||||
libavcodec.
|
libavcodec.
|
||||||
Si vous le désirez, vous pouver activer mediaLib avec:
|
Si vous le désirez, vous pouvez activer mediaLib avec:
|
||||||
<screen>
|
<screen>./configure --enable-mlib</screen>
|
||||||
$ ./configure --enable-mlib
|
|
||||||
</screen>
|
|
||||||
Ceci est à vos risques et périls. Les utilisateurs x86 ne doivent
|
Ceci est à vos risques et périls. Les utilisateurs x86 ne doivent
|
||||||
<emphasis role="bold">pas</emphasis> utiliser mediaLib, cela
|
<emphasis role="bold">jamais</emphasis> utiliser mediaLib, puisque cela
|
||||||
déteriorerait les performances de MPlayer de manière importante.
|
déteriorerait les performances de MPlayer de manière importante.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
@ -211,8 +237,8 @@ make natif de Solaris ne fonctionnera pas.
|
|||||||
Message d'erreur typique si vous utilisez le make de Solaris au lieu de
|
Message d'erreur typique si vous utilisez le make de Solaris au lieu de
|
||||||
celui de GNU:
|
celui de GNU:
|
||||||
<screen>
|
<screen>
|
||||||
% /usr/ccs/bin/make
|
% /usr/ccs/bin/make
|
||||||
make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
|
make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -288,14 +314,11 @@ antérieures à Solaris Nevada b31. Ceci a été réparé par Sun pour
|
|||||||
Solaris Nevada b32 mais pas encore pour Solaris 10. Le Projet MPlayer
|
Solaris Nevada b32 mais pas encore pour Solaris 10. Le Projet MPlayer
|
||||||
a averti Sun de ce problème. Un patch pour Solaris 10 est actuellement en
|
a averti Sun de ce problème. Un patch pour Solaris 10 est actuellement en
|
||||||
développement. Plus d'information sont disponibles à l'adresse
|
développement. Plus d'information sont disponibles à l'adresse
|
||||||
suivante :
|
suivante : <ulink url="http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6308413"/>.
|
||||||
<ulink
|
</para></listitem>
|
||||||
url="http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6308413"/>.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
|
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
A cause de bogues dans Solaris 8, il se peut que vous ne pouviez pas lire
|
A cause de bogues dans Solaris 8, il se peut que vous ne puissiez pas lire
|
||||||
de disques DVD plus gros que 4 Go:
|
de disques DVD plus gros que 4 Go:
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -324,39 +347,41 @@ Le problème hsfs peut être résolu en installant le patch 109764-04 (sparc)
|
|||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="irix">
|
<sect2 id="irix">
|
||||||
<title>IRIX</title>
|
<title>IRIX</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Vous pouvez soit essayer d'installer le programme d'installation GNU, et
|
Vous pouvez soit essayer d'installer le programme d'installation GNU, et
|
||||||
(si vous ne l'avez pas mis dans votre chemin par défaut) précisez ensuite
|
(si vous ne l'avez pas mis dans votre chemin par défaut) précisez ensuite
|
||||||
l'endroit où il est:
|
l'endroit où il est:
|
||||||
<screen>./configure --with-install=<replaceable>/chemin/et/nom/de/l'installation</replaceable></screen>
|
<screen>
|
||||||
|
./configure --with-install=<replaceable>/chemin/et/nom/de/l'installation</replaceable>
|
||||||
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Soit vous pouvez utilisez l'installation par défaut livrée avec IRIX 6.5,
|
Soit vous pouvez utilisez l'installation par défaut livrée avec IRIX 6.5,
|
||||||
auquel cas vous devrez éditer le <filename>Makefile</filename>
|
auquel cas vous devrez éditer le <filename>Makefile</filename>
|
||||||
manuellement.
|
manuellement.
|
||||||
Changez les deux lignes suivantes:
|
Changez la ligne suivante :
|
||||||
<programlisting>
|
<programlisting>
|
||||||
$(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
|
$(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
|
||||||
|
|
||||||
$(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
|
|
||||||
</programlisting>
|
</programlisting>
|
||||||
par:
|
par:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
$(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
|
$(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
|
||||||
|
|
||||||
$(INSTALL) -m 644 codecs.conf $(CONFDIR)/
|
|
||||||
</programlisting>
|
</programlisting>
|
||||||
Et ensuite faites (depuis le rép. source de <application>MPlayer</application>):
|
Finalement, lancez la construction et l'installation.
|
||||||
<screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen>
|
|
||||||
finalement lancez la construction et l'installation.
|
|
||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="hp-ux">
|
<sect2 id="hp-ux">
|
||||||
<title>HP UX</title>
|
<title>HP UX</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Joe Page héberge un
|
Joe Page héberge un
|
||||||
<ulink url="http://users.rcn.com/joepage/mplayer_on_hpux11.htm">HOWTO</ulink>
|
<ulink url="http://users.rcn.com/joepage/mplayer_on_hpux11.htm">HOWTO</ulink>
|
||||||
@ -373,13 +398,12 @@ GCC sont boguées.
|
|||||||
Pour la fonctionnalité OpenGL vous aurez besoin d'installer Mesa et les
|
Pour la fonctionnalité OpenGL vous aurez besoin d'installer Mesa et les
|
||||||
pilotes de sortie vidéo gl et gl2 devraient marcher, la vitesse pouvant en
|
pilotes de sortie vidéo gl et gl2 devraient marcher, la vitesse pouvant en
|
||||||
être très affecté, dépendamment de la vitesse du CPU.
|
être très affecté, dépendamment de la vitesse du CPU.
|
||||||
Un bon substitut au pauvre système son natif de HP-UX est GNU esound.
|
Une bonne alternative au pauvre système son natif de HP-UX est GNU esound.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Créer le périphérique DVD
|
Créer le périphérique DVD
|
||||||
scanne le bus SCSI avec:
|
scanne le bus SCSI avec:
|
||||||
</para>
|
|
||||||
|
|
||||||
<screen>
|
<screen>
|
||||||
# ioscan -fn
|
# ioscan -fn
|
||||||
@ -397,29 +421,19 @@ ctl <emphasis role="bold">1</emphasis> 8/16/5.7.0 sctl CLAIMED DEVICE
|
|||||||
...
|
...
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
|
||||||
La sortie d'écran montre un lecteur DVD-ROM Pioneer à l'adresse SCSI 2.
|
La sortie d'écran montre un lecteur DVD-ROM Pioneer à l'adresse SCSI 2.
|
||||||
L'instance de la carte pour le chemin hardware 8/16 est 1.
|
L'instance de la carte pour le chemin hardware 8/16 est 1.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Créer un lien depuis le prériphérique brut vers le périphérique DVD.
|
Créer un lien depuis le prériphérique brut vers le périphérique DVD.
|
||||||
</para>
|
|
||||||
|
|
||||||
<screen>
|
<screen>
|
||||||
# ln -s /dev/rdsk/c<replaceable><SCSI bus instance></replaceable>t
|
ln -s /dev/rdsk/c<replaceable><SCSI bus instance></replaceable>t<replaceable><SCSI target ID></replaceable>d<replaceable><LUN></replaceable> /dev/<replaceable><device></replaceable>
|
||||||
<replaceable><SCSI target ID></replaceable>d<replaceable><LUN></replaceable>
|
|
||||||
/dev/<replaceable><device></replaceable>
|
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
|
||||||
Exemple:
|
Exemple:
|
||||||
|
<screen>ln -s /dev/rdsk/c1t2d0 /dev/dvd</screen>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<screen>
|
|
||||||
# ln -s /dev/rdsk/c1t2d0 /dev/dvd
|
|
||||||
</screen>
|
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Ci-dessous sont exposées les solutions pour certains problèmes communs:
|
Ci-dessous sont exposées les solutions pour certains problèmes communs:
|
||||||
</para>
|
</para>
|
||||||
@ -484,8 +498,11 @@ suffisante ou non.)
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="aix">
|
<sect2 id="aix">
|
||||||
<title>AIX</title>
|
<title>AIX</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<application>MPlayer</application> se compile parfaitement sous AIX 5.1,
|
<application>MPlayer</application> se compile parfaitement sous AIX 5.1,
|
||||||
5.2 et 5.3, en utilisant GCC 3.3 ou plus.
|
5.2 et 5.3, en utilisant GCC 3.3 ou plus.
|
||||||
@ -516,12 +533,12 @@ Les architectures suivantes ont été testé:
|
|||||||
<para>
|
<para>
|
||||||
Les architectures suivantes n'ont pas été testé, mais devraient quand
|
Les architectures suivantes n'ont pas été testé, mais devraient quand
|
||||||
même marcher:
|
même marcher:
|
||||||
</para>
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem><para>POWER</para></listitem>
|
<listitem><para>POWER</para></listitem>
|
||||||
<listitem><para>POWER2</para></listitem>
|
<listitem><para>POWER2</para></listitem>
|
||||||
<listitem><para>POWER5</para></listitem>
|
<listitem><para>POWER5</para></listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Le son à travers les Services Ultimedia n'est pas supporté, comme Ultimedia a
|
Le son à travers les Services Ultimedia n'est pas supporté, comme Ultimedia a
|
||||||
@ -537,10 +554,9 @@ role="bold">MPlayer ne produit pas de son sous AIX 5.2 et 5.3.</emphasis>
|
|||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Si vous rencontrez ce message d'erreur de
|
Si vous rencontrez ce message d'erreur de <filename>configure</filename> :
|
||||||
<filename>configure</filename> :
|
|
||||||
<screen>
|
<screen>
|
||||||
$./configure
|
$ ./configure
|
||||||
...
|
...
|
||||||
Checking for iconv program ... no
|
Checking for iconv program ... no
|
||||||
No working iconv program found, use
|
No working iconv program found, use
|
||||||
@ -560,6 +576,10 @@ $ ./configure --charset=noconv
|
|||||||
</sect2>
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||||
|
|
||||||
|
|
||||||
<sect1 id="windows">
|
<sect1 id="windows">
|
||||||
<title>Windows</title>
|
<title>Windows</title>
|
||||||
|
|
||||||
@ -598,63 +618,41 @@ Ajoutez <option>-fs</option> pour le mode plein écran.
|
|||||||
pour compiler le pilote de sortie vidéo DirectX. De plus vous devez
|
pour compiler le pilote de sortie vidéo DirectX. De plus vous devez
|
||||||
avoir DirectX 7 ou supérieur pour que ce pilote fonctionne.</para>
|
avoir DirectX 7 ou supérieur pour que ce pilote fonctionne.</para>
|
||||||
|
|
||||||
<para><link linkend="vidix">VIDIX</link> fonctionne maintenant sous Windows
|
<para>
|
||||||
avec <option>-vo winvidix</option>, bien que ce soit toujours expérimental
|
<link linkend="vidix">VIDIX</link> fonctionne maintenant sous Windows avec
|
||||||
et que cela requiert une configuration manuelle. Téléchargez
|
<option>-vo winvidix</option>, bien que ce soit toujours expérimental
|
||||||
|
et que cela requiert une configuration manuelle. Téléchargez
|
||||||
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> ou
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> ou
|
||||||
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (avec support des MTRR)</ulink>
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (avec support des MTRR)</ulink>
|
||||||
et copiez le dans le répertoire
|
et copiez le dans le répertoire
|
||||||
<filename class="directory">libdha/dhahelperwin</filename> de votre arborescence
|
<filename class="directory">libdha/dhahelperwin</filename> de votre arborescence
|
||||||
<application>MPlayer</application>.
|
<application>MPlayer</application>.
|
||||||
Ouvrez une console et placez-vous dans ce répertoire. Ensuite tapez
|
Ouvrez une console et tapez
|
||||||
|
<screen>make install-dhahelperwin</screen>
|
||||||
<screen>gcc -o dhasetup.exe dhasetup.c</screen>
|
en tant qu'Administrateur. Ensuite vous devez rebooter.
|
||||||
|
</para>
|
||||||
et exécutez
|
|
||||||
|
|
||||||
<screen>dhasetup.exe install</screen>
|
|
||||||
|
|
||||||
en tant qu'Administrateur. Ensuite vous devez rebooter. Lorsque c'est
|
|
||||||
fait, copiez les fichiers <systemitem class="library">.so</systemitem>
|
|
||||||
de <filename class="directory">vidix/drivers</filename> dans le répertoire
|
|
||||||
<filename class="directory">mplayer/vidix</filename> relatif à votre
|
|
||||||
<filename>mplayer.exe</filename>.</para>
|
|
||||||
|
|
||||||
<para>Pour de meilleurs résultats <application>MPlayer</application> devrait
|
<para>Pour de meilleurs résultats <application>MPlayer</application> devrait
|
||||||
utiliser une palette que votre carte graphique supporte de façon matérielle.
|
utiliser une palette que votre carte graphique supporte de façon matérielle.
|
||||||
Malheureusement, de nombreux pilotes graphiques Windows renvoient certaines
|
Malheureusement, de nombreux pilotes graphiques Windows renvoient certaines palettes alors que la carte ne le supporte pas. Pour le vérifier, essayez
|
||||||
palettes alors que la carte ne le supporte pas. Pour le vérifier, essayez
|
<screen>
|
||||||
|
mplayer -benchmark -nosound -frames 100 -vf format=<replaceable>palette</replaceable> <replaceable>film</replaceable>
|
||||||
<screen>mplayer -benchmark -nosound -frames 100 -vf format=<replaceable>palette</replaceable> <replaceable>film</replaceable></screen>
|
</screen>
|
||||||
|
|
||||||
où <replaceable>palette</replaceable> peut être n'importe quelle palette
|
où <replaceable>palette</replaceable> peut être n'importe quelle palette
|
||||||
affichée par l'option <option>-vf format=fmt=help</option>. Si vous
|
affichée par l'option <option>-vf format=fmt=help</option>. Si vous
|
||||||
trouvez une palette que votre carte gère particulièrement mal,
|
trouvez une palette que votre carte gère particulièrement mal,
|
||||||
<option>-vf noformat=<replaceable>palette</replaceable></option>
|
<option>-vf noformat=<replaceable>palette</replaceable></option>
|
||||||
l'empèchera d'être utilisée. Ajouter cela à votre fichier de conf pour
|
l'empèchera d'être utilisée. Ajouter cela à votre fichier de conf pour
|
||||||
ne plus l'utiliser de façon permanente.</para>
|
ne plus l'utiliser de façon permanente.
|
||||||
|
</para>
|
||||||
|
|
||||||
<para>
|
|
||||||
There are special codec packages for Windows available on our
|
|
||||||
<ulink url="http://www.mplayerhq.hu/design7/codecs.html">codecs page</ulink>
|
|
||||||
to allow playing formats for which there is no native support yet.
|
|
||||||
Put the codecs somewhere in your path or pass
|
|
||||||
<option>--codecsdir=<replaceable>c:/path/to/your/codecs</replaceable></option>
|
|
||||||
(alternatively
|
|
||||||
<option>--codecsdir=<replaceable>/path/to/your/codecs</replaceable></option>
|
|
||||||
only on <application>Cygwin</application>) to <filename>configure</filename>.
|
|
||||||
We have had some reports that Real DLLs need to be writable by the user
|
|
||||||
running <application>MPlayer</application>, but only on some systems (NT4).
|
|
||||||
Try making them writable if you have problems.</para>
|
|
||||||
|
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Il y a des paquetages de codec spécial pour Windows disponible sur notre
|
Il y a des paquetages de codec spécial pour Windows disponible sur notre
|
||||||
<ulink url="http://www.mplayerhq.hu/design7/codecs.html">page de codecs</ulink>
|
<ulink url="http://www.mplayerhq.hu/design7/codecs.html">page de codecs</ulink>
|
||||||
pour permettre de jouer les formats qui ne sont pas encore nativement
|
pour permettre de jouer les formats qui ne sont pas encore nativement
|
||||||
supportés.
|
supportés.
|
||||||
Placez les codecs quelque part dans votre patch ou passez
|
Placez les codecs quelque part dans votre path ou passez
|
||||||
<option>--codecsdir=<replaceable>c:/chemin/de/vos/codecs</replaceable></option>
|
<option>--codecsdir=<replaceable>c:/chemin/de/vos/codecs</replaceable></option>
|
||||||
(éventuellement
|
(éventuellement
|
||||||
<option>--codecsdir=<replaceable>/chemin/de/vos/codecs</replaceable></option>
|
<option>--codecsdir=<replaceable>/chemin/de/vos/codecs</replaceable></option>
|
||||||
@ -666,40 +664,31 @@ accessibles en écriture pour l'utilisateur ayant lancé
|
|||||||
Essayez de les rendre accessibles en écriture si vous avez des problèmes.
|
Essayez de les rendre accessibles en écriture si vous avez des problèmes.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>Vous pouvez lire des VCDs en jouant les fichiers
|
<para>
|
||||||
|
Vous pouvez lire des VCDs en jouant les fichiers
|
||||||
<filename>.DAT</filename> ou <filename>.MPG</filename> que Windows affiche
|
<filename>.DAT</filename> ou <filename>.MPG</filename> que Windows affiche
|
||||||
sur les VCDs. Cela fonctionne tout simplement comme cela (changez la lettre
|
sur les VCDs. Cela fonctionne tout simplement comme cela (changez la lettre
|
||||||
de votre lecteur de CD-ROM):</para>
|
de votre lecteur de CD-ROM):
|
||||||
|
|
||||||
<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen>
|
<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen>
|
||||||
|
Vous pouvez aussi lire une piste VCD directement en utilisant :
|
||||||
<para>Les DVDs fonctionnent également, ajustez <option>-dvd-device</option>
|
<screen> mplayer vcd://<replaceable><track></replaceable> -cdrom-device <replaceable>d:</replaceable></screen>
|
||||||
à la lettre de votre lecteur DVD-ROM:</para>
|
Les DVDs fonctionnent également, ajustez <option>-dvd-device</option> à la lettre de votre lecteur DVD-ROM :
|
||||||
|
|
||||||
<screen>mplayer dvd://<replaceable><titre></replaceable> -dvd-device <replaceable>d</replaceable>:</screen>
|
<screen>mplayer dvd://<replaceable><titre></replaceable> -dvd-device <replaceable>d</replaceable>:</screen>
|
||||||
|
La console <application>Cygwin</application>/<application>MinGW</application>
|
||||||
<para>La console <application>Cygwin</application>/<application>MinGW</application>
|
est plutôt lente. Il semble que rediriger la sortie ou utiliser l'option
|
||||||
est plutôt lente. Il semble que rediriger la sortie
|
<option>-quiet</option> améliore les performances. Le rendu direct
|
||||||
ou utiliser l'option <option>-quiet</option> améliore les performances. Le
|
(<option>-dr</option>) peut également aider. Si la lecture est erratique,
|
||||||
rendu direct (<option>-dr</option>) peut également aider.
|
essayez <option>-autosync 100</option>. Si certaines de ces options vous sont
|
||||||
Si la lecture est erratique, essayez
|
utiles, vous pouvez les placer dans votre fichier de config.
|
||||||
<option>-autosync 100</option>. Si certaines de ces options vous sont utiles,
|
|
||||||
vous pouvez les placer dans votre fichier de config.</para>
|
|
||||||
|
|
||||||
<note>
|
|
||||||
|
|
||||||
<para>Sous Windows la détection CPU en cours d'execution (runtime CPU detection)
|
|
||||||
désactive le support SSE en raison de plantages récurrent et dur à tracer liés au SSE.
|
|
||||||
Si vous souhaitez avoir le support SSE sous Windows, vous devrez compiler sans
|
|
||||||
runtime CPU detection.
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<note>
|
||||||
<para>Si vous avez un Pentium 4 et que vous expériencez un plantage lors de l'utilisation
|
<para>Si vous avez un Pentium 4 et que vous expériencez un plantage lors de l'utilisation
|
||||||
des codecs RealPlayer vous pourriez vouloir désactiver le support hyperthreading.
|
des codecs RealPlayer vous pourriez vouloir désactiver le support hyperthreading.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</note>
|
</note>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="cygwin">
|
<sect2 id="cygwin">
|
||||||
<title><application>Cygwin</application></title>
|
<title><application>Cygwin</application></title>
|
||||||
@ -722,6 +711,7 @@ peuvent être trouvés sur le
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="mingw">
|
<sect2 id="mingw">
|
||||||
<title><application>MinGW</application></title>
|
<title><application>MinGW</application></title>
|
||||||
@ -747,10 +737,12 @@ et les librairies nécessaires sont disponibles sur
|
|||||||
MinGW HOWTO</ulink>.</para>
|
MinGW HOWTO</ulink>.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||||
|
|
||||||
|
|
||||||
<sect1 id="macos">
|
<sect1 id="macos">
|
||||||
<title>Mac OS</title>
|
<title>Mac OS</title>
|
||||||
|
|
||||||
@ -809,8 +801,12 @@ Vous pouvez ensuite lancer le script
|
|||||||
avec MacPorts):
|
avec MacPorts):
|
||||||
<screen>PKG_CONFIG_PATH=/opt/local/lib/pkgconfig/ PATH=$PATH:/opt/local/bin/ ./configure</screen>
|
<screen>PKG_CONFIG_PATH=/opt/local/lib/pkgconfig/ PATH=$PATH:/opt/local/bin/ ./configure</screen>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="osx_gui">
|
<sect2 id="osx_gui">
|
||||||
<title>MPlayer OS X GUI</title>
|
<title>MPlayer OS X GUI</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Vous pouvez obtenir un GUI natif et un binaire pré-compilé de
|
Vous pouvez obtenir un GUI natif et un binaire pré-compilé de
|
||||||
<application>MPlayer</application> pour Mac OS X depuis le projet
|
<application>MPlayer</application> pour Mac OS X depuis le projet
|
||||||
@ -852,37 +848,33 @@ mettre en place quelque chose comme ceci:
|
|||||||
<screen>
|
<screen>
|
||||||
MPlayer_repertoire_source
|
MPlayer_repertoire_source
|
||||||
|
|
|
|
||||||
|--->main (source SVN de MPlayer)
|
|--->main (source SVN de MPlayer)
|
||||||
|
|
|
|
||||||
|--->main_noaltivec (source SVN de MPlayer configuré avec --disable-altivec)
|
|--->main_noaltivec (source SVN de MPlayer configuré avec --disable-altivec)
|
||||||
|
|
|
|
||||||
|--->mplayerosx (source SVN MPlayerOSX)
|
\--->mplayerosx (source SVN MPlayerOSX)
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
Premièrement vous avez besoin de compiler main et main_noaltivec.
|
Premièrement vous avez besoin de compiler main et main_noaltivec.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Ensuite, réglez une variable globale:
|
Pour assurer une rétro compatibilité maximum, commencez par créer la variable d'environnement suivante :
|
||||||
|
|
||||||
<screen>export MACOSX_DEPLOYMENT_TARGET=10.3</screen>
|
<screen>export MACOSX_DEPLOYMENT_TARGET=10.3</screen>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Et, configure:
|
Et, configurez:
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Si vous configurez pour un CPU G4 ou au-dessus avec le support AltiVec,
|
Si vous configurez pour un CPU G4 (ou plus récent) avec le support AltiVec,
|
||||||
faire comme suit:
|
faites comme suit :
|
||||||
<screen>
|
<screen>
|
||||||
./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11
|
./configure --disable-gl --disable-x11
|
||||||
</screen>
|
</screen>
|
||||||
Si vous configurez pour un G3, faire comme suit:
|
Si vous configurez pour un G3 sans le support AltiVec, faites comme suit :
|
||||||
|
|
||||||
<screen>
|
<screen>
|
||||||
./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11
|
./configure --disable-gl --disable-x11 --disable-altivec
|
||||||
--disable-altivec
|
|
||||||
</screen>
|
</screen>
|
||||||
Vous pourriez avoir besoin d'éditer <filename>config.mak</filename> et
|
Vous pourriez avoir besoin d'éditer <filename>config.mak</filename> et
|
||||||
changer le
|
changer le
|
||||||
@ -892,14 +884,9 @@ changer le
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Continuez avec
|
Continuez avec
|
||||||
<screen>
|
<screen>make</screen>
|
||||||
make
|
|
||||||
</screen>
|
|
||||||
ensuite placez vous dans le répertoire mplayerosx et tapez
|
ensuite placez vous dans le répertoire mplayerosx et tapez
|
||||||
|
<screen>make dist</screen>
|
||||||
<screen>
|
|
||||||
make dist
|
|
||||||
</screen>
|
|
||||||
Cela créera une archive compressée <systemitem>.dmg</systemitem> avec le binaire
|
Cela créera une archive compressée <systemitem>.dmg</systemitem> avec le binaire
|
||||||
prêt à l'emploi.
|
prêt à l'emploi.
|
||||||
</para>
|
</para>
|
||||||
@ -912,6 +899,10 @@ du tout en fonction.
|
|||||||
</sect2>
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||||
|
|
||||||
|
|
||||||
<sect1 id="exotic_platforms">
|
<sect1 id="exotic_platforms">
|
||||||
<title>Plateformes Exotiques</title>
|
<title>Plateformes Exotiques</title>
|
||||||
|
|
||||||
@ -923,8 +914,11 @@ Pour les instructions de build vous devriez vous référer à la documentation
|
|||||||
spécifique du système.
|
spécifique du système.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="qnx">
|
<sect2 id="qnx">
|
||||||
<title>QNX</title>
|
<title>QNX</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Vous aurez besoin de télécharger et installer SDL pour QNX. Puis de lancer
|
Vous aurez besoin de télécharger et installer SDL pour QNX. Puis de lancer
|
||||||
<application>MPlayer</application> avec les options <option>-vo sdl:driver=photon</option> et
|
<application>MPlayer</application> avec les options <option>-vo sdl:driver=photon</option> et
|
||||||
@ -938,6 +932,8 @@ très lente.
|
|||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="amiga">
|
<sect2 id="amiga">
|
||||||
<title>Amiga/MorphOS (GeekGadgets)</title>
|
<title>Amiga/MorphOS (GeekGadgets)</title>
|
||||||
<para>
|
<para>
|
||||||
|
@ -8,11 +8,11 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
<application>MPlayer</application> utilise un ordre de lecture complexe.
|
<application>MPlayer</application> utilise un ordre de lecture complexe.
|
||||||
Il consiste en les options globales écrites en premier, par exemple
|
Les options globales sont écrites en premier, par exemple
|
||||||
|
|
||||||
<screen>mplayer -vfm 5</screen>
|
<screen>mplayer -vfm 5</screen>
|
||||||
|
|
||||||
et les options écrites après les noms de fichier, qui s'appliquent
|
et les options écrites après les noms de fichier s'appliquent
|
||||||
uniquement au nom de fichier/URL/autre donné, par exemple
|
uniquement au nom de fichier/URL/autre donné, par exemple
|
||||||
|
|
||||||
<screen>mplayer -vfm 5 <replaceable>film1.avi</replaceable> <replaceable>film2.avi</replaceable> -vfm 4</screen>
|
<screen>mplayer -vfm 5 <replaceable>film1.avi</replaceable> <replaceable>film2.avi</replaceable> -vfm 4</screen>
|
||||||
@ -386,8 +386,8 @@ depuis le réseau:
|
|||||||
<sect2 id="streaming-save">
|
<sect2 id="streaming-save">
|
||||||
<title>Sauvegarder du contenu flux</title>
|
<title>Sauvegarder du contenu flux</title>
|
||||||
<para>
|
<para>
|
||||||
Une fois que vous avez réussi à faire <application>MPlayer</application> lire
|
Une fois que vous avez réussi à faire lire
|
||||||
votre flux internet favorit, vous pouvez utiliser l'option
|
votre flux internet favorit par <application>MPlayer</application>, vous pouvez utiliser l'option
|
||||||
<option>-dumpstream</option> pour sauvegarder le flux dans un fichier.
|
<option>-dumpstream</option> pour sauvegarder le flux dans un fichier.
|
||||||
Par exemple:
|
Par exemple:
|
||||||
<screen>
|
<screen>
|
||||||
@ -579,15 +579,15 @@ explication.
|
|||||||
Les DVDs ont habituellement l'audio surround encodé en format AC-3 (Dolby Digital) ou DTS
|
Les DVDs ont habituellement l'audio surround encodé en format AC-3 (Dolby Digital) ou DTS
|
||||||
(Digital Theater System). Certains équipements audio moderne sont capables de
|
(Digital Theater System). Certains équipements audio moderne sont capables de
|
||||||
décoder ces formats de façon interne. <application>MPlayer</application> peut être
|
décoder ces formats de façon interne. <application>MPlayer</application> peut être
|
||||||
configuré pour relayer les données audio sans le décodé. Cela ne marchera que si
|
configuré pour relayer les données audio sans les décoder. Cela ne marchera que si
|
||||||
vous avez you have une connectique S/PDIF (Sony/Philips Digital Interface) sur
|
vous avez une connectique S/PDIF (Sony/Philips Digital Interface) sur
|
||||||
votre carte son.
|
votre carte son.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Si votre équipement audio peux décoder AC-3 et DTS, vous pouvez sans risque activer
|
Si votre équipement audio peux décoder AC-3 et DTS, vous pouvez sans risque activer
|
||||||
le passthrough pour les deux formats. Autrement, activez le passthrough pour le seul format
|
le passthrough pour les deux formats. Autrement, activez le passthrough pour le seul format
|
||||||
votre équipement supporte.
|
que votre équipement supporte.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
@ -853,11 +853,11 @@ trouver la bonne valeur. Par exemple:
|
|||||||
|
|
||||||
|
|
||||||
<sect3 id="advaudio-channels-copying">
|
<sect3 id="advaudio-channels-copying">
|
||||||
<title>Copié/Déplacé le canal</title>
|
<title>Copier/Déplacer le canal</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Le filtre <option>channels</option> peut déplacer n'importe lequel ou tous les canaux.
|
Le filtre <option>channels</option> peut déplacer n'importe lequel ou tous les canaux.
|
||||||
Parametré toutes les sous-options pour le filtre <option>channels</option>
|
Parametrer toutes les sous-options pour le filtre <option>channels</option>
|
||||||
peut être compliqué et prend peu d'attention.
|
peut être compliqué et prend peu d'attention.
|
||||||
|
|
||||||
<orderedlist spacing="compact">
|
<orderedlist spacing="compact">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r26711 -->
|
<!-- synced with r26925 -->
|
||||||
<chapter id="encoding-guide">
|
<chapter id="encoding-guide">
|
||||||
<title>Kódolás a <application>MEncoder</application>rel</title>
|
<title>Kódolás a <application>MEncoder</application>rel</title>
|
||||||
|
|
||||||
@ -2134,7 +2134,7 @@ felépítéséhez (ennek vannak hátrányai - lásd a 3. módszert).
|
|||||||
választhatsz, mindegyiknek megvan a maga előnye és hátránya.
|
választhatsz, mindegyiknek megvan a maga előnye és hátránya.
|
||||||
Lásd az <option>mplayer -pphelp</option> és az
|
Lásd az <option>mplayer -pphelp</option> és az
|
||||||
<option>mplayer -vf help</option> kimenetét, hogy megtudd, mit
|
<option>mplayer -vf help</option> kimenetét, hogy megtudd, mit
|
||||||
használhatsz (grep-pelj a "deint"-re), olvasd el Michael's Niedermayer
|
használhatsz (grep-pelj a "deint"-re), olvasd el Michael Niedermayer
|
||||||
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing szűrő összehasonlítását</ulink>,
|
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing szűrő összehasonlítását</ulink>,
|
||||||
és keress az
|
és keress az
|
||||||
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r25771 -->
|
<!-- synced with r26936 -->
|
||||||
<chapter id="ports" xreflabel="Ports">
|
<chapter id="ports" xreflabel="Ports">
|
||||||
<title>Portok</title>
|
<title>Portok</title>
|
||||||
|
|
||||||
@ -602,12 +602,10 @@ van és egy kis kézi állítgatás kell hozzá. Töltsd le a
|
|||||||
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> vagy
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> vagy
|
||||||
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (MTRR támogatással)</ulink>
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (MTRR támogatással)</ulink>
|
||||||
fájlt és másold be a <filename class="directory">vidix/dhahelperwin</filename> könyvtárba
|
fájlt és másold be a <filename class="directory">vidix/dhahelperwin</filename> könyvtárba
|
||||||
az <application>MPlayer</application> forrás fádban. Nyisd meg a konzolt
|
az <application>MPlayer</application> forrás fádban.
|
||||||
és válts át erre a könyvtárra, majd írd be
|
Nyisd meg a konzolt és írd be:
|
||||||
<screen>gcc -o dhasetup.exe dhasetup.c</screen>
|
<screen>make install-dhahelperwin</screen>
|
||||||
és futtasd
|
adminisztrátorként. Ezután újra kell indítanod a gépet.
|
||||||
<screen>dhasetup.exe install</screen>
|
|
||||||
Adminisztrátorként. Ezután újra kell indítanod a gépet.
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r26073 -->
|
<!-- synced with r26914 -->
|
||||||
<chapter id="video">
|
<chapter id="video">
|
||||||
<title>Videó kimeneti eszközök</title>
|
<title>Videó kimeneti eszközök</title>
|
||||||
|
|
||||||
@ -862,15 +862,14 @@ Ezen vezérlő Linux 2.6.x alatti verziója itt található:
|
|||||||
<procedure>
|
<procedure>
|
||||||
<title>Telepítés:</title>
|
<title>Telepítés:</title>
|
||||||
<step><para>
|
<step><para>
|
||||||
A használatához először <filename>mga_vid.o</filename>-t kell forgatnod:
|
A használatához először le kell fordítanod a <filename>drivers/mga_vid.o</filename> fájt:
|
||||||
<screen>
|
<screen>
|
||||||
cd drivers
|
make drivers<!--
|
||||||
make<!--
|
|
||||||
--></screen>
|
--></screen>
|
||||||
</para></step>
|
</para></step>
|
||||||
<step><para>
|
<step><para>
|
||||||
Ezután futtasd (<systemitem class="username">root</systemitem>-ként) a
|
Ezután futtasd (<systemitem class="username">root</systemitem>-ként) a
|
||||||
<screen>make install</screen>
|
<screen>make install-drivers</screen>
|
||||||
parancsot, ami telepíti a modult és létrehozza az eszköz node-ját neked.
|
parancsot, ami telepíti a modult és létrehozza az eszköz node-ját neked.
|
||||||
Töltsd be a vezérlőt
|
Töltsd be a vezérlőt
|
||||||
<screen>insmod mga_vid.o</screen>
|
<screen>insmod mga_vid.o</screen>
|
||||||
@ -950,14 +949,13 @@ az alábbi utasítások alapján.
|
|||||||
<procedure>
|
<procedure>
|
||||||
<title>A tdfx_vid.o kernel modul telepítése:</title>
|
<title>A tdfx_vid.o kernel modul telepítése:</title>
|
||||||
<step><para>
|
<step><para>
|
||||||
Fordítsd le a <filename>tdfx_vid.o</filename> fájlt:
|
Fordítsd le a <filename>drivers/tdfx_vid.o</filename> fájlt:
|
||||||
<screen>
|
<screen>
|
||||||
cd drivers
|
make drivers</screen>
|
||||||
make</screen>
|
|
||||||
</para></step>
|
</para></step>
|
||||||
<step><para>
|
<step><para>
|
||||||
Ezután futtasd (<systemitem class="username">root</systemitem>-ként) a
|
Ezután futtasd (<systemitem class="username">root</systemitem>-ként) a
|
||||||
<screen>make install</screen>
|
<screen>make install-drivers</screen>
|
||||||
parancsot, ami telepíti a modult és létrehozza az eszköz node-ját neked.
|
parancsot, ami telepíti a modult és létrehozza az eszköz node-ját neked.
|
||||||
Töltsd be a vezérlőt
|
Töltsd be a vezérlőt
|
||||||
<screen>insmod tdfx_vid.o</screen>
|
<screen>insmod tdfx_vid.o</screen>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- 38% synced with r22753 (row 2069) -->
|
<!-- 41% synced with r22753 (row 2212) -->
|
||||||
<chapter id="encoding-guide">
|
<chapter id="encoding-guide">
|
||||||
<title>La codifica con <application>MEncoder</application></title>
|
<title>La codifica con <application>MEncoder</application></title>
|
||||||
|
|
||||||
@ -978,9 +978,6 @@ perciò potresti voler comunque effettuare il ridimensionamento.
|
|||||||
<title>Scegliere la risoluzione e il bitrate</title>
|
<title>Scegliere la risoluzione e il bitrate</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Other parameters such as scaling, cropping, etc. will
|
|
||||||
<emphasis role="bold">not</emphasis> alter the file size unless you
|
|
||||||
change the bitrate as well!.
|
|
||||||
A meno che tu non stia per codificare con quantizzazione costante devi
|
A meno che tu non stia per codificare con quantizzazione costante devi
|
||||||
impostare un bitrate.
|
impostare un bitrate.
|
||||||
La logica del bitrate è abbastanza semplice.
|
La logica del bitrate è abbastanza semplice.
|
||||||
@ -2067,21 +2064,22 @@ il pattern del telecine.
|
|||||||
<!-- ********** -->
|
<!-- ********** -->
|
||||||
|
|
||||||
<sect2 id="menc-feat-telecine-encode">
|
<sect2 id="menc-feat-telecine-encode">
|
||||||
<title>How to encode each category</title>
|
<title>Come codificare ciascuna categoria</title>
|
||||||
<para>
|
<para>
|
||||||
As I mentioned in the beginning, example <application>MEncoder</application>
|
Come menzionato all'inizio, le linee di esempio qui sotto per
|
||||||
lines below are <emphasis role="bold">not</emphasis> meant to actually be used;
|
<application>MEncoder</application> <emphasis role="bold">non</emphasis> sono
|
||||||
they only demonstrate the minimum parameters to properly encode each category.
|
pensate per essere usate davvero; dimostrano solamente i parametri minimi per
|
||||||
|
codificare correttamente ciascuna categoria.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
<sect3 id="menc-feat-telecine-encode-progressive">
|
<sect3 id="menc-feat-telecine-encode-progressive">
|
||||||
<title>Progressive</title>
|
<title>Progressivo</title>
|
||||||
<para>
|
<para>
|
||||||
Progressive video requires no special filtering to encode. The only
|
Il video progressivo non richiede particolari filtri per la codifica. L'unico
|
||||||
parameter you need to be sure to use is <option>-ofps 24000/1001</option>.
|
parametrioche devi assicurarti di usare è <option>-ofps 24000/1001</option>.
|
||||||
Otherwise, <application>MEncoder</application>
|
Se non lo usi, <application>MEncoder</application> cercherà di codificare a
|
||||||
will try to encode at 30000/1001 fps and will duplicate frames.
|
30000/1001 fps e duplicherà i fotogrammi.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@ -2089,108 +2087,105 @@ will try to encode at 30000/1001 fps and will duplicate frames.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
It is often the case, however, that a video that looks progressive
|
Spesso e volentieri capita che un video che sembra progressivo contenga anche
|
||||||
actually has very short parts of telecine mixed in. Unless you are
|
alcune brevi parti di telecine miscelate. A meno che tu non sia sicuro,
|
||||||
sure, it is safest to treat the video as
|
conviene trattare il video come
|
||||||
<link linkend="menc-feat-telecine-encode-mixedpt">mixed progressive and telecine</link>.
|
<link linkend="menc-feat-telecine-encode-mixedpt">progressivo e telecine miscelati</link>.
|
||||||
The performance loss is small
|
Il calo di prestazioni è piccolo
|
||||||
<link linkend="menc-feat-telecine-footnotes">[3]</link>.
|
<link linkend="menc-feat-telecine-footnotes">[3]</link>.
|
||||||
</para>
|
</para>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
|
|
||||||
<sect3 id="menc-feat-telecine-encode-telecined">
|
<sect3 id="menc-feat-telecine-encode-telecined">
|
||||||
<title>Telecined</title>
|
<title>Telecine</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Telecine can be reversed to retrieve the original 24000/1001 content,
|
Il telecine può essere invertito per ricavare il contenuto originario a
|
||||||
using a process called inverse-telecine.
|
24000/1001 usando un processo conosciuto come telecine-inverso.
|
||||||
<application>MPlayer</application> contains several filters to
|
<application>MPlayer</application> include vari filtri per ottenere ciò;
|
||||||
accomplish this; the best filter, <option>pullup</option>, is described
|
il filtro migliore, <option>pullup</option>, è descritto nella sezione
|
||||||
in the <link linkend="menc-feat-telecine-encode-mixedpt">mixed
|
<link linkend="menc-feat-telecine-encode-mixedpt">progressivo e telecine
|
||||||
progressive and telecine</link> section.
|
miscelati</link>.
|
||||||
</para>
|
</para>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
|
|
||||||
<sect3 id="menc-feat-telecine-encode-interlaced">
|
<sect3 id="menc-feat-telecine-encode-interlaced">
|
||||||
<title>Interlaced</title>
|
<title>Interlacciato</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
For most practical cases it is not possible to retrieve a complete
|
Nella maggior parte dei casi reali non è possibile ricavare un video
|
||||||
progressive video from interlaced content. The only way to do so
|
progressivo completo da contenuto interlacciato. L'unico modo di farlo senza
|
||||||
without losing half of the vertical resolution is to double the
|
perdere metà della risoluzione verticale è raddoppiare il framerate e provare
|
||||||
framerate and try to "guess" what ought to make up the
|
ad "indovinare" quello che forma le linee corrispondenti per ogni campo
|
||||||
corresponding lines for each field (this has drawbacks - see method 3).
|
(questo ha delle controindicazioni - vedi il metodo 3).
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<orderedlist>
|
<orderedlist>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Encode the video in interlaced form. Normally, interlacing wreaks
|
Codifica il video in forma interlacciata. Normalmente l'interlacciatura fa a
|
||||||
havoc with the encoder's ability to compress well, but
|
pugni con l'abilità del codificatore di comprimere bene, ma
|
||||||
<systemitem class="library">libavcodec</systemitem> has two
|
<systemitem class="library">libavcodec</systemitem> ha due parametri
|
||||||
parameters specifically for dealing with storing interlaced video a
|
appositamente per gestire un pochino meglio il video interlacciato:
|
||||||
bit better: <option> ildct</option> and <option>ilme</option>. Also,
|
<option>ildct</option> e <option>ilme</option>. Inoltre viene caldamente
|
||||||
using <option>mbd=2</option> is strongly recommended
|
consigliato l'utilizzo di <option>mbd=2</option>
|
||||||
<link linkend="menc-feat-telecine-footnotes">[2] </link> because it
|
<link linkend="menc-feat-telecine-footnotes">[2] </link> poiché
|
||||||
will encode macroblocks as non-interlaced in places where there is
|
codificherà i macroblocchi come non interlacciati in posti dove non c'è
|
||||||
no motion. Note that <option>-ofps</option> is NOT needed here.
|
movimento. Nota che <option>-ofps</option> qui NON serve.
|
||||||
<screen>mencoder dvd://1 -oac copy -ovc lavc -lavcopts ildct:ilme:mbd=2</screen>
|
<screen>mencoder dvd://1 -oac copy -ovc lavc -lavcopts ildct:ilme:mbd=2</screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Use a deinterlacing filter before encoding. There are several of
|
Usa un filtro di de-interlacciatura prima della codifica. Ci sono vari filtri
|
||||||
these filters available to choose from, each with its own advantages
|
disponibili tra cui scegliere, ognuno dei quali con i suoi pro e i suoi
|
||||||
and disadvantages. Consult <option>mplayer -pphelp</option> and
|
contro. Controlla <option>mplayer -pphelp</option> e
|
||||||
<option>mplayer -vf help</option> to see what is available
|
<option>mplayer -vf help</option> per vedere cosa c'è disponibile
|
||||||
(grep for "deint"), read Michael's Niedermayer
|
(fa in grep per "deint"), leggi il <ulink url="http://guru.multimedia.cx/deinterlacing-filters/">confronto tra filtri di deinterlacciatura
|
||||||
<ulink url="http://guru.multimedia.cx/deinterlacing-filters/">Deinterlacing filters comparison</ulink>,
|
(Deinterlacing filters comparison)</ulink> di Michael Niedermayer, e cerca
|
||||||
and search the
|
nelle <ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
||||||
<ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">
|
mailing list di MPlayer</ulink> per trovare discussioni riguardanti i vari
|
||||||
MPlayer mailing lists</ulink> to find many discussions about the
|
filtri.
|
||||||
various filters.
|
Di nuovo il framerate non cambia, indi niente <option>-ofps</option>.
|
||||||
Again, the framerate is not changing, so no
|
Inoltre, la deinterlacciatura dovrebbe essere eseguita dopo il ritaglio
|
||||||
<option>-ofps</option>. Also, deinterlacing should be done after
|
<link linkend="menc-feat-telecine-footnotes">[1]</link> e prima del
|
||||||
cropping <link linkend="menc-feat-telecine-footnotes">[1]</link> and
|
ridimensionamento.
|
||||||
before scaling.
|
|
||||||
<screen>mencoder dvd://1 -oac copy -vf yadif -ovc lavc</screen>
|
<screen>mencoder dvd://1 -oac copy -vf yadif -ovc lavc</screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Unfortunately, this option is buggy with
|
Sfortunatamente, quest'opzione non funziona bene con
|
||||||
<application>MEncoder</application>; it ought to work well with
|
<application>MEncoder</application>; dovrebbe funzionar bene con
|
||||||
<application>MEncoder G2</application>, but that is not here yet. You
|
<application>MEncoder G2</application>, ma ancora non esiste. Puoi subire
|
||||||
might experience crahes. Anyway, the purpose of <option> -vf
|
dei crash. Tuttavia l'obiettivo di <option>-vf tfields</option> è di
|
||||||
tfields</option> is to create a full frame out of each field, which
|
generare un fotogramma completo da ogni campo, portando il framerate a
|
||||||
makes the framerate 60000/1001. The advantage of this approach is that no
|
60000/1001. Il vantaggio di questo approccio è che non viene mai perso alcun
|
||||||
data is ever lost; however, since each frame comes from only one
|
dato; d'altro canto, dato che ogni fotogramma deriva da un solo campo, le
|
||||||
field, the missing lines have to be interpolated somehow. There are
|
righe mancanti devono essere interpolate in qualche modo. Non ci sono metodi
|
||||||
no very good methods of generating the missing data, and so the
|
veramente validi per ricreare i dati mancanti, quindi il risultato apparirà
|
||||||
result will look a bit similar to when using some deinterlacing
|
molto simile a quando vengono usati dei filtri di deinterlacciatura.
|
||||||
filters. Generating the missing lines creates other issues, as well,
|
La generazione delle righe che mancano è foriera di altri problemi,
|
||||||
simply because the amount of data doubles. So, higher encoding
|
solamente per il fatto che i dati sono raddoppiati. Conseguentemente per
|
||||||
bitrates are required to maintain quality, and more CPU power is
|
mantenere la qualità si rendono necessari bitrate più elevati e viene usata
|
||||||
used for both encoding and decoding. tfields has several different
|
una maggior potenza di CPU sia per la codifica che la decodifica.
|
||||||
options for how to create the missing lines of each frame. If you
|
tfields ha varie opzioni su come generare le righe mancanti di ogni
|
||||||
use this method, then Reference the manual, and chose whichever
|
fotogramma. Se usi questo metodo, fai riferimento al manuale, e scegli
|
||||||
option looks best for your material. Note that when using
|
l'opzione che può andar meglio per il tuo materiale sorgente. Fai attenzione
|
||||||
<option>tfields</option> you
|
che usando <option>tfields</option> <emphasis role="bold">devi</emphasis>
|
||||||
<emphasis role="bold">have to</emphasis> specify both
|
specificare sia <option>-fps</option> che <option>-ofps</option> pari al
|
||||||
<option>-fps</option> and <option>-ofps</option> to be twice the
|
doppio della sorgente originaria.
|
||||||
framerate of your original source.
|
|
||||||
<screen>
|
<screen>
|
||||||
mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc \
|
mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc \
|
||||||
-fps 60000/1001 -ofps 60000/1001<!--
|
-fps 60000/1001 -ofps 60000/1001<!--
|
||||||
--></screen>
|
--></screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
If you plan on downscaling dramatically, you can extract and encode
|
Se conti di ridurre drasticamente le dimensioni puoi estrarre e decodificare
|
||||||
only one of the two fields. Of course, you will lose half the vertical
|
sono uno dei due campi. Perderai di sicuro metà della risoluzione verticale,
|
||||||
resolution, but if you plan on downscaling to at most 1/2 of the
|
ma se pensi di ridurla almeno a 1/2 dell'originale, la perdità non sarà poi
|
||||||
original, the loss will not matter much. The result will be a
|
molta. Il risultato sarà un file progressivo a 30000/1001 fotogrammi per
|
||||||
progressive 30000/1001 frames per second file. The procedure is to use
|
secondo. La procedura è utilizzare <option>-vf field</option>, poi crop
|
||||||
<option>-vf field</option>, then crop
|
<link linkend="menc-feat-telecine-footnotes">[1]</link> e scale in modo
|
||||||
<link linkend="menc-feat-telecine-footnotes">[1]</link> and scale
|
corretto. Ricorda che dovrai correggere scale per compensare la risoluzione
|
||||||
appropriately. Remember that you will have to adjust the scale to
|
verticale dimezzata.
|
||||||
compensate for the vertical resolution being halved.
|
|
||||||
<screen>mencoder dvd://1 -oac copy -vf field=0 -ovc lavc</screen>
|
<screen>mencoder dvd://1 -oac copy -vf field=0 -ovc lavc</screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</orderedlist>
|
</orderedlist>
|
||||||
@ -2198,19 +2193,18 @@ mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc \
|
|||||||
|
|
||||||
|
|
||||||
<sect3 id="menc-feat-telecine-encode-mixedpt">
|
<sect3 id="menc-feat-telecine-encode-mixedpt">
|
||||||
<title>Mixed progressive and telecine</title>
|
<title>Progressivo e telecine miscelati</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
In order to turn mixed progressive and telecine video into entirely
|
Per poter portare un video progressivo e telecine miscelati in un video
|
||||||
progressive video, the telecined parts have to be
|
completamente progressivo, le parti in telecine devono essere passate in
|
||||||
inverse-telecined. There are three ways to accomplish this,
|
telecine inverso. Ci son tre modi per ottenere ciò, e sono descritti qui sotto.
|
||||||
described below. Note that you should
|
Nota che dovresti <emphasis role="bold">sempre</emphasis> effettuare il
|
||||||
<emphasis role="bold">always</emphasis> inverse-telecine before any
|
telecine inverso prima di ogni ridimensionamento; a meno che tu non sappia
|
||||||
rescaling; unless you really know what you are doing,
|
davvero cosa tu stia facendo, applica il telecine inverso anche prima del ritaglio (crop)
|
||||||
inverse-telecine before cropping, too
|
|
||||||
<link linkend="menc-feat-telecine-footnotes">[1]</link>.
|
<link linkend="menc-feat-telecine-footnotes">[1]</link>.
|
||||||
<option>-ofps 24000/1001</option> is needed here because the output video
|
In questo caso serve <option>-ofps 24000/1001</option> perché il video in
|
||||||
will be 24000/1001 frames per second.
|
uscita sarà a 24000/1001 fotogrammi al secondo.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r26146 -->
|
<!-- synced with r26729 -->
|
||||||
<chapter id="codecs">
|
<chapter id="codecs">
|
||||||
<title>Поддерживаемые кодеки</title>
|
<title>Поддерживаемые кодеки</title>
|
||||||
|
|
||||||
@ -190,8 +190,8 @@
|
|||||||
<para>
|
<para>
|
||||||
<ulink url="http://developers.videolan.org/x264.html"><systemitem class="library">x264</systemitem></ulink> -
|
<ulink url="http://developers.videolan.org/x264.html"><systemitem class="library">x264</systemitem></ulink> -
|
||||||
это библиотека для создания
|
это библиотека для создания
|
||||||
видеопотоков H.264. Она не завершена на 100%, но, по крайней мере, имеет
|
видеопотоков H.264. Она не завершена на 100%, но,
|
||||||
поддержку большинства возможностей H.264, влияющих на качество.
|
поддерживает большинства возможностей H.264, влияющих на качество.
|
||||||
В спецификации H.264 присутствует множество дополнительных возможностей,
|
В спецификации H.264 присутствует множество дополнительных возможностей,
|
||||||
которые сами по себе никак не влияют на качество видео и до сих в
|
которые сами по себе никак не влияют на качество видео и до сих в
|
||||||
<systemitem class="library">x264</systemitem> не реализованы.
|
<systemitem class="library">x264</systemitem> не реализованы.
|
||||||
@ -296,9 +296,9 @@ DVD-разрешением требует около 10% CPU. Это означ
|
|||||||
<sect3 id="codec-x264-encode">
|
<sect3 id="codec-x264-encode">
|
||||||
<title>Как кодировать видео, используя <application>MEncoder</application> и <systemitem class="library">x264</systemitem>?</title>
|
<title>Как кодировать видео, используя <application>MEncoder</application> и <systemitem class="library">x264</systemitem>?</title>
|
||||||
<para>
|
<para>
|
||||||
Если у вас установлен клиент subversion, последнюю версию x264
|
Если у вас установлен клиент GIT, последнюю версию x264
|
||||||
можно загрузить следующей командой:
|
можно загрузить следующей командой:
|
||||||
<screen>svn co svn://svn.videolan.org/x264/trunk x264</screen>
|
<screen>git clone git://git.videolan.org/x264.git</screen>
|
||||||
Исходный код <application>MPlayer</application> обновляется
|
Исходный код <application>MPlayer</application> обновляется
|
||||||
всякий раз при изменении API <systemitem class="library">x264</systemitem>,
|
всякий раз при изменении API <systemitem class="library">x264</systemitem>,
|
||||||
так что предлагается использовать Subversion версию
|
так что предлагается использовать Subversion версию
|
||||||
@ -306,7 +306,7 @@ DVD-разрешением требует около 10% CPU. Это означ
|
|||||||
возможно, ситуация изменится с выходом "релиза"
|
возможно, ситуация изменится с выходом "релиза"
|
||||||
<systemitem class="library">x264</systemitem> (если он будет).
|
<systemitem class="library">x264</systemitem> (если он будет).
|
||||||
В данный момент <systemitem class="library">x264</systemitem> следует
|
В данный момент <systemitem class="library">x264</systemitem> следует
|
||||||
рассматривать как очень нестабильный, в свете постоянного изменения
|
рассматривать как не совсем стабильный, в свете постоянного изменения
|
||||||
интерфейса программирования.
|
интерфейса программирования.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r25308 -->
|
<!-- synced with r26711 -->
|
||||||
<chapter id="encoding-guide">
|
<chapter id="encoding-guide">
|
||||||
<title>Кодирование с <application>MEncoder</application></title>
|
<title>Кодирование с <application>MEncoder</application></title>
|
||||||
|
|
||||||
@ -1943,7 +1943,7 @@ mkvmerge -o <replaceable>выходной_файл.mkv</replaceable> <replaceabl
|
|||||||
<formalpara>
|
<formalpara>
|
||||||
<title>Замечание о числах.</title>
|
<title>Замечание о числах.</title>
|
||||||
<para>
|
<para>
|
||||||
Многие документы, включая указанное выше руководство, ссылаются
|
Многие документы, включая указанную выше статью, ссылаются
|
||||||
на количество полей в секунду 59.94 для NTSC видео и
|
на количество полей в секунду 59.94 для NTSC видео и
|
||||||
соответствующие кадровые частоты 29.97 (для подверженного
|
соответствующие кадровые частоты 29.97 (для подверженного
|
||||||
телесину и чересстрочного видео) и 23.976 (для построчного).
|
телесину и чересстрочного видео) и 23.976 (для построчного).
|
||||||
@ -2034,7 +2034,9 @@ DVD плееры читают флаг, включенный в видеопот
|
|||||||
рипы или тонко настроить
|
рипы или тонко настроить
|
||||||
<systemitem class="library">libavcodec</systemitem> для
|
<systemitem class="library">libavcodec</systemitem> для
|
||||||
достижения максимального качества, не входит в рамки данного
|
достижения максимального качества, не входит в рамки данного
|
||||||
раздела.
|
раздела; обратитесь к другим разделам
|
||||||
|
<link linkend="encoding-guide">Руководства по кодированию
|
||||||
|
с MEncoder</link>.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Есть несколько сносок, специфичных для данного руководства,
|
Есть несколько сносок, специфичных для данного руководства,
|
||||||
@ -2391,6 +2393,24 @@ mencoder dvd://1 -oac copy -vf pullup,softskip \
|
|||||||
-ovc lavc -ofps 24000/1001<!--
|
-ovc lavc -ofps 24000/1001<!--
|
||||||
--></screen>
|
--></screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<option>-vf filmdint</option> похожа на
|
||||||
|
<option>-vf pullup</option>: оба фильтра пытаются сопоставить пару полей
|
||||||
|
для формирования полного кадра. Однако <option>filmdint</option> будет
|
||||||
|
производить деинтерлейсинг одиночных полей, которым не может найти пару,
|
||||||
|
в то время как <option>pullup</option> попросту их отбросит.
|
||||||
|
Вдобавок фильтры имеют различные алгоритмы анализа, и filmdint
|
||||||
|
имеет тенденцию к более частому нахождению соответствий.
|
||||||
|
Какой фильтр будет лучше работать зависит от исходного видео и
|
||||||
|
личного вкуса; не бойтесь экспериментировать с тонкой настройкой
|
||||||
|
опций фильтров, если у вас возникли проблемы с любым из них (подробности
|
||||||
|
смотрите на странице руководства man). Для большинства качественного
|
||||||
|
исходного видео, однако, оба фильтра работают достаточно хорошо,
|
||||||
|
так что начинать работать можно с любым из них.
|
||||||
|
<screen>
|
||||||
|
mencoder dvd://1 -oac copy -vf filmdint -ovc lavc -ofps 24000/1001<!--
|
||||||
|
--></screen>
|
||||||
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Более старый метод заключается не в применении обратного телесина к
|
Более старый метод заключается не в применении обратного телесина к
|
||||||
телесиненным частям, а, наоборот, в телесине не подверженных телесину частей и
|
телесиненным частям, а, наоборот, в телесине не подверженных телесину частей и
|
||||||
@ -2403,18 +2423,6 @@ mencoder dvd://1 -oac copy -vf pullup,softskip \
|
|||||||
mencoder dvd://1 -oac copy -vf softpulldown,ivtc=1 -ovc lavc -ofps 24000/1001
|
mencoder dvd://1 -oac copy -vf softpulldown,ivtc=1 -ovc lavc -ofps 24000/1001
|
||||||
</screen>
|
</screen>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
|
||||||
Лично я не использовал <option>-vf filmdint</option>, но вот что сказал
|
|
||||||
Д Ричарт Фелкер III (D Richard Felker III):
|
|
||||||
|
|
||||||
<blockquote><para>С ним все в порядке, но имхо он слишком часто пытается
|
|
||||||
сделать деинтерлейс iвместо обратного телесина (в точности как аппаратные
|
|
||||||
DVD проигрыватели & построчное TV), что в результате дает мерзкое
|
|
||||||
мерцание и другие артефакты. Если собираетесь его использовать, потребуется
|
|
||||||
как минимум потратить немного времени для тонкой настройки опций и
|
|
||||||
просмотра результата, чтобы убедиться, что он не испорчен.
|
|
||||||
</para></blockquote>
|
|
||||||
</para></listitem>
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
@ -5649,7 +5657,7 @@ mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:tsaf:telecine \
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
||||||
scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
|
vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
|
||||||
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 25 \
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
||||||
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5664,7 +5672,7 @@ vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 25 \
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
|
||||||
scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
|
vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
|
||||||
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 30000/1001 \
|
vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
||||||
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5678,7 +5686,7 @@ vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 30000/1001 \
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
||||||
scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:\
|
vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:\
|
||||||
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 \
|
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 25 \
|
||||||
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
@ -5692,7 +5700,7 @@ vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 \
|
|||||||
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
|
||||||
scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
|
||||||
vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:\
|
vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:\
|
||||||
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 \
|
vbitrate=1152:vrc_maxrate=1152:acodec=mp2:abitrate=224:aspect=16/9 -ofps 30000/1001 \
|
||||||
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
-o <replaceable>фильм.mpg</replaceable> <replaceable>фильм.avi</replaceable>
|
||||||
</screen>
|
</screen>
|
||||||
</para>
|
</para>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- synced with r24342 -->
|
<!-- synced with r26258 -->
|
||||||
<chapter id="mencoder">
|
<chapter id="mencoder">
|
||||||
<title>Основы использования <application>MEncoder</application></title>
|
<title>Основы использования <application>MEncoder</application></title>
|
||||||
|
|
||||||
|
239
Makefile
239
Makefile
@ -512,9 +512,10 @@ SRCS_MPLAYER = mplayer.c \
|
|||||||
libvo/vo_yuv4mpeg.c \
|
libvo/vo_yuv4mpeg.c \
|
||||||
$(addprefix libvo/,$(VO_SRCS)) \
|
$(addprefix libvo/,$(VO_SRCS)) \
|
||||||
|
|
||||||
|
SRCS_MPLAYER-$(APPLE_IR) += input/appleir.c
|
||||||
SRCS_MPLAYER-$(APPLE_REMOTE) += input/ar.c
|
SRCS_MPLAYER-$(APPLE_REMOTE) += input/ar.c
|
||||||
|
SRCS_MPLAYER-$(GUI) += gui/bitmap.c
|
||||||
SRCS_MPLAYER-$(GUI_GTK) += gui/app.c \
|
SRCS_MPLAYER-$(GUI_GTK) += gui/app.c \
|
||||||
gui/bitmap.c \
|
|
||||||
gui/cfg.c \
|
gui/cfg.c \
|
||||||
gui/interface.c \
|
gui/interface.c \
|
||||||
gui/mplayer/gui_common.c \
|
gui/mplayer/gui_common.c \
|
||||||
@ -540,8 +541,7 @@ SRCS_MPLAYER-$(GUI_GTK) += gui/app.c \
|
|||||||
gui/wm/ws.c \
|
gui/wm/ws.c \
|
||||||
gui/wm/wsxdnd.c \
|
gui/wm/wsxdnd.c \
|
||||||
|
|
||||||
SRCS_MPLAYER-$(GUI_WIN32) += gui/bitmap.c \
|
SRCS_MPLAYER-$(GUI_WIN32) += gui/win32/dialogs.c \
|
||||||
gui/win32/dialogs.c \
|
|
||||||
gui/win32/gui.c \
|
gui/win32/gui.c \
|
||||||
gui/win32/interface.c \
|
gui/win32/interface.c \
|
||||||
gui/win32/playlist.c \
|
gui/win32/playlist.c \
|
||||||
@ -637,12 +637,10 @@ MENCODER_DEPS = $(OBJS_MENCODER) $(OBJS_COMMON) $(COMMON_LIBS)
|
|||||||
|
|
||||||
ALL_PRG-$(MPLAYER) += mplayer$(EXESUF)
|
ALL_PRG-$(MPLAYER) += mplayer$(EXESUF)
|
||||||
ALL_PRG-$(MENCODER) += mencoder$(EXESUF)
|
ALL_PRG-$(MENCODER) += mencoder$(EXESUF)
|
||||||
ALL_PRG += $(ALL_PRG-yes)
|
|
||||||
|
|
||||||
INSTALL_TARGETS-$(MPLAYER) += install-mplayer install-mplayer-man
|
INSTALL_TARGETS-$(MPLAYER) += install-mplayer install-mplayer-man
|
||||||
INSTALL_TARGETS-$(MENCODER) += install-mencoder install-mplayer-man
|
INSTALL_TARGETS-$(MENCODER) += install-mencoder install-mencoder-man
|
||||||
INSTALL_TARGETS-$(GUI_GTK) += install-gui
|
INSTALL_TARGETS-$(GUI) += install-gui
|
||||||
INSTALL_TARGETS += $(INSTALL_TARGETS-yes)
|
|
||||||
|
|
||||||
DIRS = . \
|
DIRS = . \
|
||||||
dvdread \
|
dvdread \
|
||||||
@ -701,7 +699,7 @@ PARTS = ffmpeg/libavcodec \
|
|||||||
|
|
||||||
###### generic rules #######
|
###### generic rules #######
|
||||||
|
|
||||||
all: $(ALL_PRG)
|
all: $(ALL_PRG-yes)
|
||||||
|
|
||||||
%.d: %.c
|
%.d: %.c
|
||||||
$(MPDEPEND_CMD) > $@
|
$(MPDEPEND_CMD) > $@
|
||||||
@ -724,12 +722,10 @@ checkheaders: $(ALLHEADERS:.h=.ho)
|
|||||||
dep depend: $(DEPS)
|
dep depend: $(DEPS)
|
||||||
for part in $(PARTS); do $(MAKE) -C $$part depend; done
|
for part in $(PARTS); do $(MAKE) -C $$part depend; done
|
||||||
|
|
||||||
define RECURSIVE_RULE
|
ALLPARTLIBS = $(foreach part, $(PARTS), $(part)/$(notdir $(part)).a)
|
||||||
$(part)/$(notdir $(part)).a: recurse
|
|
||||||
$(MAKE) -C $(part)
|
|
||||||
endef
|
|
||||||
|
|
||||||
$(foreach part,$(PARTS),$(eval $(RECURSIVE_RULE)))
|
$(ALLPARTLIBS): recurse
|
||||||
|
$(MAKE) -C $(@D)
|
||||||
|
|
||||||
mplayer$(EXESUF): $(MPLAYER_DEPS)
|
mplayer$(EXESUF): $(MPLAYER_DEPS)
|
||||||
$(CC) -o $@ $^ $(LDFLAGS_MPLAYER)
|
$(CC) -o $@ $^ $(LDFLAGS_MPLAYER)
|
||||||
@ -738,26 +734,20 @@ mencoder$(EXESUF): $(MENCODER_DEPS)
|
|||||||
$(CC) -o $@ $^ $(LDFLAGS_MENCODER)
|
$(CC) -o $@ $^ $(LDFLAGS_MENCODER)
|
||||||
|
|
||||||
codec-cfg$(EXESUF): codec-cfg.c codec-cfg.h help_mp.h
|
codec-cfg$(EXESUF): codec-cfg.c codec-cfg.h help_mp.h
|
||||||
$(HOST_CC) -O -I. -Iffmpeg -DCODECS2HTML $< -o $@
|
$(HOST_CC) -O -I. -Iffmpeg -DCODECS2HTML -o $@ $<
|
||||||
|
|
||||||
codecs.conf.h: codec-cfg$(EXESUF) etc/codecs.conf
|
codecs.conf.h: codec-cfg$(EXESUF) etc/codecs.conf
|
||||||
./codec-cfg$(EXESUF) ./etc/codecs.conf > $@
|
./codec-cfg$(EXESUF) ./etc/codecs.conf > $@
|
||||||
|
|
||||||
codecs2html$(EXESUF): mp_msg.o
|
|
||||||
$(CC) -DCODECS2HTML codec-cfg.c $^ -o $@
|
|
||||||
|
|
||||||
codec-cfg-test$(EXESUF): codecs.conf.h codec-cfg.h mp_msg.o osdep/getch2.o
|
|
||||||
$(CC) -I. -DTESTING codec-cfg.c mp_msg.o osdep/getch2.o -ltermcap -o $@
|
|
||||||
|
|
||||||
osdep/mplayer-rc.o: osdep/mplayer.rc version.h
|
|
||||||
$(WINDRES) -I. -o $@ $<
|
|
||||||
|
|
||||||
# ./configure must be rerun if it changed
|
# ./configure must be rerun if it changed
|
||||||
config.mak: configure
|
config.mak: configure
|
||||||
@echo "############################################################"
|
@echo "############################################################"
|
||||||
@echo "####### Please run ./configure again - it's changed! #######"
|
@echo "####### Please run ./configure again - it's changed! #######"
|
||||||
@echo "############################################################"
|
@echo "############################################################"
|
||||||
|
|
||||||
|
help_mp.h: help/help_mp-en.h $(HELP_FILE)
|
||||||
|
help/help_create.sh $(HELP_FILE) $(CHARSET)
|
||||||
|
|
||||||
# rebuild version.h each time the working copy is updated
|
# rebuild version.h each time the working copy is updated
|
||||||
ifeq ($(wildcard .svn/entries),.svn/entries)
|
ifeq ($(wildcard .svn/entries),.svn/entries)
|
||||||
version.h: .svn/entries
|
version.h: .svn/entries
|
||||||
@ -765,22 +755,8 @@ endif
|
|||||||
version.h:
|
version.h:
|
||||||
./version.sh `$(CC) -dumpversion`
|
./version.sh `$(CC) -dumpversion`
|
||||||
|
|
||||||
help_mp.h: help/help_mp-en.h $(HELP_FILE)
|
osdep/mplayer-rc.o: osdep/mplayer.rc version.h
|
||||||
@echo '// WARNING! This is a generated file. Do NOT edit.' > help_mp.h
|
$(WINDRES) -I. -o $@ $<
|
||||||
@echo '// See the help/ subdir for the editable files.' >> help_mp.h
|
|
||||||
@echo '#ifndef MPLAYER_HELP_MP_H' >> help_mp.h
|
|
||||||
@echo '#define MPLAYER_HELP_MP_H' >> help_mp.h
|
|
||||||
ifeq ($(CHARSET),)
|
|
||||||
@echo '#include "$(HELP_FILE)"' >> help_mp.h
|
|
||||||
else
|
|
||||||
iconv -f UTF-8 -t $(CHARSET) "$(HELP_FILE)" >> help_mp.h
|
|
||||||
endif
|
|
||||||
@echo '#endif /* MPLAYER_HELP_MP_H */' >> help_mp.h
|
|
||||||
|
|
||||||
ifneq ($(HELP_FILE),help/help_mp-en.h)
|
|
||||||
@echo '// untranslated messages from the English master file:' >> help_mp.h
|
|
||||||
@help/help_diff.sh $(HELP_FILE) < help/help_mp-en.h >> help_mp.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -814,83 +790,69 @@ $(VIDIX_DEPS) $(VIDIX_OBJS): $(VIDIX_PCI_FILES)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
###### installation rules #######
|
###### installation / clean / generic rules #######
|
||||||
|
|
||||||
install: install-dirs $(INSTALL_TARGETS)
|
install: $(INSTALL_TARGETS-yes)
|
||||||
|
|
||||||
install-dirs:
|
install-dirs:
|
||||||
$(INSTALL) -d $(BINDIR)
|
$(INSTALL) -d $(BINDIR) $(CONFDIR)
|
||||||
$(INSTALL) -d $(DATADIR)
|
|
||||||
|
install-%: %$(EXESUF) install-dirs
|
||||||
|
$(INSTALL) -m 755 $(INSTALLSTRIP) $< $(BINDIR)
|
||||||
|
|
||||||
|
install-mplayer-man: $(foreach lang,$(MAN_LANG_ALL),install-mplayer-man-$(lang))
|
||||||
|
install-mencoder-man: $(foreach lang,$(MAN_LANG_ALL),install-mencoder-man-$(lang))
|
||||||
|
|
||||||
|
install-mplayer-man-en:
|
||||||
$(INSTALL) -d $(MANDIR)/man1
|
$(INSTALL) -d $(MANDIR)/man1
|
||||||
$(INSTALL) -d $(CONFDIR)
|
$(INSTALL) -c -m 644 DOCS/man/en/mplayer.1 $(MANDIR)/man1/
|
||||||
if test -f $(CONFDIR)/codecs.conf ; then mv -f $(CONFDIR)/codecs.conf $(CONFDIR)/codecs.conf.old ; fi
|
|
||||||
|
|
||||||
install-mplayer: mplayer$(EXESUF)
|
install-mencoder-man-en: install-mplayer-man-en
|
||||||
$(INSTALL) -m 755 $(INSTALLSTRIP) mplayer$(EXESUF) $(BINDIR)
|
cd $(MANDIR)/man1 && ln -sf mplayer.1 mencoder.1
|
||||||
|
|
||||||
install-mplayer-man:
|
define MPLAYER_MAN_RULE
|
||||||
for lang in $(MAN_LANG); do \
|
install-mplayer-man-$(lang):
|
||||||
if test "$$lang" = en ; then \
|
$(INSTALL) -d $(MANDIR)/$(lang)/man1
|
||||||
$(INSTALL) -c -m 644 DOCS/man/en/mplayer.1 $(MANDIR)/man1/ ; \
|
$(INSTALL) -c -m 644 DOCS/man/$(lang)/mplayer.1 $(MANDIR)/$(lang)/man1/
|
||||||
else \
|
endef
|
||||||
$(INSTALL) -d $(MANDIR)/$$lang/man1 ; \
|
|
||||||
$(INSTALL) -c -m 644 DOCS/man/$$lang/mplayer.1 $(MANDIR)/$$lang/man1/ ; \
|
|
||||||
fi ; \
|
|
||||||
done
|
|
||||||
|
|
||||||
install-mencoder: mencoder$(EXESUF)
|
define MENCODER_MAN_RULE
|
||||||
$(INSTALL) -m 755 $(INSTALLSTRIP) mencoder$(EXESUF) $(BINDIR)
|
install-mencoder-man-$(lang): install-mplayer-man-$(lang)
|
||||||
for lang in $(MAN_LANG); do \
|
cd $(MANDIR)/$(lang)/man1 && ln -sf mplayer.1 mencoder.1
|
||||||
if test "$$lang" = en ; then \
|
endef
|
||||||
cd $(MANDIR)/man1 && ln -sf mplayer.1 mencoder.1 ; \
|
|
||||||
else \
|
|
||||||
cd $(MANDIR)/$$lang/man1 && ln -sf mplayer.1 mencoder.1 ; \
|
|
||||||
fi ; \
|
|
||||||
done
|
|
||||||
|
|
||||||
install-gui:
|
$(foreach lang,$(MAN_LANG),$(eval $(MPLAYER_MAN_RULE)))
|
||||||
|
$(foreach lang,$(MAN_LANG),$(eval $(MENCODER_MAN_RULE)))
|
||||||
|
|
||||||
|
install-gui: install-mplayer
|
||||||
-ln -sf mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
|
-ln -sf mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
|
||||||
$(INSTALL) -d $(DATADIR)/skins
|
$(INSTALL) -d $(DATADIR)/skins $(prefix)/share/pixmaps $(prefix)/share/applications
|
||||||
@echo "*** Download skin(s) at http://www.mplayerhq.hu/design7/dload.html"
|
|
||||||
@echo "*** for GUI, and extract to $(DATADIR)/skins/"
|
|
||||||
$(INSTALL) -d $(prefix)/share/pixmaps
|
|
||||||
$(INSTALL) -m 644 etc/mplayer.xpm $(prefix)/share/pixmaps/
|
$(INSTALL) -m 644 etc/mplayer.xpm $(prefix)/share/pixmaps/
|
||||||
$(INSTALL) -d $(prefix)/share/applications
|
|
||||||
$(INSTALL) -m 644 etc/mplayer.desktop $(prefix)/share/applications/
|
$(INSTALL) -m 644 etc/mplayer.desktop $(prefix)/share/applications/
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
-rm -f $(BINDIR)/mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
|
rm -f $(BINDIR)/mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
|
||||||
-rm -f $(BINDIR)/mencoder$(EXESUF)
|
rm -f $(BINDIR)/mencoder$(EXESUF)
|
||||||
-rm -f $(MANDIR)/man1/mencoder.1 $(MANDIR)/man1/mplayer.1
|
rm -f $(MANDIR)/man1/mencoder.1 $(MANDIR)/man1/mplayer.1
|
||||||
-rm -f $(prefix)/share/pixmaps/mplayer.xpm
|
rm -f $(prefix)/share/pixmaps/mplayer.xpm
|
||||||
-rm -f $(prefix)/share/applications/mplayer.desktop
|
rm -f $(prefix)/share/applications/mplayer.desktop
|
||||||
for lang in $(MAN_LANG); do \
|
rm -f $(MANDIR)/man1/mplayer.1 $(MANDIR)/man1/mencoder.1
|
||||||
if test "$$lang" != "en"; then \
|
rm -f $(foreach lang,$(MAN_LANG),$(foreach man,mplayer.1 mencoder.1,$(MANDIR)/$(lang)/man1/$(man)))
|
||||||
rm -f $(MANDIR)/$$lang/man1/mplayer.1 \
|
|
||||||
$(MANDIR)/$$lang/man1/mencoder.1 \
|
|
||||||
$(MANDIR)/$$lang/man1/gmplayer.1 ; \
|
|
||||||
fi ; \
|
|
||||||
done
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.o /*.a /*.ho /*~, $(addsuffix $(suffix),$(dir))))
|
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.o /*.a /*.ho /*~, $(addsuffix $(suffix),$(dir))))
|
||||||
rm -f mplayer$(EXESUF) mencoder$(EXESUF)
|
rm -f mplayer$(EXESUF) mencoder$(EXESUF)
|
||||||
|
|
||||||
distclean: clean doxygen_clean testsclean toolsclean
|
distclean: clean testsclean toolsclean driversclean
|
||||||
|
rm -rf DOCS/tech/doxygen
|
||||||
rm -f $(foreach dir,$(DIRS),$(foreach suffix,/*.d, $(addsuffix $(suffix),$(dir))))
|
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 \
|
rm -f configure.log config.mak config.h codecs.conf.h help_mp.h \
|
||||||
version.h $(VIDIX_PCI_FILES) \
|
version.h $(VIDIX_PCI_FILES) \
|
||||||
codec-cfg$(EXESUF) codecs2html$(EXESUF) codec-cfg-test$(EXESUF) \
|
codec-cfg$(EXESUF) cpuinfo$(EXESUF) TAGS tags
|
||||||
cpuinfo$(EXESUF) TAGS tags
|
|
||||||
|
|
||||||
doxygen:
|
doxygen:
|
||||||
doxygen DOCS/tech/Doxyfile
|
doxygen DOCS/tech/Doxyfile
|
||||||
|
|
||||||
doxygen_clean:
|
|
||||||
-rm -rf DOCS/tech/doxygen
|
|
||||||
strip:
|
|
||||||
strip -s $(ALL_PRG)
|
|
||||||
|
|
||||||
TAGS:
|
TAGS:
|
||||||
rm -f $@; ( find -name '*.[chS]' -print ) | xargs etags -a
|
rm -f $@; ( find -name '*.[chS]' -print ) | xargs etags -a
|
||||||
|
|
||||||
@ -903,6 +865,12 @@ tags:
|
|||||||
|
|
||||||
TEST_OBJS = mp_msg-mencoder.o mp_fifo.o osdep/$(GETCH) osdep/$(TIMER) -ltermcap -lm
|
TEST_OBJS = mp_msg-mencoder.o mp_fifo.o osdep/$(GETCH) osdep/$(TIMER) -ltermcap -lm
|
||||||
|
|
||||||
|
codecs2html$(EXESUF): codec-cfg.c $(TEST_OBJS)
|
||||||
|
$(CC) -I. -DCODECS2HTML -o $@ $^
|
||||||
|
|
||||||
|
codec-cfg-test$(EXESUF): codec-cfg.c codecs.conf.h codec-cfg.h $(TEST_OBJS)
|
||||||
|
$(CC) -I. -DTESTING -o $@ $^
|
||||||
|
|
||||||
liba52/test$(EXESUF): liba52/test.c cpudetect.o $(filter liba52/%,$(SRCS_COMMON:.c=.o))
|
liba52/test$(EXESUF): liba52/test.c cpudetect.o $(filter liba52/%,$(SRCS_COMMON:.c=.o))
|
||||||
|
|
||||||
libvo/aspecttest$(EXESUF): libvo/aspecttest.c libvo/aspect.o libvo/geometry.o $(TEST_OBJS)
|
libvo/aspecttest$(EXESUF): libvo/aspecttest.c libvo/aspect.o libvo/geometry.o $(TEST_OBJS)
|
||||||
@ -916,7 +884,8 @@ loader/qtx/qtxload$(EXESUF): loader/qtx/qtxload.c $(LOADER_TEST_OBJS)
|
|||||||
mp3lib/test$(EXESUF): mp3lib/test.c $(filter mp3lib/%,$(SRCS_COMMON:.c=.o)) libvo/aclib.o cpudetect.o $(TEST_OBJS)
|
mp3lib/test$(EXESUF): mp3lib/test.c $(filter mp3lib/%,$(SRCS_COMMON:.c=.o)) libvo/aclib.o cpudetect.o $(TEST_OBJS)
|
||||||
mp3lib/test2$(EXESUF): mp3lib/test2.c $(filter mp3lib/%,$(SRCS_COMMON:.c=.o)) libvo/aclib.o cpudetect.o $(TEST_OBJS)
|
mp3lib/test2$(EXESUF): mp3lib/test2.c $(filter mp3lib/%,$(SRCS_COMMON:.c=.o)) libvo/aclib.o cpudetect.o $(TEST_OBJS)
|
||||||
|
|
||||||
TESTS = liba52/test$(EXESUF) libvo/aspecttest$(EXESUF) \
|
TESTS = codecs2html$(EXESUF) codec-cfg-test$(EXESUF) \
|
||||||
|
liba52/test$(EXESUF) libvo/aspecttest$(EXESUF) \
|
||||||
loader/qtx/list$(EXESUF) loader/qtx/qtxload$(EXESUF) \
|
loader/qtx/list$(EXESUF) loader/qtx/qtxload$(EXESUF) \
|
||||||
mp3lib/test$(EXESUF) mp3lib/test2$(EXESUF)
|
mp3lib/test$(EXESUF) mp3lib/test2$(EXESUF)
|
||||||
|
|
||||||
@ -947,6 +916,9 @@ ALLTOOLS = $(TOOLS) \
|
|||||||
tools: $(TOOLS)
|
tools: $(TOOLS)
|
||||||
alltools: $(ALLTOOLS)
|
alltools: $(ALLTOOLS)
|
||||||
|
|
||||||
|
toolsclean:
|
||||||
|
rm -f $(ALLTOOLS) TOOLS/fastmem*-* TOOLS/realcodecs/*.so.6.0
|
||||||
|
|
||||||
TOOLS/bmovl-test$(EXESUF): TOOLS/bmovl-test.c -lSDL_image
|
TOOLS/bmovl-test$(EXESUF): TOOLS/bmovl-test.c -lSDL_image
|
||||||
|
|
||||||
TOOLS/subrip$(EXESUF): TOOLS/subrip.c vobsub.o spudec.o unrar_exec.o \
|
TOOLS/subrip$(EXESUF): TOOLS/subrip.c vobsub.o spudec.o unrar_exec.o \
|
||||||
@ -988,10 +960,87 @@ NETSTREAM_DEPS = libavutil/libavutil.a \
|
|||||||
TOOLS/netstream$(EXESUF): TOOLS/netstream.o $(NETSTREAM_DEPS)
|
TOOLS/netstream$(EXESUF): TOOLS/netstream.o $(NETSTREAM_DEPS)
|
||||||
$(CC) $(CFLAGS) -o $@ $^
|
$(CC) $(CFLAGS) -o $@ $^
|
||||||
|
|
||||||
toolsclean:
|
|
||||||
rm -f $(ALLTOOLS) TOOLS/fastmem*-* TOOLS/realcodecs/*.so.6.0
|
|
||||||
|
###### drivers #######
|
||||||
|
|
||||||
|
KERNEL_INC = /lib/modules/`uname -r`/build/include
|
||||||
|
KERNEL_VERSION = $(shell grep RELEASE $(KERNEL_INC)/linux/version.h | cut -d'"' -f2)
|
||||||
|
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
|
||||||
|
|
||||||
|
drivers: $(KERNEL_OBJS) drivers/mga_vid_test drivers/tdfx_vid_test
|
||||||
|
|
||||||
|
$(KERNEL_OBJS) drivers/mga_vid_test drivers/tdfx_vid_test: 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
|
||||||
|
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
|
||||||
|
-mkdir -p $(MODULES_DIR)
|
||||||
|
install -m 644 $(KERNEL_OBJS) $(MODULES_DIR)
|
||||||
|
depmod -a
|
||||||
|
-mknod /dev/mga_vid c 178 0
|
||||||
|
-mknod /dev/tdfx_vid c 178 0
|
||||||
|
-mknod /dev/radeon_vid c 178 0
|
||||||
|
-ln -s /dev/radeon_vid /dev/rage128_vid
|
||||||
|
|
||||||
|
driversclean:
|
||||||
|
rm -f drivers/*.o drivers/*~ drivers/mga_vid_test drivers/tdfx_vid_test
|
||||||
|
|
||||||
|
dhahelper: vidix/dhahelper/dhahelper.o vidix/dhahelper/test
|
||||||
|
|
||||||
|
vidix/dhahelper/dhahelper.o vidix/dhahelper/test: CFLAGS = $(KERNEL_CFLAGS)
|
||||||
|
vidix/dhahelper/dhahelper.o: vidix/dhahelper/dhahelper.c vidix/dhahelper/dhahelper.h
|
||||||
|
|
||||||
|
install-dhahelper: vidix/dhahelper/dhahelper.o
|
||||||
|
-mkdir -p $(MODULES_DIR)
|
||||||
|
install -m 644 $< $(MODULES_DIR)
|
||||||
|
depmod -a
|
||||||
|
|
||||||
|
dhahelperclean:
|
||||||
|
rm -f vidix/dhahelper/*.o vidix/dhahelper/*~ vidix/dhahelper/test
|
||||||
|
|
||||||
|
dhahelperwin: vidix/dhahelperwin/dhasetup.exe vidix/dhahelperwin/dhahelper.sys
|
||||||
|
|
||||||
|
vidix/dhahelperwin/dhasetup.exe: vidix/dhahelperwin/dhasetup.c
|
||||||
|
$(CC) -o $@ $<
|
||||||
|
|
||||||
|
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/base.tmp: vidix/dhahelperwin/dhahelper.o vidix/dhahelperwin/dhahelper-rc.o
|
||||||
|
$(CC) -Wl,--base-file,$@ -Wl,--entry,_DriverEntry@8 -nostartfiles \
|
||||||
|
-nostdlib -o vidix/dhahelperwin/junk.tmp $^ -lntoskrnl
|
||||||
|
-rm -f vidix/dhahelperwin/junk.tmp
|
||||||
|
|
||||||
|
vidix/dhahelperwin/temp.exp: vidix/dhahelperwin/base.tmp
|
||||||
|
dlltool --dllname vidix/dhahelperwin/dhahelper.sys --base-file $< --output-exp $@
|
||||||
|
|
||||||
|
vidix/dhahelperwin/dhahelper.sys: vidix/dhahelperwin/temp.exp vidix/dhahelperwin/dhahelper.o vidix/dhahelperwin/dhahelper-rc.o
|
||||||
|
$(CC) -Wl,--subsystem,native -Wl,--image-base,0x10000 \
|
||||||
|
-Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 \
|
||||||
|
-Wl,--entry,_DriverEntry@8 -Wl,$< -mdll -nostartfiles -nostdlib \
|
||||||
|
-o $@ vidix/dhahelperwin/dhahelper.o \
|
||||||
|
vidix/dhahelperwin/dhahelper-rc.o -lntoskrnl
|
||||||
|
strip $@
|
||||||
|
|
||||||
|
install-dhahelperwin:
|
||||||
|
vidix/dhahelperwin/dhasetup.exe install
|
||||||
|
|
||||||
|
dhahelperwinclean:
|
||||||
|
rm -f $(addprefix vidix/dhahelperwin/,*.o *~ dhahelper.sys dhasetup.exe base.tmp temp.exp)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-include $(DEPS)
|
-include $(DEPS)
|
||||||
|
|
||||||
.PHONY: all doxygen *install* recurse strip *tools
|
.PHONY: all doxygen *install* recurse *tools drivers dhahelper*
|
||||||
.PHONY: checkheaders *clean dep depend tests
|
.PHONY: checkheaders *clean dep depend tests
|
||||||
|
@ -34,7 +34,7 @@ static int mga_init(){
|
|||||||
if(f == -1)
|
if(f == -1)
|
||||||
{
|
{
|
||||||
fprintf(stderr,"Couldn't open /dev/mga_vid\n");
|
fprintf(stderr,"Couldn't open /dev/mga_vid\n");
|
||||||
return(-1);
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
mga_vid_config.num_frames=1;
|
mga_vid_config.num_frames=1;
|
||||||
@ -80,7 +80,7 @@ static unsigned int GetTimer(){
|
|||||||
// float s;
|
// float s;
|
||||||
gettimeofday(&tv,&tz);
|
gettimeofday(&tv,&tz);
|
||||||
// s=tv.tv_usec;s*=0.000001;s+=tv.tv_sec;
|
// s=tv.tv_usec;s*=0.000001;s+=tv.tv_sec;
|
||||||
return (tv.tv_sec*1000000+tv.tv_usec);
|
return tv.tv_sec * 1000000 + tv.tv_usec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline unsigned long long int read_tsc( void )
|
static inline unsigned long long int read_tsc( void )
|
||||||
|
@ -26,28 +26,28 @@ static char *atom2human_type(int type)
|
|||||||
{
|
{
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case 0x766F6F6D: return ("Information sections"); /* moov */
|
case 0x766F6F6D: return "Information sections"; /* moov */
|
||||||
case 0x6468766D: return ("Movie header"); /* mvhd */
|
case 0x6468766D: return "Movie header"; /* mvhd */
|
||||||
case 0x6169646D: return ("Media stream"); /* mdia */
|
case 0x6169646D: return "Media stream"; /* mdia */
|
||||||
case 0x64686D76: return ("Video media header"); /* vmhd */
|
case 0x64686D76: return "Video media header"; /* vmhd */
|
||||||
case 0x64686D73: return ("Sound media header"); /* smhd */
|
case 0x64686D73: return "Sound media header"; /* smhd */
|
||||||
case 0x6468646D: return ("Media header"); /* mdhd */
|
case 0x6468646D: return "Media header"; /* mdhd */
|
||||||
case 0x666E696D: return ("Media information"); /* minf */
|
case 0x666E696D: return "Media information"; /* minf */
|
||||||
case 0x726C6468: return ("Handler reference"); /* hdlr */
|
case 0x726C6468: return "Handler reference"; /* hdlr */
|
||||||
case 0x6B617274: return ("New track (stream)"); /* trak */
|
case 0x6B617274: return "New track (stream)"; /* trak */
|
||||||
case 0x75716D72: return ("rmqu");
|
case 0x75716D72: return "rmqu";
|
||||||
case 0x65657266: return ("free");
|
case 0x65657266: return "free";
|
||||||
case 0x64686B74: return ("Track header"); /* tkhd */
|
case 0x64686B74: return "Track header"; /* tkhd */
|
||||||
case 0x61746475: return ("User data"); /* udta */
|
case 0x61746475: return "User data"; /* udta */
|
||||||
case 0x7461646D: return ("Movie data"); /* mdat */
|
case 0x7461646D: return "Movie data"; /* mdat */
|
||||||
case 0x6C627473: return ("Sample information table"); /* stbl */
|
case 0x6C627473: return "Sample information table"; /* stbl */
|
||||||
case 0x64737473: return ("Sample description"); /* stsd */
|
case 0x64737473: return "Sample description"; /* stsd */
|
||||||
case 0x6F637473: return ("Chunk offset table"); /* stco */
|
case 0x6F637473: return "Chunk offset table"; /* stco */
|
||||||
case 0x73747473: return ("Sample time table"); /* stts */
|
case 0x73747473: return "Sample time table"; /* stts */
|
||||||
case 0x63737473: return ("Sample->Chunk mapping table"); /* stsc */
|
case 0x63737473: return "Sample->Chunk mapping table"; /* stsc */
|
||||||
case 0x7A737473: return ("Sample size table"); /* stsz */
|
case 0x7A737473: return "Sample size table"; /* stsz */
|
||||||
}
|
}
|
||||||
return("unknown");
|
return "unknown";
|
||||||
}
|
}
|
||||||
|
|
||||||
#define S_NONE 0
|
#define S_NONE 0
|
||||||
|
@ -310,7 +310,7 @@ const m_option_t mplayer_opts[]={
|
|||||||
|
|
||||||
// a-v sync stuff:
|
// a-v sync stuff:
|
||||||
OPT_FLAG_ON("correct-pts", user_correct_pts, 0),
|
OPT_FLAG_ON("correct-pts", user_correct_pts, 0),
|
||||||
OPT_FLAG_OFF("no-correct-pts", user_correct_pts, 0),
|
OPT_FLAG_OFF("nocorrect-pts", user_correct_pts, 0),
|
||||||
{"noautosync", &autosync, CONF_TYPE_FLAG, 0, 0, -1, NULL},
|
{"noautosync", &autosync, CONF_TYPE_FLAG, 0, 0, -1, NULL},
|
||||||
{"autosync", &autosync, CONF_TYPE_INT, CONF_RANGE, 0, 10000, NULL},
|
{"autosync", &autosync, CONF_TYPE_INT, CONF_RANGE, 0, 10000, NULL},
|
||||||
// {"dapsync", &dapsync, CONF_TYPE_FLAG, 0, 0, 1, NULL},
|
// {"dapsync", &dapsync, CONF_TYPE_FLAG, 0, 0, 1, NULL},
|
||||||
|
@ -1177,8 +1177,10 @@ next:
|
|||||||
printf("info='%s'\n",c->info);
|
printf("info='%s'\n",c->info);
|
||||||
printf("comment='%s'\n",c->comment);
|
printf("comment='%s'\n",c->comment);
|
||||||
printf("dll='%s'\n",c->dll);
|
printf("dll='%s'\n",c->dll);
|
||||||
printf("flags=%X driver=%d status=%d cpuflags=%d\n",
|
/* printf("flags=%X driver=%d status=%d cpuflags=%d\n",
|
||||||
c->flags, c->driver, c->status, c->cpuflags);
|
c->flags, c->driver, c->status, c->cpuflags); */
|
||||||
|
printf("flags=%X status=%d cpuflags=%d\n",
|
||||||
|
c->flags, c->status, c->cpuflags);
|
||||||
|
|
||||||
for(j=0;j<CODECS_MAX_FOURCC;j++){
|
for(j=0;j<CODECS_MAX_FOURCC;j++){
|
||||||
if(c->fourcc[j]!=0xFFFFFFFF){
|
if(c->fourcc[j]!=0xFFFFFFFF){
|
||||||
|
@ -1908,7 +1908,7 @@ static int mp_property_teletext_common(m_option_t *prop, int action, void *arg,
|
|||||||
return M_PROPERTY_NOT_IMPLEMENTED;
|
return M_PROPERTY_NOT_IMPLEMENTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
return (result==TVI_CONTROL_TRUE?M_PROPERTY_OK:M_PROPERTY_ERROR);
|
return result == TVI_CONTROL_TRUE ? M_PROPERTY_OK : M_PROPERTY_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mp_property_teletext_mode(m_option_t *prop, int action, void *arg,
|
static int mp_property_teletext_mode(m_option_t *prop, int action, void *arg,
|
||||||
@ -2629,6 +2629,11 @@ int run_command(MPContext *mpctx, mp_cmd_t *cmd)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case MP_CMD_STOP:
|
||||||
|
mpctx->eof = PT_STOP;
|
||||||
|
brk_cmd = 1;
|
||||||
|
break;
|
||||||
|
|
||||||
#ifdef USE_RADIO
|
#ifdef USE_RADIO
|
||||||
case MP_CMD_RADIO_STEP_CHANNEL:
|
case MP_CMD_RADIO_STEP_CHANNEL:
|
||||||
if (mpctx->demuxer->stream->type == STREAMTYPE_RADIO) {
|
if (mpctx->demuxer->stream->type == STREAMTYPE_RADIO) {
|
||||||
|
351
configure
vendored
351
configure
vendored
@ -229,6 +229,7 @@ Optional features:
|
|||||||
--enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
|
--enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
|
||||||
--enable-joystick enable joystick support [disable]
|
--enable-joystick enable joystick support [disable]
|
||||||
--enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect]
|
--enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect]
|
||||||
|
--enable-apple-ir enable Apple IR Remote input (Linux only) [autodetect]
|
||||||
--disable-vm disable X video mode extensions [autodetect]
|
--disable-vm disable X video mode extensions [autodetect]
|
||||||
--disable-xf86keysym disable support for multimedia keys [autodetect]
|
--disable-xf86keysym disable support for multimedia keys [autodetect]
|
||||||
--enable-radio enable radio interface [disable]
|
--enable-radio enable radio interface [disable]
|
||||||
@ -285,8 +286,8 @@ Codecs:
|
|||||||
--disable-qtx disable QuickTime codecs support [enabled]
|
--disable-qtx disable QuickTime codecs support [enabled]
|
||||||
--disable-xanim disable XAnim codecs support [enabled]
|
--disable-xanim disable XAnim codecs support [enabled]
|
||||||
--disable-real disable RealPlayer codecs support [enabled]
|
--disable-real disable RealPlayer codecs support [enabled]
|
||||||
--disable-xvid disable XviD [autodetect]
|
--disable-xvid disable Xvid [autodetect]
|
||||||
--disable-xvid-lavc disable XviD in libavcodec [autodetect]
|
--disable-xvid-lavc disable Xvid in libavcodec [autodetect]
|
||||||
--disable-x264 disable x264 [autodetect]
|
--disable-x264 disable x264 [autodetect]
|
||||||
--disable-x264-lavc disable x264 in libavcodec [autodetect]
|
--disable-x264-lavc disable x264 in libavcodec [autodetect]
|
||||||
--disable-libnut disable libnut [autodetect]
|
--disable-libnut disable libnut [autodetect]
|
||||||
@ -630,6 +631,7 @@ _libnut=auto
|
|||||||
_lirc=auto
|
_lirc=auto
|
||||||
_lircc=auto
|
_lircc=auto
|
||||||
_apple_remote=auto
|
_apple_remote=auto
|
||||||
|
_apple_ir=auto
|
||||||
_gui=no
|
_gui=no
|
||||||
_gtk1=no
|
_gtk1=no
|
||||||
_termcap=auto
|
_termcap=auto
|
||||||
@ -1073,6 +1075,8 @@ for ac_option do
|
|||||||
--disable-lircc) _lircc=no ;;
|
--disable-lircc) _lircc=no ;;
|
||||||
--enable-apple-remote) _apple_remote=yes ;;
|
--enable-apple-remote) _apple_remote=yes ;;
|
||||||
--disable-apple-remote) _apple_remote=no ;;
|
--disable-apple-remote) _apple_remote=no ;;
|
||||||
|
--enable-apple-ir) _apple_ir=yes ;;
|
||||||
|
--disable-apple-ir) _apple_ir=no ;;
|
||||||
--enable-gui) _gui=yes ;;
|
--enable-gui) _gui=yes ;;
|
||||||
--disable-gui) _gui=no ;;
|
--disable-gui) _gui=no ;;
|
||||||
--enable-gtk1) _gtk1=yes ;;
|
--enable-gtk1) _gtk1=yes ;;
|
||||||
@ -1565,7 +1569,7 @@ if x86 && test "$_runtime_cpudetection" = no ; then
|
|||||||
void catch() { exit(1); }
|
void catch() { exit(1); }
|
||||||
int main(void) {
|
int main(void) {
|
||||||
signal(SIGILL, catch);
|
signal(SIGILL, catch);
|
||||||
__asm__ __volatile__ ("$3":::"memory");return(0);
|
__asm__ __volatile__ ("$3":::"memory"); return 0;
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
@ -2411,30 +2415,46 @@ echores $_asmalign_pot
|
|||||||
|
|
||||||
|
|
||||||
#FIXME: This should happen before the check for CFLAGS..
|
#FIXME: This should happen before the check for CFLAGS..
|
||||||
if test "$_altivec" = yes || test "$_runtime_cpudetection" = yes ; then
|
if ppc && ( test "$_altivec" = yes || test "$_runtime_cpudetection" = yes ) ; then
|
||||||
|
|
||||||
# check if AltiVec is supported by the compiler, and how to enable it
|
# check if AltiVec is supported by the compiler, and how to enable it
|
||||||
echocheck "GCC AltiVec flags"
|
echocheck "GCC AltiVec flags"
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
int main(void) { return 0; }
|
int main(void) { return 0; }
|
||||||
EOF
|
EOF
|
||||||
cc_check -maltivec -mabi=altivec \
|
if $(cc_check -maltivec -mabi=altivec) ; then
|
||||||
&& _altivec_gcc_flags="-maltivec -mabi=altivec" \
|
_altivec_gcc_flags="-maltivec -mabi=altivec"
|
||||||
|| cc_check -faltivec && _altivec_gcc_flags=-faltivec \
|
|
||||||
|| _altivec=no
|
|
||||||
echores "$_altivec_gcc_flags"
|
|
||||||
|
|
||||||
# check if <altivec.h> should be included
|
# check if <altivec.h> should be included
|
||||||
echocheck "altivec.h"
|
|
||||||
_def_altivec_h='#undef HAVE_ALTIVEC_H'
|
_def_altivec_h='#undef HAVE_ALTIVEC_H'
|
||||||
_have_altivec_h=no
|
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
#include <altivec.h>
|
#include <altivec.h>
|
||||||
int main(void) { return 0; }
|
int main(void) { return 0; }
|
||||||
EOF
|
EOF
|
||||||
cc_check $_altivec_gcc_flags && _have_altivec_h=yes \
|
if $(cc_check $_altivec_gcc_flags) ; then
|
||||||
&& _def_altivec_h='#define HAVE_ALTIVEC_H 1'
|
_def_altivec_h='#define HAVE_ALTIVEC_H 1'
|
||||||
echores "$_have_altivec_h"
|
inc_altivec_h='#include <altivec.h>'
|
||||||
|
else
|
||||||
|
cat > $TMPC << EOF
|
||||||
|
int main(void) { return 0; }
|
||||||
|
EOF
|
||||||
|
if $(cc_check -faltivec) ; then
|
||||||
|
_altivec_gcc_flags="-faltivec"
|
||||||
|
else
|
||||||
|
_altivec=no
|
||||||
|
_altivec_gcc_flags="none, AltiVec disabled"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echores "$_altivec_gcc_flags"
|
||||||
|
|
||||||
|
# check if the compiler supports braces for vector declarations
|
||||||
|
cat > $TMPC << EOF
|
||||||
|
$inc_altivec_h
|
||||||
|
#define AVV(x...) {x}
|
||||||
|
int main (void) { (vector int) AVV(1); return 0; }
|
||||||
|
EOF
|
||||||
|
cc_check $_altivec_gcc_flags &&
|
||||||
|
_def_altivec_vector_braces='#define HAVE_ALTIVEC_VECTOR_BRACES 1'
|
||||||
|
|
||||||
# Disable runtime cpudetection if we cannot generate AltiVec code or
|
# Disable runtime cpudetection if we cannot generate AltiVec code or
|
||||||
# AltiVec is disabled by the user.
|
# AltiVec is disabled by the user.
|
||||||
@ -2589,12 +2609,13 @@ _mp_help="help/help_mp-${_language}.h"
|
|||||||
test -f $_mp_help || die "$_mp_help not found"
|
test -f $_mp_help || die "$_mp_help not found"
|
||||||
for lang in $LANGUAGES ; do
|
for lang in $LANGUAGES ; do
|
||||||
if test -f "DOCS/man/$lang/mplayer.1" ; then
|
if test -f "DOCS/man/$lang/mplayer.1" ; then
|
||||||
MAN_LANG="$lang $MAN_LANG"
|
MAN_LANG_ALL="$lang $MAN_LANG_ALL"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
MAN_LANG="$(echo $MAN_LANG_ALL | sed 's/en//')"
|
||||||
_doc_lang=$_language
|
_doc_lang=$_language
|
||||||
test -d DOCS/xml/$_doc_lang || _doc_lang=en
|
test -d DOCS/xml/$_doc_lang || _doc_lang=en
|
||||||
echores "using $_language (man pages: $MAN_LANG)"
|
echores "using $_language (man pages: $MAN_LANG_ALL)"
|
||||||
|
|
||||||
|
|
||||||
echocheck "enable sighandler"
|
echocheck "enable sighandler"
|
||||||
@ -3604,6 +3625,28 @@ echores "$_apple_remote"
|
|||||||
|
|
||||||
fi #if darwin
|
fi #if darwin
|
||||||
|
|
||||||
|
if linux; then
|
||||||
|
|
||||||
|
echocheck "Apple IR"
|
||||||
|
if test "$_apple_ir" = auto ; then
|
||||||
|
_apple_ir=no
|
||||||
|
cat > $TMPC <<EOF
|
||||||
|
#include <linux/types.h>
|
||||||
|
#include <linux/input.h>
|
||||||
|
int main(void) {
|
||||||
|
struct input_event ev;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
cc_check && tmp_run && _apple_ir=yes
|
||||||
|
fi
|
||||||
|
if test "$_apple_ir" = yes ; then
|
||||||
|
_def_apple_ir='#define HAVE_APPLE_IR 1'
|
||||||
|
else
|
||||||
|
_def_apple_ir='#undef HAVE_APPLE_IR'
|
||||||
|
fi
|
||||||
|
echores "$_apple_ir"
|
||||||
|
fi #if linux
|
||||||
|
|
||||||
echocheck "pkg-config"
|
echocheck "pkg-config"
|
||||||
_pkg_config=pkg-config
|
_pkg_config=pkg-config
|
||||||
@ -4512,7 +4555,7 @@ cat > $TMPC << EOF
|
|||||||
int main(void) {
|
int main(void) {
|
||||||
printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
|
printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
|
||||||
printf("libpng: %s\n", png_libpng_ver);
|
printf("libpng: %s\n", png_libpng_ver);
|
||||||
return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
|
return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
if cc_check -lpng -lz $_ld_lm ; then
|
if cc_check -lpng -lz $_ld_lm ; then
|
||||||
@ -5324,26 +5367,22 @@ elif test "$_dvdread" = auto ; then
|
|||||||
if test "$_dl" = yes; then
|
if test "$_dl" = yes; then
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <dvdread/dvd_reader.h>
|
#include <libdvdread/dvd_reader.h>
|
||||||
#include <dvdread/ifo_types.h>
|
#include <libdvdread/ifo_types.h>
|
||||||
#include <dvdread/ifo_read.h>
|
#include <libdvdread/ifo_read.h>
|
||||||
#include <dvdread/nav_read.h>
|
#include <libdvdread/nav_read.h>
|
||||||
int main(void) { return 0; }
|
int main(void) { return 0; }
|
||||||
EOF
|
EOF
|
||||||
cc_check -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
|
|
||||||
-ldvdread $_ld_dl && _dvdread=yes && _res_comment="external"
|
|
||||||
fi
|
fi
|
||||||
if test "$_dvdread" = no ; then
|
_dvdreadconfig="dvdread-config"
|
||||||
_dvdreadconfig="dvdread-config"
|
_dvdreadcflags=`$_dvdreadconfig --cflags`
|
||||||
_dvdreadcflags=`$_dvdreadconfig --cflags`
|
_dvdreadlibs=`$_dvdreadconfig --libs`
|
||||||
_dvdreadlibs=`$_dvdreadconfig --libs`
|
if cc_check -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
|
||||||
if cc_check -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
|
$_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
|
||||||
$_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
|
_dvdread=yes
|
||||||
_dvdread=yes
|
_inc_extra="$_inc_extra $_dvdreadcflags"
|
||||||
_inc_extra="$_inc_extra $_dvdreadcflags"
|
_ld_extra="$_ld_extra $_dvdreadlibs"
|
||||||
_ld_extra="$_ld_extra $_dvdreadlibs"
|
_res_comment="external"
|
||||||
_res_comment="external"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -6506,7 +6545,7 @@ fi
|
|||||||
echores "$_libdv"
|
echores "$_libdv"
|
||||||
|
|
||||||
|
|
||||||
echocheck "XviD"
|
echocheck "Xvid"
|
||||||
if test "$_xvid" = auto ; then
|
if test "$_xvid" = auto ; then
|
||||||
_xvid=no
|
_xvid=no
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
@ -6527,7 +6566,7 @@ else
|
|||||||
fi
|
fi
|
||||||
echores "$_xvid"
|
echores "$_xvid"
|
||||||
|
|
||||||
echocheck "XviD two pass plugin"
|
echocheck "Xvid two pass plugin"
|
||||||
if test "$_xvid" = yes && test "$_xvid_lavc" = auto ; then
|
if test "$_xvid" = yes && test "$_xvid_lavc" = auto ; then
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
#include <xvid.h>
|
#include <xvid.h>
|
||||||
@ -7304,12 +7343,7 @@ else
|
|||||||
_def_charset="#undef MSG_CHARSET"
|
_def_charset="#undef MSG_CHARSET"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "$_charset" = "UTF-8" ; then
|
if test "$_charset" != "UTF-8" ; then
|
||||||
# hack to disable conversion in the Makefile
|
|
||||||
_charset=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$_charset" ; then
|
|
||||||
echocheck "iconv program"
|
echocheck "iconv program"
|
||||||
iconv -f UTF-8 -t $_charset ${_mp_help} > /dev/null 2>> "$TMPLOG"
|
iconv -f UTF-8 -t $_charset ${_mp_help} > /dev/null 2>> "$TMPLOG"
|
||||||
if test "$?" -ne 0 ; then
|
if test "$?" -ne 0 ; then
|
||||||
@ -7510,7 +7544,12 @@ cc_check -mno-omit-leaf-frame-pointer && CFLAG_NO_OMIT_LEAF_FRAME_POINTER="-mno-
|
|||||||
# to use its own copy of the library)
|
# to use its own copy of the library)
|
||||||
echocheck "DVD support (libdvdnav)"
|
echocheck "DVD support (libdvdnav)"
|
||||||
if test "$_dvdnav" = auto ; then
|
if test "$_dvdnav" = auto ; then
|
||||||
$_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav=no
|
if test "$_dvdread_internal" = yes ; then
|
||||||
|
_dvdnav=no
|
||||||
|
echores "disabled due to the usage of the internal copy of dvdread. Append --disable-dvdread-internal"
|
||||||
|
else
|
||||||
|
$_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav=no
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
if test "$_dvdnav" = auto ; then
|
if test "$_dvdnav" = auto ; then
|
||||||
cat > $TMPC <<EOF
|
cat > $TMPC <<EOF
|
||||||
@ -7540,9 +7579,12 @@ echo "Creating config.mak"
|
|||||||
cat > config.mak << EOF
|
cat > config.mak << EOF
|
||||||
# -------- Generated by configure -----------
|
# -------- Generated by configure -----------
|
||||||
|
|
||||||
LANG = C
|
# Ensure that locale settings do not interfere with shell commands.
|
||||||
|
LC_ALL = C
|
||||||
|
|
||||||
MAN_LANG = $MAN_LANG
|
MAN_LANG = $MAN_LANG
|
||||||
TARGET_OS = $system_name
|
MAN_LANG_ALL = $MAN_LANG_ALL
|
||||||
|
|
||||||
DESTDIR =
|
DESTDIR =
|
||||||
prefix = \$(DESTDIR)$_prefix
|
prefix = \$(DESTDIR)$_prefix
|
||||||
BINDIR = \$(DESTDIR)$_bindir
|
BINDIR = \$(DESTDIR)$_bindir
|
||||||
@ -7550,8 +7592,7 @@ DATADIR = \$(DESTDIR)$_datadir
|
|||||||
MANDIR = \$(DESTDIR)$_mandir
|
MANDIR = \$(DESTDIR)$_mandir
|
||||||
CONFDIR = \$(DESTDIR)$_confdir
|
CONFDIR = \$(DESTDIR)$_confdir
|
||||||
LIBDIR = \$(DESTDIR)$_libdir
|
LIBDIR = \$(DESTDIR)$_libdir
|
||||||
# FFmpeg uses libdir instead of LIBDIR
|
|
||||||
libdir = \$(LIBDIR)
|
|
||||||
AR = $_ar
|
AR = $_ar
|
||||||
CC = $_cc
|
CC = $_cc
|
||||||
CXX = $_cc
|
CXX = $_cc
|
||||||
@ -7559,6 +7600,8 @@ HOST_CC = $_host_cc
|
|||||||
RANLIB = $_ranlib
|
RANLIB = $_ranlib
|
||||||
WINDRES = $_windres
|
WINDRES = $_windres
|
||||||
INSTALL = $_install
|
INSTALL = $_install
|
||||||
|
INSTALLSTRIP = $_install_strip
|
||||||
|
|
||||||
EXTRA_INC = $_inc_extra
|
EXTRA_INC = $_inc_extra
|
||||||
EXTRAXX_INC = $_inc_extra $_inc_extraxx
|
EXTRAXX_INC = $_inc_extra $_inc_extraxx
|
||||||
CFLAGS = $CFLAGS \$(EXTRA_INC)
|
CFLAGS = $CFLAGS \$(EXTRA_INC)
|
||||||
@ -7567,50 +7610,39 @@ FFMPEG_OFLAGS = $CFLAGS_FFMPEG \$(EXTRA_INC)
|
|||||||
CFLAG_NO_OMIT_LEAF_FRAME_POINTER = $CFLAG_NO_OMIT_LEAF_FRAME_POINTER
|
CFLAG_NO_OMIT_LEAF_FRAME_POINTER = $CFLAG_NO_OMIT_LEAF_FRAME_POINTER
|
||||||
CXXFLAGS = $CXXFLAGS \$(EXTRAXX_INC)
|
CXXFLAGS = $CXXFLAGS \$(EXTRAXX_INC)
|
||||||
CFLAG_STACKREALIGN = $_stackrealign
|
CFLAG_STACKREALIGN = $_stackrealign
|
||||||
|
LIBDVDCSS_DVDREAD_FLAGS = $_libdvdcss_dvdread_flags
|
||||||
ASFLAGS = $ASFLAGS
|
ASFLAGS = $ASFLAGS
|
||||||
INSTALLSTRIP = $_install_strip
|
|
||||||
CHARSET = $_charset
|
|
||||||
HELP_FILE = $_mp_help
|
|
||||||
|
|
||||||
EXESUF = $_exesuf
|
|
||||||
|
|
||||||
MPLAYER_NETWORK = $_network
|
|
||||||
FTP = $_ftp
|
|
||||||
STREAMING_LIVE555 = $_live
|
|
||||||
LIBNEMESI = $_nemesi
|
|
||||||
NATIVE_RTSP = $_native_rtsp
|
|
||||||
VSTREAM = $_vstream
|
|
||||||
STREAM_CACHE = $_stream_cache
|
|
||||||
DVBIN = $_dvbin
|
|
||||||
VIDIX = $_vidix
|
|
||||||
VIDIX_INTERNAL = $_vidix_internal
|
|
||||||
VIDIX_EXTERNAL = $_vidix_external
|
|
||||||
VIDIX_PCIDB = $_vidix_pcidb_val
|
|
||||||
CONFIG_POSTPROC = yes
|
|
||||||
MP3LAME = $_mp3lame
|
|
||||||
LIBMENU = $_menu
|
|
||||||
LIBMENU_DVBIN = $_menu_dvbin
|
|
||||||
|
|
||||||
MP3LIB = $_mp3lib
|
|
||||||
LIBA52 = $_liba52
|
|
||||||
LIBMPEG2 = $_libmpeg2
|
|
||||||
TREMOR_INTERNAL = $_tremor_internal
|
|
||||||
TREMOR_LOW = $_tremor_low
|
|
||||||
FAAD = $_faad
|
|
||||||
|
|
||||||
SPEEX = $_speex
|
|
||||||
MUSEPACK = $_musepack
|
|
||||||
|
|
||||||
UNRAR_EXEC = $_unrar_exec
|
|
||||||
PNG = $_png
|
|
||||||
JPEG = $_jpeg
|
|
||||||
GIF = $_gif
|
|
||||||
|
|
||||||
EXTRALIBS = $_extra_libs
|
EXTRALIBS = $_extra_libs
|
||||||
EXTRA_LIB = $_ld_extra $_ld_static $_ld_lm
|
EXTRA_LIB = $_ld_extra $_ld_static $_ld_lm
|
||||||
EXTRALIBS_MPLAYER = $_libs_mplayer
|
EXTRALIBS_MPLAYER = $_libs_mplayer
|
||||||
EXTRALIBS_MENCODER = $_libs_mencoder
|
EXTRALIBS_MENCODER = $_libs_mencoder
|
||||||
|
|
||||||
|
CHARSET = $_charset
|
||||||
|
HELP_FILE = $_mp_help
|
||||||
|
|
||||||
|
EXESUF = $_exesuf
|
||||||
|
|
||||||
|
$_target_arch
|
||||||
|
$_target_arch_x86
|
||||||
|
`echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/'`
|
||||||
|
|
||||||
|
GETCH = $_getch
|
||||||
|
TIMER = $_timer
|
||||||
|
|
||||||
|
AO_SRCS = $_aosrc
|
||||||
|
VO_SRCS = $_vosrc
|
||||||
|
|
||||||
|
MENCODER = $_mencoder
|
||||||
|
MPLAYER = $_mplayer
|
||||||
|
|
||||||
|
#internal libraries
|
||||||
|
LIBA52 = $_liba52
|
||||||
|
LIBMPEG2 = $_libmpeg2
|
||||||
|
MP3LIB = $_mp3lib
|
||||||
|
TREMOR_INTERNAL = $_tremor_internal
|
||||||
|
TREMOR_LOW = $_tremor_low
|
||||||
|
|
||||||
HAVE_SYS_MMAN_H = $_mman
|
HAVE_SYS_MMAN_H = $_mman
|
||||||
HAVE_POSIX_SELECT = $_posix_select
|
HAVE_POSIX_SELECT = $_posix_select
|
||||||
|
|
||||||
@ -7623,76 +7655,84 @@ NEED_STRSEP = $_need_strsep
|
|||||||
NEED_SWAB = $_need_swab
|
NEED_SWAB = $_need_swab
|
||||||
NEED_VSSCANF = $_need_vsscanf
|
NEED_VSSCANF = $_need_vsscanf
|
||||||
|
|
||||||
GETCH = $_getch
|
|
||||||
TIMER = $_timer
|
|
||||||
|
|
||||||
PE_EXECUTABLE = $_pe_executable
|
|
||||||
|
|
||||||
# audio output
|
# audio output
|
||||||
OSS = $_ossaudio
|
OSS = $_ossaudio
|
||||||
ALSA = $_alsa
|
|
||||||
ALSA5 = $_alsa5
|
|
||||||
ALSA9 = $_alsa9
|
ALSA9 = $_alsa9
|
||||||
ALSA1X = $_alsa1x
|
ALSA1X = $_alsa1x
|
||||||
|
|
||||||
LADSPA = $_ladspa
|
# features
|
||||||
|
APPLE_IR = $_apple_ir
|
||||||
# input/demuxer/codecs
|
|
||||||
JOYSTICK = $_joystick
|
|
||||||
LIRC = $_lirc
|
|
||||||
APPLE_REMOTE = $_apple_remote
|
APPLE_REMOTE = $_apple_remote
|
||||||
TV = $_tv
|
|
||||||
TV_V4L = $_tv_v4l
|
|
||||||
TV_V4L1 = $_tv_v4l1
|
|
||||||
TV_V4L2 = $_tv_v4l2
|
|
||||||
TV_DSHOW = $_tv_dshow
|
|
||||||
TV_BSDBT848 = $_tv_bsdbt848
|
|
||||||
TV_TELETEXT = $_tv_teletext
|
|
||||||
AUDIO_INPUT = $_audio_input
|
AUDIO_INPUT = $_audio_input
|
||||||
PVR = $_pvr
|
BITMAP_FONT = $_bitmap_font
|
||||||
VCD = $_vcd
|
CDDA = $_cdda
|
||||||
|
CDDB = $_cddb
|
||||||
|
COREAUDIO = $_coreaudio
|
||||||
|
COREVIDEO = $_corevideo
|
||||||
|
DVBIN = $_dvbin
|
||||||
|
DVDNAV = $_dvdnav
|
||||||
DVDREAD = $_dvdread
|
DVDREAD = $_dvdread
|
||||||
DVDREAD_INTERNAL = $_dvdread_internal
|
DVDREAD_INTERNAL = $_dvdread_internal
|
||||||
|
FAAC=$_faac
|
||||||
|
FAAD = $_faad
|
||||||
|
FAAD_INTERNAL = $_faad_internal
|
||||||
|
FREETYPE = $_freetype
|
||||||
|
FTP = $_ftp
|
||||||
|
GIF = $_gif
|
||||||
|
GUI = $_gui
|
||||||
|
GUI_GTK = $_gui_gtk
|
||||||
|
GUI_WIN32 = $_gui_win32
|
||||||
|
JOYSTICK = $_joystick
|
||||||
|
JPEG = $_jpeg
|
||||||
|
LADSPA = $_ladspa
|
||||||
|
LIBASS = $_ass
|
||||||
|
LIBDCA = $_libdca
|
||||||
|
LIBDV = $_libdv
|
||||||
LIBDVDCSS_INTERNAL = $_libdvdcss_internal
|
LIBDVDCSS_INTERNAL = $_libdvdcss_internal
|
||||||
LIBDVDCSS_DVDREAD_FLAGS = $_libdvdcss_dvdread_flags
|
LIBLZO = $_liblzo
|
||||||
DVDNAV = $_dvdnav
|
LIBMAD = $_mad
|
||||||
WIN32DLL = $_win32dll
|
LIBMENU = $_menu
|
||||||
WIN32_EMULATION = $_win32_emulation
|
LIBMENU_DVBIN = $_menu_dvbin
|
||||||
|
LIBNEMESI = $_nemesi
|
||||||
|
LIBNUT = $_libnut
|
||||||
|
LIBSMBCLIENT = $_smbsupport
|
||||||
|
LIBTHEORA = $_theora
|
||||||
|
LIBVORBIS = $_vorbis
|
||||||
|
LIRC = $_lirc
|
||||||
|
MACOSX_BUNDLE = $_macosx_bundle
|
||||||
|
MACOSX_FINDER_SUPPORT = $_macosx_finder_support
|
||||||
|
MP3LAME = $_mp3lame
|
||||||
|
MPLAYER_NETWORK = $_network
|
||||||
|
MUSEPACK = $_musepack
|
||||||
|
NATIVE_RTSP = $_native_rtsp
|
||||||
|
PE_EXECUTABLE = $_pe_executable
|
||||||
|
PNG = $_png
|
||||||
|
PVR = $_pvr
|
||||||
QTX_CODECS = $_qtx
|
QTX_CODECS = $_qtx
|
||||||
QTX_CODECS_WIN32 = $_qtx_codecs_win32
|
QTX_CODECS_WIN32 = $_qtx_codecs_win32
|
||||||
QTX_EMULATION = $_qtx_emulation
|
QTX_EMULATION = $_qtx_emulation
|
||||||
REAL_CODECS = $_real
|
|
||||||
XANIM_CODECS = $_xanim
|
|
||||||
ZORAN = $_zr
|
|
||||||
LIBLZO = $_liblzo
|
|
||||||
LIBDV = $_libdv
|
|
||||||
XVID4 = $_xvid
|
|
||||||
X264 = $_x264
|
|
||||||
LIBNUT = $_libnut
|
|
||||||
LIBDCA = $_libdca
|
|
||||||
MPLAYER = $_mplayer
|
|
||||||
MENCODER = $_mencoder
|
|
||||||
CDDA = $_cdda
|
|
||||||
CDDB = $_cddb
|
|
||||||
BITMAP_FONT = $_bitmap_font
|
|
||||||
FREETYPE = $_freetype
|
|
||||||
LIBASS = $_ass
|
|
||||||
LIBMAD = $_mad
|
|
||||||
LIBVORBIS = $_vorbis
|
|
||||||
LIBTHEORA = $_theora
|
|
||||||
FAAD_INTERNAL = $_faad_internal
|
|
||||||
LIBSMBCLIENT = $_smbsupport
|
|
||||||
XMMS_PLUGINS = $_xmms
|
|
||||||
MACOSX_FINDER_SUPPORT = $_macosx_finder_support
|
|
||||||
MACOSX_BUNDLE = $_macosx_bundle
|
|
||||||
COREAUDIO = $_coreaudio
|
|
||||||
COREVIDEO = $_corevideo
|
|
||||||
QUARTZ = $_quartz
|
QUARTZ = $_quartz
|
||||||
TOOLAME=$_toolame
|
|
||||||
TWOLAME=$_twolame
|
|
||||||
FAAC=$_faac
|
|
||||||
RADIO=$_radio
|
RADIO=$_radio
|
||||||
RADIO_CAPTURE=$_radio_capture
|
RADIO_CAPTURE=$_radio_capture
|
||||||
|
REAL_CODECS = $_real
|
||||||
|
SPEEX = $_speex
|
||||||
|
STREAMING_LIVE555 = $_live
|
||||||
|
STREAM_CACHE = $_stream_cache
|
||||||
|
TOOLAME=$_toolame
|
||||||
|
TV = $_tv
|
||||||
|
TV_BSDBT848 = $_tv_bsdbt848
|
||||||
|
TV_DSHOW = $_tv_dshow
|
||||||
|
TV_TELETEXT = $_tv_teletext
|
||||||
|
TV_V4L = $_tv_v4l
|
||||||
|
TV_V4L1 = $_tv_v4l1
|
||||||
|
TV_V4L2 = $_tv_v4l2
|
||||||
|
TWOLAME=$_twolame
|
||||||
|
UNRAR_EXEC = $_unrar_exec
|
||||||
|
VCD = $_vcd
|
||||||
|
VIDIX = $_vidix
|
||||||
|
VIDIX_EXTERNAL = $_vidix_external
|
||||||
|
VIDIX_INTERNAL = $_vidix_internal
|
||||||
|
VIDIX_PCIDB = $_vidix_pcidb_val
|
||||||
VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
|
VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
|
||||||
VIDIX_IVTV=$_vidix_drv_ivtv
|
VIDIX_IVTV=$_vidix_drv_ivtv
|
||||||
VIDIX_MACH64=$_vidix_drv_mach64
|
VIDIX_MACH64=$_vidix_drv_mach64
|
||||||
@ -7706,22 +7746,14 @@ VIDIX_RAGE128=$_vidix_drv_rage128
|
|||||||
VIDIX_S3=$_vidix_drv_s3
|
VIDIX_S3=$_vidix_drv_s3
|
||||||
VIDIX_SIS=$_vidix_drv_sis
|
VIDIX_SIS=$_vidix_drv_sis
|
||||||
VIDIX_UNICHROME=$_vidix_drv_unichrome
|
VIDIX_UNICHROME=$_vidix_drv_unichrome
|
||||||
|
VSTREAM = $_vstream
|
||||||
# --- Some stuff for autoconfigure ----
|
WIN32DLL = $_win32dll
|
||||||
$_target_arch
|
WIN32_EMULATION = $_win32_emulation
|
||||||
$_target_arch_x86
|
X264 = $_x264
|
||||||
TARGET_CPU=$iproc
|
XANIM_CODECS = $_xanim
|
||||||
`echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/'`
|
XMMS_PLUGINS = $_xmms
|
||||||
|
XVID4 = $_xvid
|
||||||
# --- GUI stuff ---
|
ZORAN = $_zr
|
||||||
GUI_GTK = $_gui_gtk
|
|
||||||
GUI_WIN32 = $_gui_win32
|
|
||||||
|
|
||||||
# --- libvo stuff ---
|
|
||||||
VO_SRCS = $_vosrc
|
|
||||||
|
|
||||||
# --- libao2 stuff ---
|
|
||||||
AO_SRCS = $_aosrc
|
|
||||||
|
|
||||||
# FFmpeg
|
# FFmpeg
|
||||||
LIBAVUTIL = $_libavutil
|
LIBAVUTIL = $_libavutil
|
||||||
@ -7756,6 +7788,7 @@ CONFIG_LIBVORBIS=$_libvorbis
|
|||||||
CONFIG_LIBX264=$_x264_lavc
|
CONFIG_LIBX264=$_x264_lavc
|
||||||
CONFIG_LIBXVID=$_xvid_lavc
|
CONFIG_LIBXVID=$_xvid_lavc
|
||||||
CONFIG_MLIB = $_mlib
|
CONFIG_MLIB = $_mlib
|
||||||
|
CONFIG_POSTPROC = yes
|
||||||
# Prevent building libavcodec/imgresample.c with conflicting symbols
|
# Prevent building libavcodec/imgresample.c with conflicting symbols
|
||||||
CONFIG_SWSCALE=yes
|
CONFIG_SWSCALE=yes
|
||||||
CONFIG_ZLIB=$_zlib
|
CONFIG_ZLIB=$_zlib
|
||||||
@ -7912,7 +7945,7 @@ $_def_hpux_scsi_h
|
|||||||
-cache <kilobytes> */
|
-cache <kilobytes> */
|
||||||
$_def_stream_cache
|
$_def_stream_cache
|
||||||
|
|
||||||
/* Define if you are using XviD library */
|
/* Define if you are using Xvid library */
|
||||||
$_def_xvid
|
$_def_xvid
|
||||||
|
|
||||||
/* Define if you are using the X.264 library */
|
/* Define if you are using the X.264 library */
|
||||||
@ -8051,6 +8084,9 @@ $_def_lirc
|
|||||||
/* Apple Remote (remote control, see http://docs.info.apple.com/article.html?artnum=302504) support: */
|
/* Apple Remote (remote control, see http://docs.info.apple.com/article.html?artnum=302504) support: */
|
||||||
$_def_apple_remote
|
$_def_apple_remote
|
||||||
|
|
||||||
|
/* Apple IR Remote (Linux remote control driver) */
|
||||||
|
$_def_apple_ir
|
||||||
|
|
||||||
/* Support for maemo (http://www.maemo.org) */
|
/* Support for maemo (http://www.maemo.org) */
|
||||||
$_def_maemo
|
$_def_maemo
|
||||||
|
|
||||||
@ -8461,6 +8497,7 @@ $_def_gethostbyname2
|
|||||||
`ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE"`
|
`ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE"`
|
||||||
|
|
||||||
$_def_altivec_h // enables usage of altivec.h
|
$_def_altivec_h // enables usage of altivec.h
|
||||||
|
$_def_altivec_vector_braces
|
||||||
|
|
||||||
/* libvo options */
|
/* libvo options */
|
||||||
#define SCREEN_SIZE_X 1
|
#define SCREEN_SIZE_X 1
|
||||||
@ -8544,7 +8581,7 @@ Config files successfully generated by ./configure $_configuration !
|
|||||||
Messages/GUI: $_language
|
Messages/GUI: $_language
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
echo ${_echo_n} " Manual pages: $MAN_LANG ${_echo_c}"
|
echo ${_echo_n} " Manual pages: $MAN_LANG_ALL ${_echo_c}"
|
||||||
test "$LANGUAGES" = en && echo ${_echo_n} " (no localization selected, use --language=all)${_echo_c}"
|
test "$LANGUAGES" = en && echo ${_echo_n} " (no localization selected, use --language=all)${_echo_c}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ static int has_cpuid(void)
|
|||||||
: "cc"
|
: "cc"
|
||||||
);
|
);
|
||||||
|
|
||||||
return (a!=c);
|
return a != c;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
#include "defaultopts.h"
|
#include "defaultopts.h"
|
||||||
#include "options.h"
|
#include "options.h"
|
||||||
|
|
||||||
@ -39,7 +41,11 @@ void set_default_mplayer_options(struct MPOpts *opts)
|
|||||||
.use_joystick = 1,
|
.use_joystick = 1,
|
||||||
.use_lirc = 1,
|
.use_lirc = 1,
|
||||||
.use_lircc = 1,
|
.use_lircc = 1,
|
||||||
|
#ifdef HAVE_APPLE_REMOTE
|
||||||
.use_ar = 1,
|
.use_ar = 1,
|
||||||
|
#else
|
||||||
|
.use_ar = 0,
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,34 +0,0 @@
|
|||||||
KERNEL_INC = /lib/modules/`uname -r`/build/include
|
|
||||||
VERSION = $(shell grep RELEASE $(KERNEL_INC)/linux/version.h | cut -d'"' -f2)
|
|
||||||
MDIR = /lib/modules/$(VERSION)/misc
|
|
||||||
|
|
||||||
CFLAGS = -O2 -D__KERNEL__ -DMODULE -Wall -I$(KERNEL_INC) \
|
|
||||||
-include $(KERNEL_INC)/linux/modversions.h
|
|
||||||
|
|
||||||
OBJS = mga_vid.o tdfx_vid.o radeon_vid.o rage128_vid.o
|
|
||||||
|
|
||||||
all: $(OBJS) mga_vid_test tdfx_vid_test
|
|
||||||
|
|
||||||
mga_vid.o: mga_vid.c mga_vid.h
|
|
||||||
tdfx_vid.o: tdfx_vid.c 3dfx.h
|
|
||||||
radeon_vid.o: radeon_vid.c radeon.h radeon_vid.h
|
|
||||||
rage128_vid.o: radeon_vid.c radeon.h radeon_vid.h
|
|
||||||
$(CC) $(CFLAGS) -DRAGE128 -c $< -o $@
|
|
||||||
radeon_vid.o rage128_vid.o:
|
|
||||||
CFLAGS += -fomit-frame-pointer -fno-strict-aliasing -fno-common -ffast-math
|
|
||||||
|
|
||||||
install:
|
|
||||||
-mkdir -p $(MDIR)
|
|
||||||
install -m 644 $(OBJS) $(MDIR)
|
|
||||||
depmod -a
|
|
||||||
-mknod /dev/mga_vid c 178 0
|
|
||||||
-mknod /dev/tdfx_vid c 178 0
|
|
||||||
-mknod /dev/radeon_vid c 178 0
|
|
||||||
-ln -s /dev/radeon_vid /dev/rage128_vid
|
|
||||||
|
|
||||||
dep depend:
|
|
||||||
|
|
||||||
clean distclean:
|
|
||||||
rm -f *.o *~ mga_vid_test tdfx_vid_test
|
|
||||||
|
|
||||||
.PHONY: all install dep depend *clean
|
|
@ -1207,27 +1207,27 @@ static int mga_vid_ioctl(struct inode *inode, struct file *file, unsigned int cm
|
|||||||
if(copy_from_user(&card->config,(mga_vid_config_t*) arg,sizeof(mga_vid_config_t)))
|
if(copy_from_user(&card->config,(mga_vid_config_t*) arg,sizeof(mga_vid_config_t)))
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: failed copy from userspace\n");
|
printk(KERN_ERR "mga_vid: failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
if(card->config.version != MGA_VID_VERSION){
|
if(card->config.version != MGA_VID_VERSION){
|
||||||
printk(KERN_ERR "mga_vid: incompatible version! driver: %X requested: %X\n",MGA_VID_VERSION,card->config.version);
|
printk(KERN_ERR "mga_vid: incompatible version! driver: %X requested: %X\n",MGA_VID_VERSION,card->config.version);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(card->config.frame_size==0 || card->config.frame_size>1024*768*2){
|
if(card->config.frame_size==0 || card->config.frame_size>1024*768*2){
|
||||||
printk(KERN_ERR "mga_vid: illegal frame_size: %d\n",card->config.frame_size);
|
printk(KERN_ERR "mga_vid: illegal frame_size: %d\n",card->config.frame_size);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(card->config.num_frames<1 || card->config.num_frames>4){
|
if(card->config.num_frames<1 || card->config.num_frames>4){
|
||||||
printk(KERN_ERR "mga_vid: illegal num_frames: %d\n",card->config.num_frames);
|
printk(KERN_ERR "mga_vid: illegal num_frames: %d\n",card->config.num_frames);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
card->src_base = (card->ram_size * 0x100000 - card->config.num_frames * card->config.frame_size - card->top_reserved);
|
card->src_base = (card->ram_size * 0x100000 - card->config.num_frames * card->config.frame_size - card->top_reserved);
|
||||||
if(card->src_base<0){
|
if(card->src_base<0){
|
||||||
printk(KERN_ERR "mga_vid: not enough memory for frames!\n");
|
printk(KERN_ERR "mga_vid: not enough memory for frames!\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
card->src_base &= (~0xFFFF); // 64k boundary
|
card->src_base &= (~0xFFFF); // 64k boundary
|
||||||
#ifdef MP_DEBUG
|
#ifdef MP_DEBUG
|
||||||
@ -1244,7 +1244,7 @@ static int mga_vid_ioctl(struct inode *inode, struct file *file, unsigned int cm
|
|||||||
if (copy_to_user((mga_vid_config_t *) arg, &card->config, sizeof(mga_vid_config_t)))
|
if (copy_to_user((mga_vid_config_t *) arg, &card->config, sizeof(mga_vid_config_t)))
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: failed copy to userspace\n");
|
printk(KERN_ERR "mga_vid: failed copy to userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
result = mga_vid_set_config(card);
|
result = mga_vid_set_config(card);
|
||||||
@ -1285,7 +1285,7 @@ static int mga_vid_ioctl(struct inode *inode, struct file *file, unsigned int cm
|
|||||||
if(copy_from_user(&frame,(int *) arg,sizeof(int)))
|
if(copy_from_user(&frame,(int *) arg,sizeof(int)))
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: FSEL failed copy from userspace\n");
|
printk(KERN_ERR "mga_vid: FSEL failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
mga_vid_frame_sel(card, frame);
|
mga_vid_frame_sel(card, frame);
|
||||||
@ -1300,7 +1300,7 @@ static int mga_vid_ioctl(struct inode *inode, struct file *file, unsigned int cm
|
|||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: failed copy %p to userspace %p\n",
|
printk(KERN_ERR "mga_vid: failed copy %p to userspace %p\n",
|
||||||
&tmp, (uint32_t *) arg);
|
&tmp, (uint32_t *) arg);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -1314,7 +1314,7 @@ static int mga_vid_ioctl(struct inode *inode, struct file *file, unsigned int cm
|
|||||||
|
|
||||||
default:
|
default:
|
||||||
printk(KERN_ERR "mga_vid: Invalid ioctl\n");
|
printk(KERN_ERR "mga_vid: Invalid ioctl\n");
|
||||||
return (-EINVAL);
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -1464,17 +1464,17 @@ static int mga_vid_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
if(!card->configured)
|
if(!card->configured)
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: card is not configured, cannot mmap\n");
|
printk(KERN_ERR "mga_vid: card is not configured, cannot mmap\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(remap_page_range(vma->vm_start, card->mem_base + card->src_base,
|
if(remap_page_range(vma->vm_start, card->mem_base + card->src_base,
|
||||||
vma->vm_end - vma->vm_start, vma->vm_page_prot))
|
vma->vm_end - vma->vm_start, vma->vm_page_prot))
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "mga_vid: error mapping video memory\n");
|
printk(KERN_ERR "mga_vid: error mapping video memory\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mga_vid_release(struct inode *inode, struct file *file)
|
static int mga_vid_release(struct inode *inode, struct file *file)
|
||||||
@ -1517,7 +1517,7 @@ static int mga_vid_open(struct inode *inode, struct file *file)
|
|||||||
|
|
||||||
// we don't have that many cards
|
// we don't have that many cards
|
||||||
if(minor >= mga_cards_num)
|
if(minor >= mga_cards_num)
|
||||||
return(-ENXIO);
|
return -ENXIO;
|
||||||
|
|
||||||
file->private_data = mga_cards[minor];
|
file->private_data = mga_cards[minor];
|
||||||
#ifdef MP_DEBUG
|
#ifdef MP_DEBUG
|
||||||
@ -1533,11 +1533,11 @@ static int mga_vid_open(struct inode *inode, struct file *file)
|
|||||||
card = (mga_card_t *) file->private_data;
|
card = (mga_card_t *) file->private_data;
|
||||||
|
|
||||||
if(card->vid_in_use == 1)
|
if(card->vid_in_use == 1)
|
||||||
return(-EBUSY);
|
return -EBUSY;
|
||||||
|
|
||||||
card->vid_in_use = 1;
|
card->vid_in_use = 1;
|
||||||
MOD_INC_USE_COUNT;
|
MOD_INC_USE_COUNT;
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if LINUX_VERSION_CODE >= 0x020400
|
#if LINUX_VERSION_CODE >= 0x020400
|
||||||
@ -1735,7 +1735,7 @@ static int mga_vid_initialize(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int init_module(void)
|
int init_module(void)
|
||||||
|
@ -1,28 +1,19 @@
|
|||||||
/*
|
/*
|
||||||
* Matrox MGA G200/G400 YUV Video Interface module Version 0.1.0
|
*
|
||||||
* BES == Back End Scaler
|
* mga_vid.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 1999 Aaron Holtzman
|
* Copyright (C) 1999 Aaron Holtzman
|
||||||
*
|
*
|
||||||
* This file is part of MPlayer.
|
* Matrox MGA G200/G400 YUV Video Interface module Version 0.1.0
|
||||||
*
|
*
|
||||||
* MPlayer is free software; you can redistribute it and/or modify
|
* BES == Back End Scaler
|
||||||
* it under the terms of the GNU General Public License as published by
|
*
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
* This software has been released under the terms of the GNU Public
|
||||||
* (at your option) any later version.
|
* license. See http://www.gnu.org/copyleft/gpl.html for details.
|
||||||
*
|
|
||||||
* MPlayer 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 MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef MPLAYER_MGA_VID_H
|
#ifndef MGA_VID_H
|
||||||
#define MPLAYER_MGA_VID_H
|
#define MGA_VID_H
|
||||||
|
|
||||||
typedef struct mga_vid_config_s
|
typedef struct mga_vid_config_s
|
||||||
{
|
{
|
||||||
@ -42,27 +33,33 @@ uint8_t colkey_blue;
|
|||||||
uint32_t format;
|
uint32_t format;
|
||||||
uint32_t frame_size;
|
uint32_t frame_size;
|
||||||
uint32_t num_frames;
|
uint32_t num_frames;
|
||||||
|
uint32_t capabilities;
|
||||||
} mga_vid_config_t;
|
} mga_vid_config_t;
|
||||||
|
|
||||||
|
/* supported FOURCCs */
|
||||||
#define MGA_VID_FORMAT_YV12 0x32315659
|
#define MGA_VID_FORMAT_YV12 0x32315659
|
||||||
#define MGA_VID_FORMAT_IYUV (('I'<<24)|('Y'<<16)|('U'<<8)|'V')
|
#define MGA_VID_FORMAT_IYUV (('I'<<24)|('Y'<<16)|('U'<<8)|'V')
|
||||||
#define MGA_VID_FORMAT_I420 (('I'<<24)|('4'<<16)|('2'<<8)|'0')
|
#define MGA_VID_FORMAT_I420 (('I'<<24)|('4'<<16)|('2'<<8)|'0')
|
||||||
#define MGA_VID_FORMAT_YUY2 (('Y'<<24)|('U'<<16)|('Y'<<8)|'2')
|
#define MGA_VID_FORMAT_YUY2 (('Y'<<24)|('U'<<16)|('Y'<<8)|'2')
|
||||||
#define MGA_VID_FORMAT_UYVY (('U'<<24)|('Y'<<16)|('V'<<8)|'Y')
|
#define MGA_VID_FORMAT_UYVY (('U'<<24)|('Y'<<16)|('V'<<8)|'Y')
|
||||||
|
|
||||||
#define MGA_VID_CONFIG _IOR('J', 1, mga_vid_config_t)
|
/* ioctl commands */
|
||||||
#define MGA_VID_ON _IO ('J', 2)
|
#define MGA_VID_GET_VERSION _IOR ('J', 1, uint32_t)
|
||||||
#define MGA_VID_OFF _IO ('J', 3)
|
#define MGA_VID_CONFIG _IOWR('J', 2, mga_vid_config_t)
|
||||||
#define MGA_VID_FSEL _IOR('J', 4, int)
|
#define MGA_VID_ON _IO ('J', 3)
|
||||||
#define MGA_VID_GET_LUMA _IOR('J', 5, int)
|
#define MGA_VID_OFF _IO ('J', 4)
|
||||||
#define MGA_VID_SET_LUMA _IOR('J', 6, int)
|
#define MGA_VID_FSEL _IOW ('J', 5, uint32_t)
|
||||||
|
#define MGA_VID_GET_LUMA _IOR ('J', 6, uint32_t)
|
||||||
|
#define MGA_VID_SET_LUMA _IOW ('J', 7, uint32_t)
|
||||||
|
|
||||||
|
/* card identifiers */
|
||||||
#define MGA_G200 0x1234
|
#define MGA_G200 0x1234
|
||||||
#define MGA_G400 0x5678
|
#define MGA_G400 0x5678
|
||||||
// currently unused, G450 are mapped to MGA_G400
|
// currently unused, G450 are mapped to MGA_G400
|
||||||
// #define MGA_G450 0x9ABC
|
// #define MGA_G450 0x9ABC
|
||||||
#define MGA_G550 0xDEF0
|
#define MGA_G550 0xDEF0
|
||||||
|
|
||||||
#define MGA_VID_VERSION 0x0201
|
/* version of the mga_vid_config struct */
|
||||||
|
#define MGA_VID_VERSION 0x0202
|
||||||
|
|
||||||
#endif /* MPLAYER_MGA_VID_H */
|
#endif /* MGA_VID_H */
|
||||||
|
@ -336,47 +336,47 @@ static char *fourcc_format_name(int format)
|
|||||||
{
|
{
|
||||||
switch(format)
|
switch(format)
|
||||||
{
|
{
|
||||||
case IMGFMT_RGB8: return("RGB 8-bit");
|
case IMGFMT_RGB8: return "RGB 8-bit";
|
||||||
case IMGFMT_RGB15: return("RGB 15-bit");
|
case IMGFMT_RGB15: return "RGB 15-bit";
|
||||||
case IMGFMT_RGB16: return("RGB 16-bit");
|
case IMGFMT_RGB16: return "RGB 16-bit";
|
||||||
case IMGFMT_RGB24: return("RGB 24-bit");
|
case IMGFMT_RGB24: return "RGB 24-bit";
|
||||||
case IMGFMT_RGB32: return("RGB 32-bit");
|
case IMGFMT_RGB32: return "RGB 32-bit";
|
||||||
case IMGFMT_BGR8: return("BGR 8-bit");
|
case IMGFMT_BGR8: return "BGR 8-bit";
|
||||||
case IMGFMT_BGR15: return("BGR 15-bit");
|
case IMGFMT_BGR15: return "BGR 15-bit";
|
||||||
case IMGFMT_BGR16: return("BGR 16-bit");
|
case IMGFMT_BGR16: return "BGR 16-bit";
|
||||||
case IMGFMT_BGR24: return("BGR 24-bit");
|
case IMGFMT_BGR24: return "BGR 24-bit";
|
||||||
case IMGFMT_BGR32: return("BGR 32-bit");
|
case IMGFMT_BGR32: return "BGR 32-bit";
|
||||||
case IMGFMT_YVU9: return("Planar YVU9");
|
case IMGFMT_YVU9: return "Planar YVU9";
|
||||||
case IMGFMT_IF09: return("Planar IF09");
|
case IMGFMT_IF09: return "Planar IF09";
|
||||||
case IMGFMT_YV12: return("Planar YV12");
|
case IMGFMT_YV12: return "Planar YV12";
|
||||||
case IMGFMT_I420: return("Planar I420");
|
case IMGFMT_I420: return "Planar I420";
|
||||||
case IMGFMT_IYUV: return("Planar IYUV");
|
case IMGFMT_IYUV: return "Planar IYUV";
|
||||||
case IMGFMT_CLPL: return("Planar CLPL");
|
case IMGFMT_CLPL: return "Planar CLPL";
|
||||||
case IMGFMT_Y800: return("Planar Y800");
|
case IMGFMT_Y800: return "Planar Y800";
|
||||||
case IMGFMT_Y8: return("Planar Y8");
|
case IMGFMT_Y8: return "Planar Y8";
|
||||||
case IMGFMT_IUYV: return("Packed IUYV");
|
case IMGFMT_IUYV: return "Packed IUYV";
|
||||||
case IMGFMT_IY41: return("Packed IY41");
|
case IMGFMT_IY41: return "Packed IY41";
|
||||||
case IMGFMT_IYU1: return("Packed IYU1");
|
case IMGFMT_IYU1: return "Packed IYU1";
|
||||||
case IMGFMT_IYU2: return("Packed IYU2");
|
case IMGFMT_IYU2: return "Packed IYU2";
|
||||||
case IMGFMT_UYNV: return("Packed UYNV");
|
case IMGFMT_UYNV: return "Packed UYNV";
|
||||||
case IMGFMT_cyuv: return("Packed CYUV");
|
case IMGFMT_cyuv: return "Packed CYUV";
|
||||||
case IMGFMT_Y422: return("Packed Y422");
|
case IMGFMT_Y422: return "Packed Y422";
|
||||||
case IMGFMT_YUY2: return("Packed YUY2");
|
case IMGFMT_YUY2: return "Packed YUY2";
|
||||||
case IMGFMT_YUNV: return("Packed YUNV");
|
case IMGFMT_YUNV: return "Packed YUNV";
|
||||||
case IMGFMT_UYVY: return("Packed UYVY");
|
case IMGFMT_UYVY: return "Packed UYVY";
|
||||||
// case IMGFMT_YVYU: return("Packed YVYU");
|
// case IMGFMT_YVYU: return "Packed YVYU";
|
||||||
case IMGFMT_Y41P: return("Packed Y41P");
|
case IMGFMT_Y41P: return "Packed Y41P";
|
||||||
case IMGFMT_Y211: return("Packed Y211");
|
case IMGFMT_Y211: return "Packed Y211";
|
||||||
case IMGFMT_Y41T: return("Packed Y41T");
|
case IMGFMT_Y41T: return "Packed Y41T";
|
||||||
case IMGFMT_Y42T: return("Packed Y42T");
|
case IMGFMT_Y42T: return "Packed Y42T";
|
||||||
case IMGFMT_V422: return("Packed V422");
|
case IMGFMT_V422: return "Packed V422";
|
||||||
case IMGFMT_V655: return("Packed V655");
|
case IMGFMT_V655: return "Packed V655";
|
||||||
case IMGFMT_CLJR: return("Packed CLJR");
|
case IMGFMT_CLJR: return "Packed CLJR";
|
||||||
case IMGFMT_YUVP: return("Packed YUVP");
|
case IMGFMT_YUVP: return "Packed YUVP";
|
||||||
case IMGFMT_UYVP: return("Packed UYVP");
|
case IMGFMT_UYVP: return "Packed UYVP";
|
||||||
case IMGFMT_MPEGPES: return("Mpeg PES");
|
case IMGFMT_MPEGPES: return "Mpeg PES";
|
||||||
}
|
}
|
||||||
return("Unknown");
|
return "Unknown";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1110,14 +1110,14 @@ static int radeon_vid_ioctl(struct inode *inode, struct file *file, unsigned int
|
|||||||
if(copy_from_user(&frame,(int *) arg,sizeof(int)))
|
if(copy_from_user(&frame,(int *) arg,sizeof(int)))
|
||||||
{
|
{
|
||||||
printk(RVID_MSG"FSEL failed copy from userspace\n");
|
printk(RVID_MSG"FSEL failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
radeon_vid_frame_sel(frame);
|
radeon_vid_frame_sel(frame);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
printk(RVID_MSG"Invalid ioctl\n");
|
printk(RVID_MSG"Invalid ioctl\n");
|
||||||
return (-EINVAL);
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -1405,10 +1405,10 @@ static int radeon_vid_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
vma->vm_end - vma->vm_start, vma->vm_page_prot))
|
vma->vm_end - vma->vm_start, vma->vm_page_prot))
|
||||||
{
|
{
|
||||||
printk(RVID_MSG"error mapping video memory\n");
|
printk(RVID_MSG"error mapping video memory\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int radeon_vid_release(struct inode *inode, struct file *file)
|
static int radeon_vid_release(struct inode *inode, struct file *file)
|
||||||
@ -1430,14 +1430,14 @@ static int radeon_vid_open(struct inode *inode, struct file *file)
|
|||||||
int minor = MINOR(inode->i_rdev);
|
int minor = MINOR(inode->i_rdev);
|
||||||
|
|
||||||
if(minor != 0)
|
if(minor != 0)
|
||||||
return(-ENXIO);
|
return -ENXIO;
|
||||||
|
|
||||||
if(radeon_vid_in_use == 1)
|
if(radeon_vid_in_use == 1)
|
||||||
return(-EBUSY);
|
return -EBUSY;
|
||||||
|
|
||||||
radeon_vid_in_use = 1;
|
radeon_vid_in_use = 1;
|
||||||
MOD_INC_USE_COUNT;
|
MOD_INC_USE_COUNT;
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if LINUX_VERSION_CODE >= 0x020400
|
#if LINUX_VERSION_CODE >= 0x020400
|
||||||
@ -1523,7 +1523,7 @@ static int __init radeon_vid_initialize(void)
|
|||||||
printk(RVID_MSG"MTRR set to ON\n");
|
printk(RVID_MSG"MTRR set to ON\n");
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_MTRR */
|
#endif /* CONFIG_MTRR */
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int __init init_module(void)
|
int __init init_module(void)
|
||||||
|
@ -258,12 +258,12 @@ static int agp_move(tdfx_vid_agp_move_t* m) {
|
|||||||
u32 src_h,src_l;
|
u32 src_h,src_l;
|
||||||
|
|
||||||
if(!(agp_mem||map_start))
|
if(!(agp_mem||map_start))
|
||||||
return (-EAGAIN);
|
return -EAGAIN;
|
||||||
|
|
||||||
if(m->move2 > 3) {
|
if(m->move2 > 3) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: AGP move invalid destination %d\n",
|
printk(KERN_DEBUG "tdfx_vid: AGP move invalid destination %d\n",
|
||||||
m->move2);
|
m->move2);
|
||||||
return (-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(map_start)
|
if(map_start)
|
||||||
@ -289,6 +289,7 @@ static int agp_move(tdfx_vid_agp_move_t* m) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
static void setup_fifo(u32 offset,ssize_t pages) {
|
static void setup_fifo(u32 offset,ssize_t pages) {
|
||||||
long addr = agp_info.aper_base + offset;
|
long addr = agp_info.aper_base + offset;
|
||||||
u32 size = pages | 0x700; // fifo on, in agp mem, disable hole cnt
|
u32 size = pages | 0x700; // fifo on, in agp mem, disable hole cnt
|
||||||
@ -307,6 +308,7 @@ static void setup_fifo(u32 offset,ssize_t pages) {
|
|||||||
banshee_wait_idle();
|
banshee_wait_idle();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int bump_fifo(u16 size) {
|
static int bump_fifo(u16 size) {
|
||||||
|
|
||||||
@ -511,7 +513,7 @@ static int tdfx_vid_set_yuv(unsigned long arg) {
|
|||||||
|
|
||||||
if(copy_from_user(&yuv,(tdfx_vid_yuv_t*)arg,sizeof(tdfx_vid_yuv_t))) {
|
if(copy_from_user(&yuv,(tdfx_vid_yuv_t*)arg,sizeof(tdfx_vid_yuv_t))) {
|
||||||
printk(KERN_DEBUG "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_DEBUG "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
banshee_make_room(2);
|
banshee_make_room(2);
|
||||||
tdfx_outl(YUVBASEADDRESS,yuv.base & 0x01FFFFFF);
|
tdfx_outl(YUVBASEADDRESS,yuv.base & 0x01FFFFFF);
|
||||||
@ -530,7 +532,7 @@ static int tdfx_vid_get_yuv(unsigned long arg) {
|
|||||||
|
|
||||||
if(copy_to_user((tdfx_vid_yuv_t*)arg,&yuv,sizeof(tdfx_vid_yuv_t))) {
|
if(copy_to_user((tdfx_vid_yuv_t*)arg,&yuv,sizeof(tdfx_vid_yuv_t))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy to userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy to userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -544,14 +546,14 @@ static int tdfx_vid_set_overlay(unsigned long arg) {
|
|||||||
|
|
||||||
if(copy_from_user(&ov,(tdfx_vid_overlay_t*)arg,sizeof(tdfx_vid_overlay_t))) {
|
if(copy_from_user(&ov,(tdfx_vid_overlay_t*)arg,sizeof(tdfx_vid_overlay_t))) {
|
||||||
printk(KERN_DEBUG "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_DEBUG "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(ov.dst_y < 0) {
|
if(ov.dst_y < 0) {
|
||||||
int shift;
|
int shift;
|
||||||
if(-ov.dst_y >= ov.src_height) {
|
if(-ov.dst_y >= ov.src_height) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: Overlay outside of the screen ????\n");
|
printk(KERN_DEBUG "tdfx_vid: Overlay outside of the screen ????\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
shift = (-ov.dst_y)/(double)ov.dst_height*ov.src_height;
|
shift = (-ov.dst_y)/(double)ov.dst_height*ov.src_height;
|
||||||
ov.src[0] += shift*ov.src_stride;
|
ov.src[0] += shift*ov.src_stride;
|
||||||
@ -564,7 +566,7 @@ static int tdfx_vid_set_overlay(unsigned long arg) {
|
|||||||
int shift;
|
int shift;
|
||||||
if(-ov.dst_x >= ov.src_width) {
|
if(-ov.dst_x >= ov.src_width) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: Overlay outside of the screen ????\n");
|
printk(KERN_DEBUG "tdfx_vid: Overlay outside of the screen ????\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
shift = (-ov.dst_x)/(double)ov.dst_width*ov.src_width;
|
shift = (-ov.dst_x)/(double)ov.dst_width*ov.src_width;
|
||||||
shift = ((shift+3)/2)*2;
|
shift = ((shift+3)/2)*2;
|
||||||
@ -592,7 +594,7 @@ static int tdfx_vid_set_overlay(unsigned long arg) {
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
printk(KERN_DEBUG "tdfx_vid: Invalid overlay fmt 0x%x\n",ov.format);
|
printk(KERN_DEBUG "tdfx_vid: Invalid overlay fmt 0x%x\n",ov.format);
|
||||||
return (-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
// YUV422 need 4 bytes aligned stride and address
|
// YUV422 need 4 bytes aligned stride and address
|
||||||
@ -600,11 +602,11 @@ static int tdfx_vid_set_overlay(unsigned long arg) {
|
|||||||
ov.format == TDFX_VID_FORMAT_UYVY)) {
|
ov.format == TDFX_VID_FORMAT_UYVY)) {
|
||||||
if((ov.src_stride & ~0x3) != ov.src_stride) {
|
if((ov.src_stride & ~0x3) != ov.src_stride) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: YUV need a 4 bytes aligned stride %d\n",ov.src_stride);
|
printk(KERN_DEBUG "tdfx_vid: YUV need a 4 bytes aligned stride %d\n",ov.src_stride);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
if((ov.src[0] & ~0x3) != ov.src[0] || (ov.src[1] & ~0x3) != ov.src[1]){
|
if((ov.src[0] & ~0x3) != ov.src[0] || (ov.src[1] & ~0x3) != ov.src[1]){
|
||||||
printk(KERN_DEBUG "tdfx_vid: YUV need a 4 bytes aligned address 0x%x 0x%x\n",ov.src[0],ov.src[1]);
|
printk(KERN_DEBUG "tdfx_vid: YUV need a 4 bytes aligned address 0x%x 0x%x\n",ov.src[0],ov.src[1]);
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -622,7 +624,7 @@ static int tdfx_vid_set_overlay(unsigned long arg) {
|
|||||||
if(ov.dst_x >= screen_w || ov.dst_y >= screen_h ||
|
if(ov.dst_x >= screen_w || ov.dst_y >= screen_h ||
|
||||||
disp_h <= 0 || disp_h > screen_h || disp_w <= 0 || disp_w > screen_w) {
|
disp_h <= 0 || disp_h > screen_h || disp_w <= 0 || disp_w > screen_w) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: Invalid overlay dimension and/or position\n");
|
printk(KERN_DEBUG "tdfx_vid: Invalid overlay dimension and/or position\n");
|
||||||
return (-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
// Setup the vidproc
|
// Setup the vidproc
|
||||||
// H scaling
|
// H scaling
|
||||||
@ -702,7 +704,7 @@ static int tdfx_vid_overlay_on(void) {
|
|||||||
//return 0;
|
//return 0;
|
||||||
if(vidcfg & (1<<8)) { // Overlay is already on
|
if(vidcfg & (1<<8)) { // Overlay is already on
|
||||||
//printk(KERN_DEBUG "tdfx_vid: Overlay is already on.\n");
|
//printk(KERN_DEBUG "tdfx_vid: Overlay is already on.\n");
|
||||||
return (-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
vidcfg |= (1<<8);
|
vidcfg |= (1<<8);
|
||||||
tdfx_outl(VIDPROCCFG,vidcfg);
|
tdfx_outl(VIDPROCCFG,vidcfg);
|
||||||
@ -719,7 +721,7 @@ static int tdfx_vid_overlay_off(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
printk(KERN_DEBUG "tdfx_vid: Overlay is already off.\n");
|
printk(KERN_DEBUG "tdfx_vid: Overlay is already off.\n");
|
||||||
return (-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -734,34 +736,34 @@ static int tdfx_vid_ioctl(struct inode *inode, struct file *file, unsigned int c
|
|||||||
case TDFX_VID_AGP_MOVE:
|
case TDFX_VID_AGP_MOVE:
|
||||||
if(copy_from_user(&move,(tdfx_vid_agp_move_t*)arg,sizeof(tdfx_vid_agp_move_t))) {
|
if(copy_from_user(&move,(tdfx_vid_agp_move_t*)arg,sizeof(tdfx_vid_agp_move_t))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
return agp_move(&move);
|
return agp_move(&move);
|
||||||
case TDFX_VID_BUMP0:
|
case TDFX_VID_BUMP0:
|
||||||
if(copy_from_user(&int16,(u16*)arg,sizeof(u16))) {
|
if(copy_from_user(&int16,(u16*)arg,sizeof(u16))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
return bump_fifo(int16);
|
return bump_fifo(int16);
|
||||||
case TDFX_VID_BLIT:
|
case TDFX_VID_BLIT:
|
||||||
if(copy_from_user(&blit,(tdfx_vid_blit_t*)arg,sizeof(tdfx_vid_blit_t))) {
|
if(copy_from_user(&blit,(tdfx_vid_blit_t*)arg,sizeof(tdfx_vid_blit_t))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
if(!tdfx_vid_blit(&blit)) {
|
if(!tdfx_vid_blit(&blit)) {
|
||||||
printk(KERN_INFO "tdfx_vid: Blit failed\n");
|
printk(KERN_INFO "tdfx_vid: Blit failed\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
case TDFX_VID_GET_CONFIG:
|
case TDFX_VID_GET_CONFIG:
|
||||||
if(copy_from_user(&cfg,(tdfx_vid_config_t*)arg,sizeof(tdfx_vid_config_t))) {
|
if(copy_from_user(&cfg,(tdfx_vid_config_t*)arg,sizeof(tdfx_vid_config_t))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy from userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
tdfx_vid_get_config(&cfg);
|
tdfx_vid_get_config(&cfg);
|
||||||
if(copy_to_user((tdfx_vid_config_t*)arg,&cfg,sizeof(tdfx_vid_config_t))) {
|
if(copy_to_user((tdfx_vid_config_t*)arg,&cfg,sizeof(tdfx_vid_config_t))) {
|
||||||
printk(KERN_INFO "tdfx_vid:failed copy to userspace\n");
|
printk(KERN_INFO "tdfx_vid:failed copy to userspace\n");
|
||||||
return(-EFAULT);
|
return -EFAULT;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
case TDFX_VID_SET_YUV:
|
case TDFX_VID_SET_YUV:
|
||||||
@ -776,7 +778,7 @@ static int tdfx_vid_ioctl(struct inode *inode, struct file *file, unsigned int c
|
|||||||
return tdfx_vid_overlay_off();
|
return tdfx_vid_overlay_off();
|
||||||
default:
|
default:
|
||||||
printk(KERN_ERR "tdfx_vid: Invalid ioctl %d\n",cmd);
|
printk(KERN_ERR "tdfx_vid: Invalid ioctl %d\n",cmd);
|
||||||
return (-EINVAL);
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -846,13 +848,13 @@ static struct page *tdfx_vid_nopage(struct vm_area_struct *vma,
|
|||||||
|
|
||||||
if(n >= agp_mem->page_count) {
|
if(n >= agp_mem->page_count) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: Too far away\n");
|
printk(KERN_DEBUG "tdfx_vid: Too far away\n");
|
||||||
return ((struct page *)0UL);
|
return (struct page *)0UL;
|
||||||
}
|
}
|
||||||
phys = agp_mem->memory[n] & ~(0x00000fff);
|
phys = agp_mem->memory[n] & ~(0x00000fff);
|
||||||
page = virt_to_page(phys_to_virt(phys));
|
page = virt_to_page(phys_to_virt(phys));
|
||||||
if(!page) {
|
if(!page) {
|
||||||
printk(KERN_DEBUG "tdfx_vid: Can't get the page\n");
|
printk(KERN_DEBUG "tdfx_vid: Can't get the page\n");
|
||||||
return ((struct page *)0UL);
|
return (struct page *)0UL;
|
||||||
}
|
}
|
||||||
return page;
|
return page;
|
||||||
}
|
}
|
||||||
@ -877,7 +879,7 @@ static int tdfx_vid_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
if(map_start) { // Ok we map directly in the physcal ram
|
if(map_start) { // Ok we map directly in the physcal ram
|
||||||
if(size*PAGE_SIZE > map_max) {
|
if(size*PAGE_SIZE > map_max) {
|
||||||
printk(KERN_ERR "tdfx_vid: Not enouth mem\n");
|
printk(KERN_ERR "tdfx_vid: Not enouth mem\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,3)
|
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,3)
|
||||||
if(remap_page_range(vma, vma->vm_start,map_start,
|
if(remap_page_range(vma, vma->vm_start,map_start,
|
||||||
@ -888,26 +890,26 @@ static int tdfx_vid_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "tdfx_vid: error mapping video memory\n");
|
printk(KERN_ERR "tdfx_vid: error mapping video memory\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
printk(KERN_INFO "Physical mem 0x%lx mapped in userspace\n",map_start);
|
printk(KERN_INFO "Physical mem 0x%lx mapped in userspace\n",map_start);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(agp_mem)
|
if(agp_mem)
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
|
|
||||||
agp_mem = drm_agp->allocate_memory(size,AGP_NORMAL_MEMORY);
|
agp_mem = drm_agp->allocate_memory(size,AGP_NORMAL_MEMORY);
|
||||||
if(!agp_mem) {
|
if(!agp_mem) {
|
||||||
printk(KERN_ERR "Failed to allocate AGP memory\n");
|
printk(KERN_ERR "Failed to allocate AGP memory\n");
|
||||||
return(-ENOMEM);
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(drm_agp->bind_memory(agp_mem,0)) {
|
if(drm_agp->bind_memory(agp_mem,0)) {
|
||||||
printk(KERN_ERR "Failed to bind the AGP memory\n");
|
printk(KERN_ERR "Failed to bind the AGP memory\n");
|
||||||
drm_agp->free_memory(agp_mem);
|
drm_agp->free_memory(agp_mem);
|
||||||
agp_mem = NULL;
|
agp_mem = NULL;
|
||||||
return(-ENOMEM);
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
printk(KERN_INFO "%d pages of AGP mem allocated (%ld/%ld bytes) :)))\n",
|
printk(KERN_INFO "%d pages of AGP mem allocated (%ld/%ld bytes) :)))\n",
|
||||||
@ -924,7 +926,7 @@ static int tdfx_vid_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
printk(KERN_ERR "tdfx_vid: error mapping video memory\n");
|
printk(KERN_ERR "tdfx_vid: error mapping video memory\n");
|
||||||
return(-EAGAIN);
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Never swap it out
|
// Never swap it out
|
||||||
@ -971,14 +973,14 @@ static int tdfx_vid_open(struct inode *inode, struct file *file)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(minor != 0)
|
if(minor != 0)
|
||||||
return(-ENXIO);
|
return -ENXIO;
|
||||||
|
|
||||||
if(tdfx_vid_in_use == 1)
|
if(tdfx_vid_in_use == 1)
|
||||||
return(-EBUSY);
|
return -EBUSY;
|
||||||
|
|
||||||
tdfx_vid_in_use = 1;
|
tdfx_vid_in_use = 1;
|
||||||
MOD_INC_USE_COUNT;
|
MOD_INC_USE_COUNT;
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if LINUX_VERSION_CODE >= 0x020400
|
#if LINUX_VERSION_CODE >= 0x020400
|
||||||
@ -1033,7 +1035,7 @@ int init_module(void)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
return (0);
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -700,7 +700,7 @@ videocodec ffwv1f
|
|||||||
out YV12,I420,IYUV flip
|
out YV12,I420,IYUV flip
|
||||||
|
|
||||||
videocodec xvid
|
videocodec xvid
|
||||||
info "XviD (MPEG-4)"
|
info "Xvid (MPEG-4)"
|
||||||
status working
|
status working
|
||||||
fourcc FMP4,fmp4
|
fourcc FMP4,fmp4
|
||||||
fourcc DIVX,divx
|
fourcc DIVX,divx
|
||||||
@ -2265,6 +2265,7 @@ videocodec rawbgr16flip
|
|||||||
status working
|
status working
|
||||||
driver raw
|
driver raw
|
||||||
format 0x0
|
format 0x0
|
||||||
|
format 0x10424752 0x0
|
||||||
out BGR16 flip
|
out BGR16 flip
|
||||||
|
|
||||||
videocodec rawbgr16
|
videocodec rawbgr16
|
||||||
@ -2787,6 +2788,13 @@ audiocodec ffadpcmea
|
|||||||
driver ffmpeg
|
driver ffmpeg
|
||||||
dll adpcm_ea
|
dll adpcm_ea
|
||||||
|
|
||||||
|
audiocodec ffadpcmeamaxis
|
||||||
|
info "FFmpeg EA MAXIS XA ADPCM audio"
|
||||||
|
status working
|
||||||
|
fourcc ADXA ; internal MPlayer FourCC
|
||||||
|
driver ffmpeg
|
||||||
|
dll adpcm_ea_maxis_xa
|
||||||
|
|
||||||
audiocodec ffxandpcm
|
audiocodec ffxandpcm
|
||||||
info "FFmpeg XAN DPCM audio"
|
info "FFmpeg XAN DPCM audio"
|
||||||
comment "only works with libavformat demuxer"
|
comment "only works with libavformat demuxer"
|
||||||
|
@ -117,7 +117,7 @@ AR_NEXT seek 30
|
|||||||
AR_NEXT_HOLD seek 120
|
AR_NEXT_HOLD seek 120
|
||||||
AR_PREV seek -10
|
AR_PREV seek -10
|
||||||
AR_PREV_HOLD seek -120
|
AR_PREV_HOLD seek -120
|
||||||
AR_MENU osd
|
AR_MENU menu up
|
||||||
#AR_MENU menu cancel
|
#AR_MENU menu cancel
|
||||||
AR_MENU_HOLD mute
|
AR_MENU_HOLD mute
|
||||||
AR_VUP volume 1
|
AR_VUP volume 1
|
||||||
@ -157,5 +157,12 @@ ESC {dvdnav} dvdnav 5 # DVDNav MENU
|
|||||||
ENTER {dvdnav} dvdnav 6 # DVDNav SELECT (ok)
|
ENTER {dvdnav} dvdnav 6 # DVDNav SELECT (ok)
|
||||||
BS {dvdnav} dvdnav 7 # DVDNav PREVIOUS menu (in the order chapter->title->root)
|
BS {dvdnav} dvdnav 7 # DVDNav PREVIOUS menu (in the order chapter->title->root)
|
||||||
|
|
||||||
|
AR_VUP {dvdnav} dvdnav 1 # DVDNav UP
|
||||||
|
AR_VDOWN {dvdnav} dvdnav 2 # DVDNav DOWN
|
||||||
|
AR_PREV {dvdnav} dvdnav 3 # DVDNav LEFT
|
||||||
|
AR_NEXT {dvdnav} dvdnav 4 # DVDNav RIGHT
|
||||||
|
AR_MENU {dvdnav} dvdnav 5 # DVDNav MENU
|
||||||
|
AR_PLAY {dvdnav} dvdnav 6 # DVDNav SELECT (ok)
|
||||||
|
|
||||||
#? seek_chapter -1 # skip to previous dvd chapter
|
#? seek_chapter -1 # skip to previous dvd chapter
|
||||||
#? seek_chapter +1 # next
|
#? seek_chapter +1 # next
|
||||||
|
62
help/help_create.sh
Executable file
62
help/help_create.sh
Executable file
@ -0,0 +1,62 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Create the messages header file from the master source file or a translation.
|
||||||
|
# Missing messages are filled in from the master message file and, if
|
||||||
|
# requested, character set conversion is performed.
|
||||||
|
|
||||||
|
MASTER=help/help_mp-en.h
|
||||||
|
TARGET=help_mp.h
|
||||||
|
|
||||||
|
TRANSLATION=$1
|
||||||
|
CHARSET=$2
|
||||||
|
|
||||||
|
missing_messages(){
|
||||||
|
curr=""
|
||||||
|
|
||||||
|
while read -r line; do
|
||||||
|
if echo "$line" | grep -q '^#define' ; then
|
||||||
|
curr=`printf "%s\n" "$line" | cut -d ' ' -f 2`
|
||||||
|
if grep -q "^#define $curr[ ]" "$TRANSLATION" ; then
|
||||||
|
curr=""
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ -z "$line" ]; then
|
||||||
|
curr=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$curr" ]; then
|
||||||
|
printf "%s\n" "$line"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
cat <<EOF > "$TARGET"
|
||||||
|
/* WARNING! This is a generated file, do NOT edit.
|
||||||
|
* See the help/ subdirectory for the editable files. */
|
||||||
|
|
||||||
|
#ifndef MPLAYER_HELP_MP_H
|
||||||
|
#define MPLAYER_HELP_MP_H
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
cat "$TRANSLATION" >> "$TARGET"
|
||||||
|
|
||||||
|
cat <<EOF >> "$TARGET"
|
||||||
|
|
||||||
|
/* untranslated messages from the English master file */
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if test "$MASTER" != "$TRANSLATION" ; then
|
||||||
|
missing_messages < "$MASTER" >> "$TARGET"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat <<EOF >> "$TARGET"
|
||||||
|
|
||||||
|
#endif /* MPLAYER_HELP_MP_H */
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if test $CHARSET != UTF-8 ; then
|
||||||
|
iconv -f UTF-8 -t "$CHARSET" "$TARGET" > "${TARGET}.tmp"
|
||||||
|
mv "${TARGET}.tmp" "$TARGET"
|
||||||
|
fi
|
@ -1,26 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# This script walks through the master (stdin) help/message file, and
|
|
||||||
# prints (stdout) only those messages which are missing from the help
|
|
||||||
# file given as parameter ($1).
|
|
||||||
#
|
|
||||||
# Example: help_diff.sh help_mp-hu.h < help_mp-en.h > missing.h
|
|
||||||
|
|
||||||
curr=""
|
|
||||||
|
|
||||||
while read -r line; do
|
|
||||||
if echo "$line" | grep '^#define' > /dev/null 2>&1; then
|
|
||||||
curr=`printf "%s\n" "$line" | cut -d ' ' -f 2`
|
|
||||||
if grep "^#define $curr[ ]" $1 > /dev/null 2>&1; then
|
|
||||||
curr=""
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
if [ -z "$line" ]; then
|
|
||||||
curr=""
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$curr" ]; then
|
|
||||||
printf "%s\n" "$line"
|
|
||||||
fi
|
|
||||||
done
|
|
@ -155,8 +155,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitialized "Менюто е инициализирано: %s\n"
|
#define MSGTR_MenuInitialized "Менюто е инициализирано: %s\n"
|
||||||
#define MSGTR_MenuInitFailed "Менюто не може да бъде инициализирано.\n"
|
#define MSGTR_MenuInitFailed "Менюто не може да бъде инициализирано.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "Внимание: Функцията getch2_init е извикана двукратно!\n"
|
#define MSGTR_Getch2InitializedTwice "Внимание: Функцията getch2_init е извикана двукратно!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Потока не може да бъде извлечен - няма наличен 'fd'.\n"
|
|
||||||
#define MSGTR_FallingBackOnPlaylist "Повторен опит за обработка на playlist %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Видео филтъра libmenu не може да бъде отворен без root меню %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Видео филтъра libmenu не може да бъде отворен без root меню %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Грешка при предварителна инициализация на аудио филтрите!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Грешка при предварителна инициализация на аудио филтрите!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Linux RTC грешка при четене: %s\n"
|
#define MSGTR_LinuxRTCReadError "Linux RTC грешка при четене: %s\n"
|
||||||
@ -445,7 +443,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "'%s' не може да бъде отворен през LAN\n"
|
#define MSGTR_SMBFileNotFound "'%s' не може да бъде отворен през LAN\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer не е компилиран със поддръжка на четене от SMB.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer не е компилиран със поддръжка на четене от SMB.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Не може да бъде отворено DVD устройство: %s\n"
|
#define MSGTR_CantOpenDVD "Не може да бъде отворено DVD устройство: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Има %d заглавия на това DVD.\n"
|
#define MSGTR_DVDnumTitles "Има %d заглавия на това DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Невалиден номер на DVD заглавие: %d\n"
|
#define MSGTR_DVDinvalidTitle "Невалиден номер на DVD заглавие: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Има %d раздела в това DVD заглавие.\n"
|
#define MSGTR_DVDnumChapters "Има %d раздела в това DVD заглавие.\n"
|
||||||
|
@ -529,7 +529,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Nemohu otevřít soubor ze sítě: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Nemohu otevřít soubor ze sítě: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer nebyl přeložen s podporou čtení SMB.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer nebyl přeložen s podporou čtení SMB.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Nelze otevřít DVD zařízení: %s\n"
|
#define MSGTR_CantOpenDVD "Nelze otevřít DVD zařízení: %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
#define MSGTR_DVDspeedCantOpen "Nemohu otevřít DVD zařízení pro zápis, změna DVD rychlosti vyžaduje právo zápisu.\n"
|
#define MSGTR_DVDspeedCantOpen "Nemohu otevřít DVD zařízení pro zápis, změna DVD rychlosti vyžaduje právo zápisu.\n"
|
||||||
|
@ -547,7 +547,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Konnte '%s' nicht über das Netzwerk öffnen.\n"
|
#define MSGTR_SMBFileNotFound "Konnte '%s' nicht über das Netzwerk öffnen.\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer wurde ohne SMB-Unterstützung kompiliert.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer wurde ohne SMB-Unterstützung kompiliert.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Kann DVD-Laufwerk nicht öffnen: %s\n"
|
#define MSGTR_CantOpenDVD "Kann DVD-Laufwerk nicht öffnen: %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
#define MSGTR_DVDspeedCantOpen "Kann DVD-Laufwerk nicht zum Schreiben öffnen, setzen der DVD-Geschwindigkeit\nbenötigt Schreibzugriff.\n"
|
#define MSGTR_DVDspeedCantOpen "Kann DVD-Laufwerk nicht zum Schreiben öffnen, setzen der DVD-Geschwindigkeit\nbenötigt Schreibzugriff.\n"
|
||||||
|
@ -223,7 +223,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Kunne ikke åbne netværksadressen '%s'\n"
|
#define MSGTR_SMBFileNotFound "Kunne ikke åbne netværksadressen '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer er ikke blevet kompileret med SMB læse-understøttelse\n"
|
#define MSGTR_SMBNotCompiled "MPlayer er ikke blevet kompileret med SMB læse-understøttelse\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Kunne ikke åbne DVD drev: %s\n"
|
#define MSGTR_CantOpenDVD "Kunne ikke åbne DVD drev: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Der er %d titler på denne DVD.\n"
|
#define MSGTR_DVDnumTitles "Der er %d titler på denne DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Ugyldig DVD-titel: %d\n"
|
#define MSGTR_DVDinvalidTitle "Ugyldig DVD-titel: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Der er %d kapitler i denne DVD-titel.\n"
|
#define MSGTR_DVDnumChapters "Der er %d kapitler i denne DVD-titel.\n"
|
||||||
|
@ -222,7 +222,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Δεν μπόρεσα να ανοίξω από το τοπικό δίκτυο: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Δεν μπόρεσα να ανοίξω από το τοπικό δίκτυο: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer δεν μεταφράστηκε με υποστήριξη ανάγνωσης SMB\n"
|
#define MSGTR_SMBNotCompiled "MPlayer δεν μεταφράστηκε με υποστήριξη ανάγνωσης SMB\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Δεν μπόρεσα να ανοίξω την συσκευή DVD: %s\n"
|
#define MSGTR_CantOpenDVD "Δεν μπόρεσα να ανοίξω την συσκευή DVD: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Υπάρχουν %d τίτλοι στο DVD.\n"
|
#define MSGTR_DVDnumTitles "Υπάρχουν %d τίτλοι στο DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Άκυρος αριθμός για τον τίτλο του DVD: %d\n"
|
#define MSGTR_DVDinvalidTitle "Άκυρος αριθμός για τον τίτλο του DVD: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Υπάρχουν %d κεφάλαια σε αυτόν τον τίτλο του DVD.\n"
|
#define MSGTR_DVDnumChapters "Υπάρχουν %d κεφάλαια σε αυτόν τον τίτλο του DVD.\n"
|
||||||
|
@ -1296,6 +1296,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Joystick: warning init event, we have lost sync with driver.\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Joystick: warning init event, we have lost sync with driver.\n"
|
||||||
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Joystick warning unknown event type %d\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Joystick warning unknown event type %d\n"
|
||||||
|
|
||||||
|
// appleir.c
|
||||||
|
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Init "Initializing Apple IR on %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Detect "Detected Apple IR on %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_CantOpen "Can't open Apple IR device: %s\n"
|
||||||
|
|
||||||
// input.c
|
// input.c
|
||||||
|
|
||||||
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Too many command file descriptors, cannot register file descriptor %d.\n"
|
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Too many command file descriptors, cannot register file descriptor %d.\n"
|
||||||
@ -1705,7 +1711,8 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBVO_MGA_InvalidOutputFormat "[MGA] invalid output format %0X\n"
|
#define MSGTR_LIBVO_MGA_InvalidOutputFormat "[MGA] invalid output format %0X\n"
|
||||||
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] Your mga_vid driver version is incompatible with this MPlayer version!\n"
|
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] Your mga_vid driver version is incompatible with this MPlayer version!\n"
|
||||||
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Couldn't open: %s\n"
|
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Couldn't open: %s\n"
|
||||||
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] Source resolution is in at least one dimension larger than 1023x1023. Please rescale in software or use -lavdopts lowres=1\n"
|
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] Source resolution exceeds 1023x1023 in at least one dimension.\n[MGA] Rescale in software or use -lavdopts lowres=1.\n"
|
||||||
|
#define MGSTR_LIBVO_MGA_mgavidVersionMismatch "[MGA] mismatch between kernel (%u) and MPlayer (%u) mga_vid driver versions\n"
|
||||||
|
|
||||||
// libvo/vesa_lvo.c
|
// libvo/vesa_lvo.c
|
||||||
|
|
||||||
|
@ -174,7 +174,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Fallo en inicialización del menú.\n"
|
#define MSGTR_MenuInitFailed "Fallo en inicialización del menú.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "ADVERTENCIA: getch2_init llamada dos veces!\n"
|
#define MSGTR_Getch2InitializedTwice "ADVERTENCIA: getch2_init llamada dos veces!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "No puedo volcar este stream - no está disponible 'fd'.\n"
|
#define MSGTR_DumpstreamFdUnavailable "No puedo volcar este stream - no está disponible 'fd'.\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "No pude procesar el playlist %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "No puedo abrir filtro de video libmenu con el menú principal %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "No puedo abrir filtro de video libmenu con el menú principal %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Error en pre-inicialización de cadena de filtros de audio!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Error en pre-inicialización de cadena de filtros de audio!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Error de lectura de Linux RTC: %s\n"
|
#define MSGTR_LinuxRTCReadError "Error de lectura de Linux RTC: %s\n"
|
||||||
@ -546,7 +545,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "No se puede abrir desde la RED: '%s'\n"
|
#define MSGTR_SMBFileNotFound "No se puede abrir desde la RED: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer no fue compilado con soporte de lectura de SMB.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer no fue compilado con soporte de lectura de SMB.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "No se puede abrir el dispositivo de DVD: %s\n"
|
#define MSGTR_CantOpenDVD "No se puede abrir el dispositivo de DVD: %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
#define MSGTR_DVDspeedCantOpen "No se ha podido abrir el dispositivo de DVD para escritura, cambiar la velocidad del DVD requiere acceso de escritura\n"
|
#define MSGTR_DVDspeedCantOpen "No se ha podido abrir el dispositivo de DVD para escritura, cambiar la velocidad del DVD requiere acceso de escritura\n"
|
||||||
@ -1184,8 +1183,6 @@ static char help_text[]=
|
|||||||
"[AO_ALSA] device=<nombre-dispositivo>\n"\
|
"[AO_ALSA] device=<nombre-dispositivo>\n"\
|
||||||
"[AO_ALSA] Establece el dispositivo (cambiar , por . y : por =)\n"
|
"[AO_ALSA] Establece el dispositivo (cambiar , por . y : por =)\n"
|
||||||
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] %d canales no están soportados.\n"
|
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] %d canales no están soportados.\n"
|
||||||
#define MSGTR_AO_ALSA_CannotReadAlsaConfiguration "[AO_ALSA] No se puede leer la configuración de ALSA: %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_CannotCopyConfiguration "[AO_ALSA] No se puede copiar la configuración: %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] La apertura en modo sin bloqueo ha fallado, intentando abrir en modo bloqueo.\n"
|
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] La apertura en modo sin bloqueo ha fallado, intentando abrir en modo bloqueo.\n"
|
||||||
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] Error de apertura en la reproducción: %s\n"
|
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] Error de apertura en la reproducción: %s\n"
|
||||||
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] Error estableciendo el modo bloqueo %s.\n"
|
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] Error estableciendo el modo bloqueo %s.\n"
|
||||||
@ -1967,7 +1964,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_RADIO_CaptureStarting "[radio] Empezando con la captura.\n"
|
#define MSGTR_RADIO_CaptureStarting "[radio] Empezando con la captura.\n"
|
||||||
#define MSGTR_RADIO_ClearBufferFailed "[radio] Fallo al limpiar el buffer: %s\n"
|
#define MSGTR_RADIO_ClearBufferFailed "[radio] Fallo al limpiar el buffer: %s\n"
|
||||||
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Llamada fallida a stream_enable_cache: %s\n"
|
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Llamada fallida a stream_enable_cache: %s\n"
|
||||||
#define MSGTR_RADIO_DriverUnknownId "[radio] Id de driver desconocido: %d\n"
|
|
||||||
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nombre de driver desconocido: %s\n"
|
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nombre de driver desconocido: %s\n"
|
||||||
#define MSGTR_RADIO_DriverV4L2 "[radio] Utilizando interfaz de radio V4Lv2.\n"
|
#define MSGTR_RADIO_DriverV4L2 "[radio] Utilizando interfaz de radio V4Lv2.\n"
|
||||||
#define MSGTR_RADIO_DriverV4L "[radio] Utilizando interfaz de radio V4Lv1.\n"
|
#define MSGTR_RADIO_DriverV4L "[radio] Utilizando interfaz de radio V4Lv1.\n"
|
||||||
@ -2030,7 +2026,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBASS_EmptyEvent "[ass] Evento vacío!\n"
|
#define MSGTR_LIBASS_EmptyEvent "[ass] Evento vacío!\n"
|
||||||
#define MSGTR_LIBASS_MAX_GLYPHS_Reached "[ass] MAX_GLYPHS alcanzado: evento %d, comienzo = %llu, duración = %llu\n Texto = %s\n"
|
#define MSGTR_LIBASS_MAX_GLYPHS_Reached "[ass] MAX_GLYPHS alcanzado: evento %d, comienzo = %llu, duración = %llu\n Texto = %s\n"
|
||||||
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] ¡Aviso! ¡El tamaño del evento ha cambiado! \n"
|
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] ¡Aviso! ¡El tamaño del evento ha cambiado! \n"
|
||||||
#define MSGTR_LIBASS_TooManySimultaneousEvents "[ass] Demasiados eventos simultáneos!\n"
|
|
||||||
|
|
||||||
// ass_font.c
|
// ass_font.c
|
||||||
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] Glifo 0x%X no encontrado, seleccionando la fuente para (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] Glifo 0x%X no encontrado, seleccionando la fuente para (%s, %d, %d)\n"
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// Last sync on 2006-11-09 with help_mp-en.h 20191
|
// Last sync on 2006-11-09 with help_mp-en.h 20191
|
||||||
// Additionnal updates, fixes and translations by P Lombard <p_l@gmx.fr>
|
// Additionnal updates, fixes and translations by P Lombard <p_l@gmx.fr>
|
||||||
// G Pelletier <pellgill@gmail.com> & A Coutherez <newt@neopulsar.org>
|
// G Pelletier <pellgill@gmail.com> & A Coutherez <newt@neopulsar.org>
|
||||||
|
// C Dumez-Viou <viou@obs-nancay.fr>
|
||||||
// Updates & fixes by pl <p_l@gmx.fr> & n.le gaillart <n@tourmentine.com>
|
// Updates & fixes by pl <p_l@gmx.fr> & n.le gaillart <n@tourmentine.com>
|
||||||
// Original translation by Firebird <firebird@chez.com>
|
// Original translation by Firebird <firebird@chez.com>
|
||||||
|
|
||||||
@ -146,6 +147,8 @@ static char help_text[]=
|
|||||||
" et suivre les instructions. Nous pourrons et voudrons vous aider si vous\n"\
|
" et suivre les instructions. Nous pourrons et voudrons vous aider si vous\n"\
|
||||||
" fournissiez ces informations en rapportant un bogue possible.\n"
|
" fournissiez ces informations en rapportant un bogue possible.\n"
|
||||||
#define MSGTR_LoadingConfig "Chargement du fichier de configuration '%s'\n"
|
#define MSGTR_LoadingConfig "Chargement du fichier de configuration '%s'\n"
|
||||||
|
#define MSGTR_LoadingProtocolProfile "Chargement du profil de protocol '%s'\n"
|
||||||
|
#define MSGTR_LoadingExtensionProfile "Chargement du profil d'extension '%s'\n"
|
||||||
#define MSGTR_AddedSubtitleFile "SUB : fichier sous-titres ajouté (%d): %s\n"
|
#define MSGTR_AddedSubtitleFile "SUB : fichier sous-titres ajouté (%d): %s\n"
|
||||||
#define MSGTR_RemovedSubtitleFile "SUB : fichier sous-titres enlevé (%d): %s\n"
|
#define MSGTR_RemovedSubtitleFile "SUB : fichier sous-titres enlevé (%d): %s\n"
|
||||||
#define MSGTR_ErrorOpeningOutputFile "Erreur d'ouverture du fichier [%s] en écriture !\n"
|
#define MSGTR_ErrorOpeningOutputFile "Erreur d'ouverture du fichier [%s] en écriture !\n"
|
||||||
@ -160,7 +163,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Échec d'initialisation du menu.\n"
|
#define MSGTR_MenuInitFailed "Échec d'initialisation du menu.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "ATTENTION : getch2_init appelé deux fois !\n"
|
#define MSGTR_Getch2InitializedTwice "ATTENTION : getch2_init appelé deux fois !\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Impossible de vider ce flux - Aucun descripteur de fichier disponible.\n"
|
#define MSGTR_DumpstreamFdUnavailable "Impossible de vider ce flux - Aucun descripteur de fichier disponible.\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "Replie sur essaie d'analyse de liste de lecture (playlist) %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Impossible d'ouvrir filtre vidéo libmenu avec menu root %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Impossible d'ouvrir filtre vidéo libmenu avec menu root %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Erreur de pré-initialisation de la chaîne de filtres audio !\n"
|
#define MSGTR_AudioFilterChainPreinitError "Erreur de pré-initialisation de la chaîne de filtres audio !\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Erreur de lecture horloge temps réel (RTC) Linux : %s\n"
|
#define MSGTR_LinuxRTCReadError "Erreur de lecture horloge temps réel (RTC) Linux : %s\n"
|
||||||
@ -202,12 +204,14 @@ static char help_text[]=
|
|||||||
|
|
||||||
#define MSGTR_OSDenabled "activé"
|
#define MSGTR_OSDenabled "activé"
|
||||||
#define MSGTR_OSDdisabled "désactivé"
|
#define MSGTR_OSDdisabled "désactivé"
|
||||||
|
#define MSGTR_OSDAudio "Audio : %s"
|
||||||
|
#define MSGTR_OSDVideo "Vidéo : %s"
|
||||||
#define MSGTR_OSDChannel "Canal : %s"
|
#define MSGTR_OSDChannel "Canal : %s"
|
||||||
#define MSGTR_OSDSubDelay "Décalage : %d ms"
|
#define MSGTR_OSDSubDelay "Décalage : %d ms"
|
||||||
#define MSGTR_OSDSpeed "Vitesse : x %6.2f"
|
#define MSGTR_OSDSpeed "Vitesse : x %6.2f"
|
||||||
#define MSGTR_OSDosd "OSD : %s"
|
#define MSGTR_OSDosd "OSD : %s"
|
||||||
#define MSGTR_OSDAudio "Audio : %s"
|
|
||||||
#define MSGTR_OSDChapter "Chapitre : (%d) %s"
|
#define MSGTR_OSDChapter "Chapitre : (%d) %s"
|
||||||
|
#define MSGTR_OSDAngle "Angle: %d/%d"
|
||||||
|
|
||||||
// property values
|
// property values
|
||||||
#define MSGTR_Enabled "activé"
|
#define MSGTR_Enabled "activé"
|
||||||
@ -218,6 +222,9 @@ static char help_text[]=
|
|||||||
#define MSGTR_Bottom "bas"
|
#define MSGTR_Bottom "bas"
|
||||||
#define MSGTR_Center "centre"
|
#define MSGTR_Center "centre"
|
||||||
#define MSGTR_Top "haut"
|
#define MSGTR_Top "haut"
|
||||||
|
#define MSGTR_SubSourceFile "fichier"
|
||||||
|
#define MSGTR_SubSourceVobsub "vobsub"
|
||||||
|
#define MSGTR_SubSourceDemux "inclus"
|
||||||
|
|
||||||
// osd bar names
|
// osd bar names
|
||||||
#define MSGTR_Volume "Volume"
|
#define MSGTR_Volume "Volume"
|
||||||
@ -227,25 +234,27 @@ static char help_text[]=
|
|||||||
#define MSGTR_Contrast "Contraste"
|
#define MSGTR_Contrast "Contraste"
|
||||||
#define MSGTR_Saturation "Saturation"
|
#define MSGTR_Saturation "Saturation"
|
||||||
#define MSGTR_Hue "Tonalité"
|
#define MSGTR_Hue "Tonalité"
|
||||||
|
#define MSGTR_Balance "Balance"
|
||||||
|
|
||||||
// property state
|
// property state
|
||||||
|
#define MSGTR_LoopStatus "Boucle: %s"
|
||||||
#define MSGTR_MuteStatus "Silence : %s"
|
#define MSGTR_MuteStatus "Silence : %s"
|
||||||
#define MSGTR_AVDelayStatus "delai A-V : %s"
|
#define MSGTR_AVDelayStatus "Delai A-V : %s"
|
||||||
#define MSGTR_OnTopStatus "Reste au dessus : %s"
|
#define MSGTR_OnTopStatus "Reste au dessus : %s"
|
||||||
#define MSGTR_RootwinStatus "Fenêtre racine : %s"
|
#define MSGTR_RootwinStatus "Fenêtre racine : %s"
|
||||||
#define MSGTR_BorderStatus "Bordure : %s"
|
#define MSGTR_BorderStatus "Bordure : %s"
|
||||||
#define MSGTR_FramedroppingStatus "Saut d'images : %s"
|
#define MSGTR_FramedroppingStatus "Saut d'images : %s"
|
||||||
#define MSGTR_VSyncStatus "Sync verticale : %s"
|
#define MSGTR_VSyncStatus "Sync verticale : %s"
|
||||||
#define MSGTR_SubSelectStatus "Sous-titres : %s"
|
#define MSGTR_SubSelectStatus "Sous-titres : %s"
|
||||||
#define MSGTR_SubPosStatus "Sous position : %s/100"
|
#define MSGTR_SubSourceStatus "Source des sous-titres : %s"
|
||||||
#define MSGTR_SubAlignStatus "Sous alignment : %s"
|
#define MSGTR_SubPosStatus "Position des sous-titres : %s/100"
|
||||||
#define MSGTR_SubDelayStatus "Décalage : %s"
|
#define MSGTR_SubAlignStatus "Alignement des sous-titres : %s"
|
||||||
|
#define MSGTR_SubDelayStatus "Décalage des sous-titres : %s"
|
||||||
|
#define MSGTR_SubScale "Échelle des sous-titres : %s"
|
||||||
#define MSGTR_SubVisibleStatus "Sous-titres : %s"
|
#define MSGTR_SubVisibleStatus "Sous-titres : %s"
|
||||||
#define MSGTR_SubForcedOnlyStatus "Sub forcé seulement : %s"
|
|
||||||
|
|
||||||
// mencoder.c
|
// mencoder.c
|
||||||
|
|
||||||
#define MSGTR_UsingPass3ControllFile "Utilisation du fichier de contrôle de la passe 3 : %s\n"
|
|
||||||
#define MSGTR_MissingFilename "\nNom de fichier manquant.\n\n"
|
#define MSGTR_MissingFilename "\nNom de fichier manquant.\n\n"
|
||||||
#define MSGTR_CannotOpenFile_Device "Impossible d'ouvrir le fichier/périph.\n"
|
#define MSGTR_CannotOpenFile_Device "Impossible d'ouvrir le fichier/périph.\n"
|
||||||
#define MSGTR_CannotOpenDemuxer "Impossible d'ouvrir le démuxeur.\n"
|
#define MSGTR_CannotOpenDemuxer "Impossible d'ouvrir le démuxeur.\n"
|
||||||
@ -267,9 +276,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_NoSpeedWithFrameCopy "ATTENTION : -speed peut ne pas fonctionner correctement avec -oac copy !\n"\
|
#define MSGTR_NoSpeedWithFrameCopy "ATTENTION : -speed peut ne pas fonctionner correctement avec -oac copy !\n"\
|
||||||
"Votre encodage pourrait être brisé!\n"
|
"Votre encodage pourrait être brisé!\n"
|
||||||
#define MSGTR_ErrorWritingFile "%s : Erreur durant l'écriture du fichier.\n"
|
#define MSGTR_ErrorWritingFile "%s : Erreur durant l'écriture du fichier.\n"
|
||||||
|
#define MSGTR_FlushingVideoFrames "\nAbandonne des trames vidéo.\n"
|
||||||
|
#define MSGTR_FiltersHaveNotBeenConfiguredEmptyFile "Les filtres n'ont pas été configurés! Fichier vide?\n"
|
||||||
#define MSGTR_RecommendedVideoBitrate "Débit binaire (bitrate) vidéo recommandé pour le CD %s : %d\n"
|
#define MSGTR_RecommendedVideoBitrate "Débit binaire (bitrate) vidéo recommandé pour le CD %s : %d\n"
|
||||||
#define MSGTR_VideoStreamResult "\nFlux vidéo : %8.3f kbit/s (%d B/s) taille : %"PRIu64" octets %5.3f secs %d images\n"
|
#define MSGTR_VideoStreamResult "\nFlux vidéo : %8.3f kbit/s (%d B/s) taille : %"PRIu64" octets %5.3f secs %d images\n"
|
||||||
#define MSGTR_AudioStreamResult "\nFlux audio : %8.3f kbit/s (%d B/s) taille : %"PRIu64" octets %5.3f secs\n"
|
#define MSGTR_AudioStreamResult "\nFlux audio : %8.3f kbit/s (%d B/s) taille : %"PRIu64" octets %5.3f secs\n"
|
||||||
|
#define MSGTR_EdlSkipStartEndCurrent "Saut EDL : Début: %.2f Fin: %.2f Courant: V: %.2f A: %.2f \r"
|
||||||
#define MSGTR_OpenedStream "succès : format : %d data : 0x%X - 0x%x\n"
|
#define MSGTR_OpenedStream "succès : format : %d data : 0x%X - 0x%x\n"
|
||||||
#define MSGTR_VCodecFramecopy "codec vidéo : copie de trame (%dx%d %dbpp fourcc=%x)\n"
|
#define MSGTR_VCodecFramecopy "codec vidéo : copie de trame (%dx%d %dbpp fourcc=%x)\n"
|
||||||
#define MSGTR_ACodecFramecopy "codec audio : copie img (format=%x canaux=%d taux=%d bits=%d B/s=%d échant-%d)\n"
|
#define MSGTR_ACodecFramecopy "codec audio : copie img (format=%x canaux=%d taux=%d bits=%d B/s=%d échant-%d)\n"
|
||||||
@ -390,7 +402,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LameCantInit "Ne peux pas régler les options de LAME, vérifiez dans bitrate/samplerate,"\
|
#define MSGTR_LameCantInit "Ne peux pas régler les options de LAME, vérifiez dans bitrate/samplerate,"\
|
||||||
"certains bitrates très bas (<32) requièrent des taux d'échantillonages plus bas (i.e. -srate 8000)."\
|
"certains bitrates très bas (<32) requièrent des taux d'échantillonages plus bas (i.e. -srate 8000)."\
|
||||||
"Si rien ne marche, essayez un pré-réglage (preset)."
|
"Si rien ne marche, essayez un pré-réglage (preset)."
|
||||||
#define MSGTR_ConfigfileError "Erreur du fichier de configuration"
|
#define MSGTR_ConfigFileError "Erreur du fichier de configuration"
|
||||||
#define MSGTR_ErrorParsingCommandLine "Erreur en analysant la ligne de commande"
|
#define MSGTR_ErrorParsingCommandLine "Erreur en analysant la ligne de commande"
|
||||||
#define MSGTR_VideoStreamRequired "La présence d'un flux vidéo est obligatoire !\n"
|
#define MSGTR_VideoStreamRequired "La présence d'un flux vidéo est obligatoire !\n"
|
||||||
#define MSGTR_ForcingInputFPS "Le fps d'entrée sera plutôt interprété comme %5.3f\n"
|
#define MSGTR_ForcingInputFPS "Le fps d'entrée sera plutôt interprété comme %5.3f\n"
|
||||||
@ -483,15 +495,18 @@ static char help_text[]=
|
|||||||
#define MSGTR_CodecDefinitionIncorrect "Le codec n'est pas défini correctement."
|
#define MSGTR_CodecDefinitionIncorrect "Le codec n'est pas défini correctement."
|
||||||
#define MSGTR_OutdatedCodecsConf "Ce fichier codecs.conf est trop vieux et est incompatible avec cette version de MPlayer !"
|
#define MSGTR_OutdatedCodecsConf "Ce fichier codecs.conf est trop vieux et est incompatible avec cette version de MPlayer !"
|
||||||
|
|
||||||
// divx4_vbr.c:
|
|
||||||
#define MSGTR_OutOfMemory "plus de mémoire libre"
|
|
||||||
#define MSGTR_OverridingTooLowBitrate "Le débit binaire demandé est trop bas pour ce clip.\n"\
|
|
||||||
"Le débit binaire minimum pour ce clip est %.0f kbps.\n"\
|
|
||||||
"Les valeurs demandées par l'utilisateur vont être ignorées.\n"
|
|
||||||
|
|
||||||
// fifo.c
|
// fifo.c
|
||||||
#define MSGTR_CannotMakePipe "Ne peux créer de canal de communication (pipe) !\n"
|
#define MSGTR_CannotMakePipe "Ne peux créer de canal de communication (pipe) !\n"
|
||||||
|
|
||||||
|
// parser-mecmd.c, parser-mpcmd.c
|
||||||
|
#define MSGTR_NoFileGivenOnCommandLine "'--' indique la fin des options, mais aucun nom de fichier fourni dans la commande.\n"
|
||||||
|
#define MSGTR_TheLoopOptionMustBeAnInteger "L'option loop doit être un entier : %s\n"
|
||||||
|
#define MSGTR_UnknownOptionOnCommandLine "Option non reconnue dans la ligne de commande : -%s\n"
|
||||||
|
#define MSGTR_ErrorParsingOptionOnCommandLine "Erreur lors de l'analyse des options de la ligne de commande : -%s\n"
|
||||||
|
|
||||||
|
#define MSGTR_NotAnMEncoderOption "-%s n'est pas une option de MEncoder\n"
|
||||||
|
#define MSGTR_NoFileGiven "Pas de fichier fourni\n"
|
||||||
|
|
||||||
// m_config.c
|
// m_config.c
|
||||||
#define MSGTR_SaveSlotTooOld "Case de sauvegarde trouvée est trop ancienne lvl %d : %d !!!\n"
|
#define MSGTR_SaveSlotTooOld "Case de sauvegarde trouvée est trop ancienne lvl %d : %d !!!\n"
|
||||||
#define MSGTR_InvalidCfgfileOption "L'option '%s' ne peut être utilisée dans un fichier de configuration.\n"
|
#define MSGTR_InvalidCfgfileOption "L'option '%s' ne peut être utilisée dans un fichier de configuration.\n"
|
||||||
@ -501,7 +516,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MissingOptionParameter "Erreur : l'option '%s' doit avoir un paramètre !\n"
|
#define MSGTR_MissingOptionParameter "Erreur : l'option '%s' doit avoir un paramètre !\n"
|
||||||
#define MSGTR_OptionListHeader "\n Nom Type Min Max Global CL Cfg\n\n"
|
#define MSGTR_OptionListHeader "\n Nom Type Min Max Global CL Cfg\n\n"
|
||||||
#define MSGTR_TotalOptions "\nTotal : %d options\n"
|
#define MSGTR_TotalOptions "\nTotal : %d options\n"
|
||||||
#define MSGTR_TooDeepProfileInclusion "ATTENTION : inclusion de profils trop imbriquée.\n"
|
|
||||||
#define MSGTR_NoProfileDefined "Aucun profil n'a été défini.\n"
|
#define MSGTR_NoProfileDefined "Aucun profil n'a été défini.\n"
|
||||||
#define MSGTR_AvailableProfiles "Profils disponibles :\n"
|
#define MSGTR_AvailableProfiles "Profils disponibles :\n"
|
||||||
#define MSGTR_UnknownProfile "Profil inconnu '%s'.\n"
|
#define MSGTR_UnknownProfile "Profil inconnu '%s'.\n"
|
||||||
@ -522,9 +536,14 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Impossible d'ouvrir depuis le réseau local : '%s'\n"
|
#define MSGTR_SMBFileNotFound "Impossible d'ouvrir depuis le réseau local : '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer n'a pas été compilé avec le support de lecture SMB\n"
|
#define MSGTR_SMBNotCompiled "MPlayer n'a pas été compilé avec le support de lecture SMB\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Impossible d'ouvrir le lecteur DVD : %s\n"
|
#define MSGTR_CantOpenDVD "Impossible d'ouvrir le lecteur DVD : %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
|
#define MSGTR_DVDspeedCantOpen "Impossible d'ouvrir le lecteur DVD en écriture. Changer la vitesse du DVD requière un accès en écriture.\n"
|
||||||
|
#define MSGTR_DVDrestoreSpeed "Remise en l'état de la vitesse du DVD... "
|
||||||
|
#define MSGTR_DVDlimitSpeed "Limite la vitesse du DVD à %dKo/s... "
|
||||||
|
#define MSGTR_DVDlimitFail "échoue\n"
|
||||||
|
#define MSGTR_DVDlimitOk "réussi\n"
|
||||||
#define MSGTR_NoDVDSupport "MPlayer a été compilé sans support pour les DVD - terminaison\n"
|
#define MSGTR_NoDVDSupport "MPlayer a été compilé sans support pour les DVD - terminaison\n"
|
||||||
#define MSGTR_DVDnumTitles "Il y a %d titres sur ce DVD.\n"
|
#define MSGTR_DVDnumTitles "Il y a %d titres sur ce DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Numéro de titre DVD invalide : %d\n"
|
#define MSGTR_DVDinvalidTitle "Numéro de titre DVD invalide : %d\n"
|
||||||
@ -576,6 +595,9 @@ static char help_text[]=
|
|||||||
#define MSGTR_InvalidMPEGES "Flux MPEG-ES invalide ??? Contactez l'auteur, c'est peut-être un bogue :(\n"
|
#define MSGTR_InvalidMPEGES "Flux MPEG-ES invalide ??? Contactez l'auteur, c'est peut-être un bogue :(\n"
|
||||||
#define MSGTR_FormatNotRecognized "========== Désolé, ce format de fichier n'est pas reconnu/supporté ============\n"\
|
#define MSGTR_FormatNotRecognized "========== Désolé, ce format de fichier n'est pas reconnu/supporté ============\n"\
|
||||||
"== Si ce fichier est un flux AVI, ASF ou MPEG, merci de contacter l'auteur ! ==\n"
|
"== Si ce fichier est un flux AVI, ASF ou MPEG, merci de contacter l'auteur ! ==\n"
|
||||||
|
#define MSGTR_SettingProcessPriority "Réglage de la priorité du process: %s\n"
|
||||||
|
#define MSGTR_FilefmtFourccSizeFpsFtime "[V] filefmt:%d fourcc:0x%X taille:%dx%d fps:%5.3f ftime:=%6.4f\n"
|
||||||
|
#define MSGTR_CannotInitializeMuxer "Impossible d'initialiser le muxeur."
|
||||||
#define MSGTR_MissingVideoStream "Aucun flux vidéo trouvé.\n"
|
#define MSGTR_MissingVideoStream "Aucun flux vidéo trouvé.\n"
|
||||||
#define MSGTR_MissingAudioStream "Aucun flux audio trouvé -> pas de son\n"
|
#define MSGTR_MissingAudioStream "Aucun flux audio trouvé -> pas de son\n"
|
||||||
#define MSGTR_MissingVideoStreamBug "Flux vidéo manquant !? Contactez l'auteur, c'est peut-être un bogue :(\n"
|
#define MSGTR_MissingVideoStreamBug "Flux vidéo manquant !? Contactez l'auteur, c'est peut-être un bogue :(\n"
|
||||||
@ -590,7 +612,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_CouldntDetFNo "Impossible de déterminer le nombre d'images (pour recherche absolue)\n"
|
#define MSGTR_CouldntDetFNo "Impossible de déterminer le nombre d'images (pour recherche absolue)\n"
|
||||||
#define MSGTR_CantSeekRawAVI "Impossible de chercher dans un flux AVI brut ! (Index requis, essayez l'option -idx.)\n"
|
#define MSGTR_CantSeekRawAVI "Impossible de chercher dans un flux AVI brut ! (Index requis, essayez l'option -idx.)\n"
|
||||||
#define MSGTR_CantSeekFile "Impossible de chercher dans ce fichier.\n"
|
#define MSGTR_CantSeekFile "Impossible de chercher dans ce fichier.\n"
|
||||||
#define MSGTR_EncryptedVOB "Fichier VOB chiffré ! Veuillez lire DOCS/HTML/fr/cd-dvd.html.\n"
|
|
||||||
|
|
||||||
#define MSGTR_MOVcomprhdr "MOV : Le support d'entêtes compressées nécessite ZLIB !\n"
|
#define MSGTR_MOVcomprhdr "MOV : Le support d'entêtes compressées nécessite ZLIB !\n"
|
||||||
#define MSGTR_MOVvariableFourCC "MOV : ATTENTION : FOURCC Variable détecté !?\n"
|
#define MSGTR_MOVvariableFourCC "MOV : ATTENTION : FOURCC Variable détecté !?\n"
|
||||||
@ -598,7 +619,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_FoundAudioStream "==> Flux audio trouvé : %d\n"
|
#define MSGTR_FoundAudioStream "==> Flux audio trouvé : %d\n"
|
||||||
#define MSGTR_FoundVideoStream "==> Flux vidéo trouvé : %d\n"
|
#define MSGTR_FoundVideoStream "==> Flux vidéo trouvé : %d\n"
|
||||||
#define MSGTR_DetectedTV "TV détectée ! ;-)\n"
|
#define MSGTR_DetectedTV "TV détectée ! ;-)\n"
|
||||||
#define MSGTR_ErrorOpeningOGGDemuxer "Impossible d'ouvrir le demuxer ogg\n"
|
#define MSGTR_ErrorOpeningOGGDemuxer "Impossible d'ouvrir le demuxer Ogg\n"
|
||||||
#define MSGTR_ASFSearchingForAudioStream "ASF : recherche du flux audio (id:%d)\n"
|
#define MSGTR_ASFSearchingForAudioStream "ASF : recherche du flux audio (id:%d)\n"
|
||||||
#define MSGTR_CannotOpenAudioStream "Impossible d'ouvrir le flux audio : %s\n"
|
#define MSGTR_CannotOpenAudioStream "Impossible d'ouvrir le flux audio : %s\n"
|
||||||
#define MSGTR_CannotOpenSubtitlesStream "Impossible d'ouvrir le flux des sous-titres : %s\n"
|
#define MSGTR_CannotOpenSubtitlesStream "Impossible d'ouvrir le flux des sous-titres : %s\n"
|
||||||
@ -606,7 +627,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_OpeningSubtitlesDemuxerFailed "Echec à l'ouverture du demuxer de sous-titres : %s\n"
|
#define MSGTR_OpeningSubtitlesDemuxerFailed "Echec à l'ouverture du demuxer de sous-titres : %s\n"
|
||||||
#define MSGTR_TVInputNotSeekable "Impossible de rechercher sur l'entrée TV ! (cette opération correspondra sûrement à un changement de chaines ;)\n"
|
#define MSGTR_TVInputNotSeekable "Impossible de rechercher sur l'entrée TV ! (cette opération correspondra sûrement à un changement de chaines ;)\n"
|
||||||
#define MSGTR_DemuxerInfoChanged "Info demuxer %s changé à %s\n"
|
#define MSGTR_DemuxerInfoChanged "Info demuxer %s changé à %s\n"
|
||||||
#define MSGTR_DemuxerInfoAlreadyPresent "Info du demuxer %s déjà présente !\n"
|
|
||||||
#define MSGTR_ClipInfo "Information sur le clip : \n"
|
#define MSGTR_ClipInfo "Information sur le clip : \n"
|
||||||
|
|
||||||
#define MSGTR_LeaveTelecineMode "\ndemux_mpg : contenu NTSC 30000/1001fps détecté, ajustement du débit.\n"
|
#define MSGTR_LeaveTelecineMode "\ndemux_mpg : contenu NTSC 30000/1001fps détecté, ajustement du débit.\n"
|
||||||
@ -615,6 +635,10 @@ static char help_text[]=
|
|||||||
#define MSGTR_NoBindFound "Aucune action attachée à la touche '%s'"
|
#define MSGTR_NoBindFound "Aucune action attachée à la touche '%s'"
|
||||||
#define MSGTR_FailedToOpen "Échec à l'ouverture de '%s'\n"
|
#define MSGTR_FailedToOpen "Échec à l'ouverture de '%s'\n"
|
||||||
|
|
||||||
|
#define MSGTR_VideoID "[%s] Flux vidéo trouvé, -vid %d\n"
|
||||||
|
#define MSGTR_AudioID "[%s] Flux audio trouvé, -aid %d\n"
|
||||||
|
#define MSGTR_SubtitleID "[%s] Subtitle stream found, -sid %d\n"
|
||||||
|
|
||||||
// dec_video.c & dec_audio.c:
|
// dec_video.c & dec_audio.c:
|
||||||
#define MSGTR_CantOpenCodec "Impossible d'ouvrir le codec.\n"
|
#define MSGTR_CantOpenCodec "Impossible d'ouvrir le codec.\n"
|
||||||
#define MSGTR_CantCloseCodec "Impossible de fermer le codec.\n"
|
#define MSGTR_CantCloseCodec "Impossible de fermer le codec.\n"
|
||||||
@ -654,7 +678,6 @@ static char help_text[]=
|
|||||||
|
|
||||||
// LIRC:
|
// LIRC:
|
||||||
#define MSGTR_SettingUpLIRC "Mise en place du support LIRC...\n"
|
#define MSGTR_SettingUpLIRC "Mise en place du support LIRC...\n"
|
||||||
#define MSGTR_LIRCdisabled "Vous ne pourrez pas utiliser votre télécommande\n"
|
|
||||||
#define MSGTR_LIRCopenfailed "Impossible d'activer le support LIRC.\n"
|
#define MSGTR_LIRCopenfailed "Impossible d'activer le support LIRC.\n"
|
||||||
#define MSGTR_LIRCcfgerr "Impossible de lire le fichier de config de LIRC %s.\n"
|
#define MSGTR_LIRCcfgerr "Impossible de lire le fichier de config de LIRC %s.\n"
|
||||||
|
|
||||||
@ -682,6 +705,7 @@ static char help_text[]=
|
|||||||
|
|
||||||
#define MSGTR_InsertingAfVolume "[Mixer] Pas de support matériel pour le mixage, insertion du filtre logiciel de volume.\n"
|
#define MSGTR_InsertingAfVolume "[Mixer] Pas de support matériel pour le mixage, insertion du filtre logiciel de volume.\n"
|
||||||
#define MSGTR_NoVolume "[Mixer] Aucun contrôle de volume disponible.\n"
|
#define MSGTR_NoVolume "[Mixer] Aucun contrôle de volume disponible.\n"
|
||||||
|
#define MSGTR_NoBalance "[Mixer] Aucun contrôle de balance disponible.\n"
|
||||||
|
|
||||||
// ====================== messages/boutons GUI ========================
|
// ====================== messages/boutons GUI ========================
|
||||||
|
|
||||||
@ -722,7 +746,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_NEMFMR "Désolé, pas assez de mémoire pour le rendu des menus."
|
#define MSGTR_NEMFMR "Désolé, pas assez de mémoire pour le rendu des menus."
|
||||||
#define MSGTR_IDFGCVD "Désolé, aucun pilote de sortie vidéo compatible avec la GUI."
|
#define MSGTR_IDFGCVD "Désolé, aucun pilote de sortie vidéo compatible avec la GUI."
|
||||||
#define MSGTR_NEEDLAVC "Désolé, vous ne pouvez pas lire de fichiers non-MPEG avec le périphérique DXR3/H+ sans réencoder.\nActivez plutôt lavc dans la boîte de configuration DXR3/H+."
|
#define MSGTR_NEEDLAVC "Désolé, vous ne pouvez pas lire de fichiers non-MPEG avec le périphérique DXR3/H+ sans réencoder.\nActivez plutôt lavc dans la boîte de configuration DXR3/H+."
|
||||||
#define MSGTR_NEEDLAVCFAME "Désolé, vous ne pouvez pas jouer de fichier non-MPEG avec votre périphérique DXR3/H+ sans réencodage.\nVeuillez activer lavc ou fame dans la boîte de configuration DXR3/H+."
|
|
||||||
#define MSGTR_UNKNOWNWINDOWTYPE "Genre de fenêtre inconnue trouvé ..."
|
#define MSGTR_UNKNOWNWINDOWTYPE "Genre de fenêtre inconnue trouvé ..."
|
||||||
|
|
||||||
// --- messages d'erreurs du chargement de peau ---
|
// --- messages d'erreurs du chargement de peau ---
|
||||||
@ -740,7 +763,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_SKIN_BITMAP_RLENotSupported "tga compacté en RLE non supporté (%s)\n"
|
#define MSGTR_SKIN_BITMAP_RLENotSupported "tga compacté en RLE non supporté (%s)\n"
|
||||||
#define MSGTR_SKIN_BITMAP_UnknownFileType "format de fichier inconnu (%s)\n"
|
#define MSGTR_SKIN_BITMAP_UnknownFileType "format de fichier inconnu (%s)\n"
|
||||||
#define MSGTR_SKIN_BITMAP_ConversionError "Erreur de conversion 24 bit vers 32 bit (%s)\n"
|
#define MSGTR_SKIN_BITMAP_ConversionError "Erreur de conversion 24 bit vers 32 bit (%s)\n"
|
||||||
#define MSGTR_SKIN_BITMAP_ConvertError "erreur de conversion de 24 bit en 32 bit (%s)\n"
|
|
||||||
#define MSGTR_SKIN_BITMAP_UnknownMessage "message inconnu : %s\n"
|
#define MSGTR_SKIN_BITMAP_UnknownMessage "message inconnu : %s\n"
|
||||||
#define MSGTR_SKIN_FONT_NotEnoughtMemory "pas assez de mémoire\n"
|
#define MSGTR_SKIN_FONT_NotEnoughtMemory "pas assez de mémoire\n"
|
||||||
#define MSGTR_SKIN_FONT_TooManyFontsDeclared "trop de polices déclarées.\n"
|
#define MSGTR_SKIN_FONT_TooManyFontsDeclared "trop de polices déclarées.\n"
|
||||||
@ -837,7 +859,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_PREFERENCES_DoNotPlaySound "Ne pas jouer le son"
|
#define MSGTR_PREFERENCES_DoNotPlaySound "Ne pas jouer le son"
|
||||||
#define MSGTR_PREFERENCES_NormalizeSound "Normaliser le son"
|
#define MSGTR_PREFERENCES_NormalizeSound "Normaliser le son"
|
||||||
#define MSGTR_PREFERENCES_EnableEqualizer "Egaliseur (Equalizer) activé"
|
#define MSGTR_PREFERENCES_EnableEqualizer "Egaliseur (Equalizer) activé"
|
||||||
#define MSGTR_PREFERENCES_EnEqualizer "Activer l'équaliseur"
|
|
||||||
#define MSGTR_PREFERENCES_SoftwareMixer "Activer mixeur logiciel"
|
#define MSGTR_PREFERENCES_SoftwareMixer "Activer mixeur logiciel"
|
||||||
#define MSGTR_PREFERENCES_ExtraStereo "Activer stéréo supplémentaire"
|
#define MSGTR_PREFERENCES_ExtraStereo "Activer stéréo supplémentaire"
|
||||||
#define MSGTR_PREFERENCES_Coefficient "Coefficient :"
|
#define MSGTR_PREFERENCES_Coefficient "Coefficient :"
|
||||||
@ -885,7 +906,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_PREFERENCES_Message "ATTENTION : certaines options requièrent un redémarrage de la lecture !"
|
#define MSGTR_PREFERENCES_Message "ATTENTION : certaines options requièrent un redémarrage de la lecture !"
|
||||||
#define MSGTR_PREFERENCES_DXR3_VENC "Encodeur vidéo :"
|
#define MSGTR_PREFERENCES_DXR3_VENC "Encodeur vidéo :"
|
||||||
#define MSGTR_PREFERENCES_DXR3_LAVC "Utiliser LAVC (FFmpeg)"
|
#define MSGTR_PREFERENCES_DXR3_LAVC "Utiliser LAVC (FFmpeg)"
|
||||||
#define MSGTR_PREFERENCES_DXR3_FAME "Utiliser FAME"
|
|
||||||
#define MSGTR_PREFERENCES_FontEncoding1 "Unicode"
|
#define MSGTR_PREFERENCES_FontEncoding1 "Unicode"
|
||||||
#define MSGTR_PREFERENCES_FontEncoding2 "Langues Européennes Occidentales (ISO-8859-1)"
|
#define MSGTR_PREFERENCES_FontEncoding2 "Langues Européennes Occidentales (ISO-8859-1)"
|
||||||
#define MSGTR_PREFERENCES_FontEncoding3 "Langues Européeenes Occidentales avec Euro (ISO-8859-15)"
|
#define MSGTR_PREFERENCES_FontEncoding3 "Langues Européeenes Occidentales avec Euro (ISO-8859-15)"
|
||||||
@ -908,6 +928,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_PREFERENCES_FontEncoding20 "Thaïlandais (CP874)"
|
#define MSGTR_PREFERENCES_FontEncoding20 "Thaïlandais (CP874)"
|
||||||
#define MSGTR_PREFERENCES_FontEncoding21 "Cyrillique Windows (CP1251)"
|
#define MSGTR_PREFERENCES_FontEncoding21 "Cyrillique Windows (CP1251)"
|
||||||
#define MSGTR_PREFERENCES_FontEncoding22 "Slave/Europe Centrale Windows (CP1250)"
|
#define MSGTR_PREFERENCES_FontEncoding22 "Slave/Europe Centrale Windows (CP1250)"
|
||||||
|
#define MSGTR_PREFERENCES_FontEncoding23 "Arabe Windows (CP1256)"
|
||||||
#define MSGTR_PREFERENCES_FontNoAutoScale "Pas d'agrandissement auto"
|
#define MSGTR_PREFERENCES_FontNoAutoScale "Pas d'agrandissement auto"
|
||||||
#define MSGTR_PREFERENCES_FontPropWidth "Proportionnel à la largeur du film"
|
#define MSGTR_PREFERENCES_FontPropWidth "Proportionnel à la largeur du film"
|
||||||
#define MSGTR_PREFERENCES_FontPropHeight "Proportionnel à la hauteur du film"
|
#define MSGTR_PREFERENCES_FontPropHeight "Proportionnel à la hauteur du film"
|
||||||
@ -1051,6 +1072,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_VO_SUB_Volume "Volume"
|
#define MSGTR_VO_SUB_Volume "Volume"
|
||||||
#define MSGTR_VO_SUB_Brightness "Luminosité"
|
#define MSGTR_VO_SUB_Brightness "Luminosité"
|
||||||
#define MSGTR_VO_SUB_Hue "Tonalité"
|
#define MSGTR_VO_SUB_Hue "Tonalité"
|
||||||
|
#define MSGTR_VO_SUB_Balance "Balance"
|
||||||
|
|
||||||
// vo_xv.c
|
// vo_xv.c
|
||||||
#define MSGTR_VO_XV_ImagedimTooHigh "Dimensions d'image source trop élevées: %ux%u (maximum %ux%u)\n"
|
#define MSGTR_VO_XV_ImagedimTooHigh "Dimensions d'image source trop élevées: %ux%u (maximum %ux%u)\n"
|
||||||
@ -1180,8 +1202,6 @@ static char help_text[]=
|
|||||||
"[AO_ALSA] device=<device-name>\n"\
|
"[AO_ALSA] device=<device-name>\n"\
|
||||||
"[AO_ALSA] met le périphérique (change , vers . et : vers =)\n"
|
"[AO_ALSA] met le périphérique (change , vers . et : vers =)\n"
|
||||||
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] canaux %d non supportés.\n"
|
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] canaux %d non supportés.\n"
|
||||||
#define MSGTR_AO_ALSA_CannotReadAlsaConfiguration "[AO_ALSA] Ne peux lire la configuration ALSA : %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_CannotCopyConfiguration "[AO_ALSA] Ne peux copier la configuration : %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] Echec ouverture en mode non-bloqué, essaie ouverture en mode bloqué.\n"
|
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] Echec ouverture en mode non-bloqué, essaie ouverture en mode bloqué.\n"
|
||||||
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] Erreur ouverture de lecture : %s\n"
|
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] Erreur ouverture de lecture : %s\n"
|
||||||
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] Erreur mise en mode bloqué %s.\n"
|
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] Erreur mise en mode bloqué %s.\n"
|
||||||
@ -1226,6 +1246,7 @@ static char help_text[]=
|
|||||||
// ======================= AF Filtres Audio ================================
|
// ======================= AF Filtres Audio ================================
|
||||||
|
|
||||||
// libaf
|
// libaf
|
||||||
|
#define MSGTR_AF_ValueOutOfRange MSGTR_VO_ValueOutOfRange
|
||||||
|
|
||||||
// af_ladspa.c
|
// af_ladspa.c
|
||||||
|
|
||||||
@ -1259,6 +1280,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Manette de jeux : alerte événement init, perte de sync avec pilote\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Manette de jeux : alerte événement init, perte de sync avec pilote\n"
|
||||||
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Alerte manette de jeux événement inconnu de type %d\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Alerte manette de jeux événement inconnu de type %d\n"
|
||||||
|
|
||||||
|
// appleir.c
|
||||||
|
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Init "Initialisation de l'interface IR Apple sur %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Detect "Interface IR Apple détectée sur %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_CantOpen "Impossible d'ouvrir l'interface IR Apple : %s\n"
|
||||||
|
|
||||||
// input.c
|
// input.c
|
||||||
|
|
||||||
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Trop de descripteurs de fichiers de commande. Impossible d'enregister descripteur fichier %d.\n"
|
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Trop de descripteurs de fichiers de commande. Impossible d'enregister descripteur fichier %d.\n"
|
||||||
@ -1338,6 +1365,8 @@ static char help_text[]=
|
|||||||
#define MSGTR_MPDEMUX_ASFHDR_NoDataChunkAfterHeader "Nul morceau données suit entête !\n"
|
#define MSGTR_MPDEMUX_ASFHDR_NoDataChunkAfterHeader "Nul morceau données suit entête !\n"
|
||||||
#define MSGTR_MPDEMUX_ASFHDR_AudioVideoHeaderNotFound "ASF : nul entête audio ou vidéo trouvé - fichier brisé ?\n"
|
#define MSGTR_MPDEMUX_ASFHDR_AudioVideoHeaderNotFound "ASF : nul entête audio ou vidéo trouvé - fichier brisé ?\n"
|
||||||
#define MSGTR_MPDEMUX_ASFHDR_InvalidLengthInASFHeader "Longueur entête ASF invalide !\n"
|
#define MSGTR_MPDEMUX_ASFHDR_InvalidLengthInASFHeader "Longueur entête ASF invalide !\n"
|
||||||
|
#define MSGTR_MPDEMUX_ASFHDR_DRMLicenseURL "URL de la license DRM : %s\n"
|
||||||
|
#define MSGTR_MPDEMUX_ASFHDR_DRMProtected "Ce fichier est entaché d'une chiffrage DRM. Il n'est pas lisible avec MPlayer!\n"
|
||||||
|
|
||||||
// asf_mmst_streaming.c
|
// asf_mmst_streaming.c
|
||||||
|
|
||||||
@ -1540,6 +1569,7 @@ static char help_text[]=
|
|||||||
|
|
||||||
#define MSGTR_MPDEMUX_XMMS_FoundPlugin "Plugin trouvé : %s (%s).\n"
|
#define MSGTR_MPDEMUX_XMMS_FoundPlugin "Plugin trouvé : %s (%s).\n"
|
||||||
#define MSGTR_MPDEMUX_XMMS_ClosingPlugin "Fermeture du plugin : %s.\n"
|
#define MSGTR_MPDEMUX_XMMS_ClosingPlugin "Fermeture du plugin : %s.\n"
|
||||||
|
#define MSGTR_MPDEMUX_XMMS_WaitForStart "Attente de fermeture du greffon XMMS pour démarrer la lecture de '%s'...\n"
|
||||||
|
|
||||||
// ========================== LIBMPMENU ===================================
|
// ========================== LIBMPMENU ===================================
|
||||||
|
|
||||||
@ -1581,6 +1611,7 @@ static char help_text[]=
|
|||||||
|
|
||||||
// libmenu/menu_param.c
|
// libmenu/menu_param.c
|
||||||
#define MSGTR_LIBMENU_SubmenuDefinitionNeedAMenuAttribut "[MENU] Définition sous-menu exige attribut 'menu'.\n"
|
#define MSGTR_LIBMENU_SubmenuDefinitionNeedAMenuAttribut "[MENU] Définition sous-menu exige attribut 'menu'.\n"
|
||||||
|
#define MSGTR_LIBMENU_InvalidProperty "[MENU] Propriété invalide '%s' dans l'entrée menu pref. (line %d).\n"
|
||||||
#define MSGTR_LIBMENU_PrefMenuEntryDefinitionsNeed "[MENU] Définition entrée menu pref exige attribut 'propriété' valide (ligne %d).\n"
|
#define MSGTR_LIBMENU_PrefMenuEntryDefinitionsNeed "[MENU] Définition entrée menu pref exige attribut 'propriété' valide (ligne %d).\n"
|
||||||
#define MSGTR_LIBMENU_PrefMenuNeedsAnArgument "[MENU] Menu pref exige argument.\n"
|
#define MSGTR_LIBMENU_PrefMenuNeedsAnArgument "[MENU] Menu pref exige argument.\n"
|
||||||
|
|
||||||
@ -1650,9 +1681,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MPCODECS_WarnNextFilterDoesntSupportSlices "Alerte ! Filtre suivant ne supporte pas TRANCHES, gare au sig11...\n"
|
#define MSGTR_MPCODECS_WarnNextFilterDoesntSupportSlices "Alerte ! Filtre suivant ne supporte pas TRANCHES, gare au sig11...\n"
|
||||||
#define MSGTR_MPCODECS_FunWhydowegetNULL "Pourquoi ce NULL ??\n"
|
#define MSGTR_MPCODECS_FunWhydowegetNULL "Pourquoi ce NULL ??\n"
|
||||||
|
|
||||||
// libmpcodecs/vf_fame.c
|
|
||||||
#define MSGTR_MPCODECS_FatalCantOpenlibFAME "FATAL : ne peux ouvrir libFAME !\n"
|
|
||||||
|
|
||||||
// libmpcodecs/vf_test.c, vf_yuy2.c, vf_yvu9.c
|
// libmpcodecs/vf_test.c, vf_yuy2.c, vf_yvu9.c
|
||||||
#define MSGTR_MPCODECS_WarnNextFilterDoesntSupport "%s non supporté par filtre suivant/vo :(\n"
|
#define MSGTR_MPCODECS_WarnNextFilterDoesntSupport "%s non supporté par filtre suivant/vo :(\n"
|
||||||
|
|
||||||
@ -1668,6 +1696,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] La version de votre pilote mga_vid est incompatible avec cette version de MPlayer !\n"
|
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] La version de votre pilote mga_vid est incompatible avec cette version de MPlayer !\n"
|
||||||
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Impossible d'ouvrir : %s\n"
|
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Impossible d'ouvrir : %s\n"
|
||||||
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] La resolution à sa source est au moins dans une dimension plus large que 1023x1023. Veuillez remettre à l'échelle dans le logiciel ou utiliser -lavdopts lowres=1\n"
|
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] La resolution à sa source est au moins dans une dimension plus large que 1023x1023. Veuillez remettre à l'échelle dans le logiciel ou utiliser -lavdopts lowres=1\n"
|
||||||
|
#define MGSTR_LIBVO_MGA_mgavidVersionMismatch "[MGA] La version du driver mga_vid (%u) ne correspond pas à celle utilisée lors de la compilation de MPlayer (%u)\n"
|
||||||
|
|
||||||
// libvo/vesa_lvo.c
|
// libvo/vesa_lvo.c
|
||||||
|
|
||||||
@ -1738,6 +1767,17 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBVO_DXR3_XCorrection "[VO_DXR3] Correction X : %d.\n"
|
#define MSGTR_LIBVO_DXR3_XCorrection "[VO_DXR3] Correction X : %d.\n"
|
||||||
#define MSGTR_LIBVO_DXR3_FailedSetSignalMix "[VO_DXR3] Echec réglage du mix signal !\n"
|
#define MSGTR_LIBVO_DXR3_FailedSetSignalMix "[VO_DXR3] Echec réglage du mix signal !\n"
|
||||||
|
|
||||||
|
// libvo/font_load_ft.c
|
||||||
|
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_NewFaceFailed "New_Face a échoué. Le chemin vers les fonts est peut-être faux.\nSpécifiez un fichier de police, svp. (~/.mplayer/subfont.ttf).\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_NewMemoryFaceFailed "New_Memory_Face a échoué.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_SubFaceFailed "Police de sous-titres : load_sub_face a échoué.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_SubFontCharsetFailed "Police de sous-titres : prepare_charset a échoué.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_CannotPrepareSubtitleFont "Impossible de préparer la police de sous-titres.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_CannotPrepareOSDFont "Impossible de prparer la police OSD.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_CannotGenerateTables "Impossible de générer les tables.\n"
|
||||||
|
#define MSGTR_LIBVO_FONT_LOAD_FT_DoneFreeTypeFailed "FT_Done_FreeType a échoué.\n"
|
||||||
|
|
||||||
// libvo/vo_mga.c
|
// libvo/vo_mga.c
|
||||||
|
|
||||||
#define MSGTR_LIBVO_MGA_AspectResized "[VO_MGA] aspect() : redimensionné à %dx%d.\n"
|
#define MSGTR_LIBVO_MGA_AspectResized "[VO_MGA] aspect() : redimensionné à %dx%d.\n"
|
||||||
@ -1905,6 +1945,12 @@ static char help_text[]=
|
|||||||
"[VO_XV] DOCS/HTML/en/video.html#xv!\n"\
|
"[VO_XV] DOCS/HTML/en/video.html#xv!\n"\
|
||||||
"[VO_XV] Voir 'mplayer -vo help' pour autres pilotes sortie vidéo (non xv).\n"\
|
"[VO_XV] Voir 'mplayer -vo help' pour autres pilotes sortie vidéo (non xv).\n"\
|
||||||
"[VO_XV] Essayez -vo x11.\n"
|
"[VO_XV] Essayez -vo x11.\n"
|
||||||
|
#define MSGTR_LIBVO_XV_Adaptor "[VO_XV] Utilise l'adaptateur Xv #%d (%s)\n"
|
||||||
|
|
||||||
|
|
||||||
|
// loader/ldt_keeper.c
|
||||||
|
|
||||||
|
#define MSGTR_LOADER_DYLD_Warning "AVERTISSEMENT : Tentative d'utilisation de codecs DLL alors que la variable d'environment\n DYLD_BIND_AT_LAUNCH n'est pas assignée. Plantage très probable.\n"
|
||||||
|
|
||||||
// stream/stream_radio.c
|
// stream/stream_radio.c
|
||||||
|
|
||||||
@ -1945,10 +1991,165 @@ static char help_text[]=
|
|||||||
#define MSGTR_RADIO_CaptureStarting "[radio] Début de la capture.\n"
|
#define MSGTR_RADIO_CaptureStarting "[radio] Début de la capture.\n"
|
||||||
#define MSGTR_RADIO_ClearBufferFailed "[radio] Echec effacement du tampon : %s\n"
|
#define MSGTR_RADIO_ClearBufferFailed "[radio] Echec effacement du tampon : %s\n"
|
||||||
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Echec appel stream_enable_cache : %s\n"
|
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Echec appel stream_enable_cache : %s\n"
|
||||||
#define MSGTR_RADIO_DriverUnknownId "[radio] ID du pilote inconnue : %d\n"
|
|
||||||
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nom de pilote inconnu : %s\n"
|
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nom de pilote inconnu : %s\n"
|
||||||
#define MSGTR_RADIO_DriverV4L2 "[radio] Utilise interface radio V4Lv2.\n"
|
#define MSGTR_RADIO_DriverV4L2 "[radio] Utilise interface radio V4Lv2.\n"
|
||||||
#define MSGTR_RADIO_DriverV4L "[radio] Utilise interface radio V4Lv1.\n"
|
#define MSGTR_RADIO_DriverV4L "[radio] Utilise interface radio V4Lv1.\n"
|
||||||
|
#define MSGTR_RADIO_DriverBSDBT848 "[radio] Utilisation de l'interface radio *BSD BT848.\n"
|
||||||
|
#define MSGTR_RADIO_AvailableDrivers "[radio] Drivers disponibles : "
|
||||||
|
|
||||||
|
// ================================== LIBASS ====================================
|
||||||
|
|
||||||
|
// ass_bitmap.c
|
||||||
|
#define MSGTR_LIBASS_FT_Glyph_To_BitmapError "[ass] Erreur FT_Glyph_To_Bitmap %d \n"
|
||||||
|
#define MSGTR_LIBASS_UnsupportedPixelMode "[ass] Mode pixel non supporté : %d\n"
|
||||||
|
#define MSGTR_LIBASS_GlyphBBoxTooLarge "[ass] Cadre du caractère trop grand: %dx%dpx\n"
|
||||||
|
|
||||||
|
// ass.c
|
||||||
|
#define MSGTR_LIBASS_NoStyleNamedXFoundUsingY "[ass] [%p] Avertissement: aucun style nommé '%s' trouvé, utilise '%s'\n"
|
||||||
|
#define MSGTR_LIBASS_BadTimestamp "[ass] mauvais marqueur de temps\n"
|
||||||
|
|
||||||
|
|
||||||
|
#define MSGTR_LIBASS_ErrorOpeningIconvDescriptor "[ass] erreur lors de l'ouverture du descripteur de conversion.\n"
|
||||||
|
#define MSGTR_LIBASS_ErrorRecodingFile "[ass] erreur lors de l'enregistrement du fichier.\n"
|
||||||
|
#define MSGTR_LIBASS_FopenFailed "[ass] ass_read_file(%s) : fopen a échoué\n"
|
||||||
|
#define MSGTR_LIBASS_FseekFailed "[ass] ass_read_file(%s) : fseek à échoué\n"
|
||||||
|
#define MSGTR_LIBASS_RefusingToLoadSubtitlesLargerThan10M "[ass] ass_read_file(%s) : Chargement des fichiers plus grands que 10Mo refusé\n"
|
||||||
|
#define MSGTR_LIBASS_ReadFailed "Lecture impossible, %d: %s\n"
|
||||||
|
#define MSGTR_LIBASS_AddedSubtitleFileMemory "[ass] Ajout d'un fichier de sous-titres : <memory> (%d styles, %d évènements)\n"
|
||||||
|
#define MSGTR_LIBASS_AddedSubtitleFileFname "[ass] Ajout d'un fichier de sous-titres : %s (%d styles, %d events)\n"
|
||||||
|
#define MSGTR_LIBASS_FailedToCreateDirectory "[ass] Impossible de créer le répertoire %s\n"
|
||||||
|
#define MSGTR_LIBASS_NotADirectory "[ass] Pas un répertoire : %s\n"
|
||||||
|
|
||||||
|
// ass_cache.c
|
||||||
|
#define MSGTR_LIBASS_TooManyFonts "[ass] Trop de polices de caractères\n"
|
||||||
|
#define MSGTR_LIBASS_ErrorOpeningFont "[ass] Erreur à l'ouverture de la police de caractère : %s, %d\n"
|
||||||
|
|
||||||
|
// ass_fontconfig.c
|
||||||
|
#define MSGTR_LIBASS_SelectedFontFamilyIsNotTheRequestedOne "[ass] fontconfig : La police sélectionnée n'est pas celle demandée : '%s' != '%s'\n"
|
||||||
|
#define MSGTR_LIBASS_UsingDefaultFontFamily "[ass] fontconfig_select : Utilise la famille de police par defaut: (%s, %d, %d) -> %s, %d\n"
|
||||||
|
#define MSGTR_LIBASS_UsingDefaultFont "[ass] fontconfig_select : Utilise la police par defaut : (%s, %d, %d) -> %s, %d\n"
|
||||||
|
#define MSGTR_LIBASS_UsingArialFontFamily "[ass] fontconfig_select : Utilise la famille de fonte 'Arial' : (%s, %d, %d) -> %s, %d\n"
|
||||||
|
#define MSGTR_LIBASS_FcInitLoadConfigAndFontsFailed "[ass] FcInitLoadConfigAndFonts a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_UpdatingFontCache "[ass] Mise à jour du cache des polices.\n"
|
||||||
|
#define MSGTR_LIBASS_BetaVersionsOfFontconfigAreNotSupported "[ass] Les versions Beta de fontconfig ne sont pas supportées.\n[ass] Effectuez une mise à jours avant de soumettre un rapport de bug.\n"
|
||||||
|
#define MSGTR_LIBASS_FcStrSetAddFailed "[ass] FcStrSetAdd a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_FcDirScanFailed "[ass] FcDirScan a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_FcDirSave "[ass] FcDirSave a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_FcConfigAppFontAddDirFailed "[ass] FcConfigAppFontAddDir a échoué\n"
|
||||||
|
#define MSGTR_LIBASS_FontconfigDisabledDefaultFontWillBeUsed "[ass] Fontconfig desactivé, seule la police par defaut sera utilisée.\n"
|
||||||
|
#define MSGTR_LIBASS_FunctionCallFailed "[ass] %s a échoué\n"
|
||||||
|
|
||||||
|
// ass_render.c
|
||||||
|
#define MSGTR_LIBASS_NeitherPlayResXNorPlayResYDefined "[ass] Ni PlayResX, ni PlayResY ne sont définis. Suppose 384x288.\n"
|
||||||
|
#define MSGTR_LIBASS_PlayResYUndefinedSettingY "[ass] PlayResY non défini, ajuste à %d.\n"
|
||||||
|
#define MSGTR_LIBASS_PlayResXUndefinedSettingX "[ass] PlayResX non défini, ajuste à %d.\n"
|
||||||
|
#define MSGTR_LIBASS_FT_Init_FreeTypeFailed "[ass] FT_Init_FreeType a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_Init "[ass] Initialisation\n"
|
||||||
|
#define MSGTR_LIBASS_InitFailed "[ass] L'initialisation a échoué.\n"
|
||||||
|
#define MSGTR_LIBASS_BadCommand "[ass] Mauvaise commande: %c%c\n"
|
||||||
|
#define MSGTR_LIBASS_ErrorLoadingGlyph "[ass] Erreur au chargement du caractère.\n"
|
||||||
|
#define MSGTR_LIBASS_FT_Glyph_Stroke_Error "[ass] Erreur FT_Glyph_Stroke %d \n"
|
||||||
|
#define MSGTR_LIBASS_UnknownEffectType_InternalError "[ass] Type d'erreur inconnu (erreur interne)\n"
|
||||||
|
#define MSGTR_LIBASS_NoStyleFound "[ass] Aucun style trouvé !\n"
|
||||||
|
#define MSGTR_LIBASS_EmptyEvent "[ass] Évènement vide !\n"
|
||||||
|
#define MSGTR_LIBASS_MAX_GLYPHS_Reached "[ass] MAX_GLYPHS atteint: évènement %d, début = %llu, durée = %llu\n Texte = %s\n"
|
||||||
|
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] Avertissement! La hauteur de l'évènement a changé !\n"
|
||||||
|
|
||||||
|
// ass_font.c
|
||||||
|
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] Caractère 0x%X introuvable. Sélectionne une police supplémentaire pour (%s, %d, %d)\n"
|
||||||
|
#define MSGTR_LIBASS_GlyphNotFound "[ass] Caractère 0x%X introuvable dans la police pour (%s, %d, %d)\n"
|
||||||
|
#define MSGTR_LIBASS_NoCharmaps "[ass] Famille de police sans description de table de caractères\n"
|
||||||
|
#define MSGTR_LIBASS_NoCharmapAutodetected "[ass] Pas de description de table de caractères détectée automatiquement. Essai de la première\n"
|
||||||
|
|
||||||
|
//tv.c
|
||||||
|
#define MSGTR_TV_BogusNormParameter "tv.c: norm_from_string(%s) : paramètre de norme bogué. Ajuste à %s.\n"
|
||||||
|
#define MSGTR_TV_NoVideoInputPresent "Erreur: Pas d'entrée vidéo présente!\n"
|
||||||
|
#define MSGTR_TV_UnknownImageFormat ""\
|
||||||
|
"==================================================================\n"\
|
||||||
|
" AVERTISSEMENT: FORMAT D'IMAGE DE SORTIE NON-TESTÉ OU INCONNU (0x%x)\n"\
|
||||||
|
" Ceci peut causer une lecture erronée ou un plantage ! Les rapports \n"\
|
||||||
|
" de bugs seront ignorés ! Vous devriez réessayer avec YV12 (l'espace \n"\
|
||||||
|
" de couleur par défaut) et lire la documentation !\n"\
|
||||||
|
"==================================================================\n"
|
||||||
|
#define MSGTR_TV_SelectedNormId "Identifiant de norme sélectionné: %d\n"
|
||||||
|
#define MSGTR_TV_SelectedNorm "Norme sélectionnée : %s\n"
|
||||||
|
#define MSGTR_TV_CannotSetNorm "Erreur : La norme ne peut pas être appliquée !\n"
|
||||||
|
#define MSGTR_TV_MJP_WidthHeight " MJP: largeur %d hauteur %d\n"
|
||||||
|
#define MSGTR_TV_UnableToSetWidth "Impossible d'appliquer la largeur requise : %d\n"
|
||||||
|
#define MSGTR_TV_UnableToSetHeight "Impossible d'appliquer la hauteur requise : %d\n"
|
||||||
|
#define MSGTR_TV_NoTuner "L'entrée sélectionnée n'a pas de tuner !\n"
|
||||||
|
#define MSGTR_TV_UnableFindChanlist "Impossible de trouver la liste des canaux sélectionnés ! (%s)\n"
|
||||||
|
#define MSGTR_TV_SelectedChanlist "Liste des canaux sélectionnés: %s (contenant %d canaux)\n"
|
||||||
|
#define MSGTR_TV_ChannelFreqParamConflict "Il n'est pas possible de régler la fréquence et le canal simultanément !\n"
|
||||||
|
#define MSGTR_TV_ChannelNamesDetected "Noms des chaînes TV détectées.\n"
|
||||||
|
#define MSGTR_TV_NoFreqForChannel "Imposible de trouver la fréquence du canal %s (%s)\n"
|
||||||
|
#define MSGTR_TV_SelectedChannel3 "Canal sélectionné : %s - %s (fréq: %.3f)\n"
|
||||||
|
#define MSGTR_TV_SelectedChannel2 "Canal sélectionné : %s (fréq: %.3f)\n"
|
||||||
|
#define MSGTR_TV_SelectedFrequency "Fréquence sélectionnée : %lu (%.3f)\n"
|
||||||
|
#define MSGTR_TV_RequestedChannel "Canal choisi: %s\n"
|
||||||
|
#define MSGTR_TV_UnsupportedAudioType "Format audio '%s (%x)' non-supporté !\n"
|
||||||
|
#define MSGTR_TV_AudioFormat " TV audio: %d canaux, %d bits, %d Hz\n"
|
||||||
|
#define MSGTR_TV_AvailableDrivers "Drivers disponibles:\n"
|
||||||
|
#define MSGTR_TV_DriverInfo "Driver sélectionné: %s\n nom : %s\n auteur : %s\n commentaire : %s\n"
|
||||||
|
#define MSGTR_TV_NoSuchDriver "Driver inexistant : %s\n"
|
||||||
|
#define MSGTR_TV_DriverAutoDetectionFailed "La détection auto du driver TV a échouée.\n"
|
||||||
|
#define MSGTR_TV_UnknownColorOption "Option couleur choisie inconnue (%d) !\n"
|
||||||
|
#define MSGTR_TV_CurrentFrequency "Fréquence actuelle : %lu (%.3f)\n"
|
||||||
|
#define MSGTR_TV_NoTeletext "Télétexte absent"
|
||||||
|
#define MSGTR_TV_Bt848IoctlFailed "tvi_bsdbt848: L'appel à %s ioctl a échoué. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848InvalidAudioRate "tvi_bsdbt848: Taux d'échantillonage audio invalide. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorOpeningBktrDev "tvi_bsdbt848: Impossible d'ouvrir le périphérique bktr. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorOpeningTunerDev "tvi_bsdbt848: Impossible d'ouvrir le périphérique tuner. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorOpeningDspDev "tvi_bsdbt848: Impossible d'ouvrir le périphérique dsp. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorConfiguringDsp "tvi_bsdbt848: La configuration du périphérique dsp a échoué. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorReadingAudio "tvi_bsdbt848: Erreur de lecture des données audio. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848MmapFailed "tvi_bsdbt848: mmap a échoué. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848FrameBufAllocFailed "tvi_bsdbt848: L'allocation du buffer de trame a échoué. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorSettingWidth "tvi_bsdbt848: Erreur du réglage de la largeur de l'image. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848ErrorSettingHeight "tvi_bsdbt848: Erreur du réglage de la hauteur de l'image. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_Bt848UnableToStopCapture "tvi_bsdbt848: Impossible d'arréter la capture. Erreur : %s\n"
|
||||||
|
#define MSGTR_TV_TTSupportedLanguages "Langues supportées par le télétexte:\n"
|
||||||
|
#define MSGTR_TV_TTSelectedLanguage "Langue sélectionnée par defaut pour le télétexte : %s\n"
|
||||||
|
#define MSGTR_TV_ScannerNotAvailableWithoutTuner "Le scanner de canaux est indisponible sans le tuner\n"
|
||||||
|
|
||||||
|
//tvi_dshow.c
|
||||||
|
#define MSGTR_TVI_DS_UnableConnectInputVideoDecoder "Impossible de connecter l'entrée spécifiée au décodeur vidéo. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableConnectInputAudioDecoder "Impossible de connecter l'entrée spécifiée au décodeur audio. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableSelectVideoFormat "tvi_dshow: Impossible de sélectionner le format vidéo. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableSelectAudioFormat "tvi_dshow: Impossible de sélectionner le format audio. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableGetMediaControlInterface "tvi_dshow: Impossible de se connecter à une interface IMediaControl. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_DeviceNotFound "tvi_dshow: Périphérique #%d non trouvé\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableGetDeviceName "tvi_dshow: Impossible de trouver un nom pour le périphérique #%d\n"
|
||||||
|
#define MSGTR_TVI_DS_UsingDevice "tvi_dshow: Utilise le périphérique #%d: %s\n"
|
||||||
|
#define MSGTR_TVI_DS_DeviceName "tvi_dshow: Périphérique #%d: %s\n"
|
||||||
|
#define MSGTR_TVI_DS_DirectGetFreqFailed "tvi_dshow: Impossible d'obtenir la fréquence directement. La table des canaux incluse à l'OS sera utilisée.\n"
|
||||||
|
#define MSGTR_TVI_DS_DirectSetFreqFailed "tvi_dshow: Impossible de fixer la fréquence directement. La table des canaux incluse à l'OS sera utilisée.\n"
|
||||||
|
#define MSGTR_TVI_DS_SupportedNorms "tvi_dshow: normes supportées :"
|
||||||
|
#define MSGTR_TVI_DS_AvailableVideoInputs "tvi_dshow: Entrées vidéo disponibles :"
|
||||||
|
#define MSGTR_TVI_DS_AvailableAudioInputs "tvi_dshow: Entrées audio disponibles :"
|
||||||
|
//following phrase will be printed near the selected audio/video input
|
||||||
|
#define MSGTR_TVI_DS_InputSelected "(sélectionnée)"
|
||||||
|
#define MSGTR_TVI_DS_UnableExtractFreqTable "tvi_dshow: Impossible de lire la table des fréquence depuis kstvtune.ax\n"
|
||||||
|
#define MSGTR_TVI_DS_WrongDeviceParam "tvi_dshow: Mauvais paramêtre de périphérique : %s\n"
|
||||||
|
#define MSGTR_TVI_DS_WrongDeviceIndex "tvi_dshow: Mauvais index de périphérique: %d\n"
|
||||||
|
#define MSGTR_TVI_DS_WrongADeviceParam "tvi_dshow: Wrong adevice parameter: %s\n"
|
||||||
|
#define MSGTR_TVI_DS_WrongADeviceIndex "tvi_dshow: Wrong adevice index: %d\n"
|
||||||
|
|
||||||
|
#define MSGTR_TVI_DS_SamplerateNotsupported "tvi_dshow: Le taux d'échantillonage %d n'est pas supporté par le périphérique. Retour au premier taux disponible.\n"
|
||||||
|
#define MSGTR_TVI_DS_VideoAdjustigNotSupported "tvi_dshow: Ajustement de la brillance/teinte/saturation/contraste non supportée par le périphérique\n"
|
||||||
|
|
||||||
|
#define MSGTR_TVI_DS_ChangingWidthHeightNotSupported "tvi_dshow: L'ajustement de la hauteur/largeur de la vidéo n'est pas supportée par le périphérique.\n"
|
||||||
|
#define MSGTR_TVI_DS_SelectingInputNotSupported "tvi_dshow: La sélection de la source de capture n'est pas supportée par le périphérique\n"
|
||||||
|
#define MSGTR_TVI_DS_ErrorParsingAudioFormatStruct "tvi_dshow: Impossible d'analyser la structure du format audio.\n"
|
||||||
|
#define MSGTR_TVI_DS_ErrorParsingVideoFormatStruct "tvi_dshow: Impossible d'analyser la structure du format vidéo.\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableSetAudioMode "tvi_dshow: Impossible d'utiliser le mode audio %d. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_UnsupportedMediaType "tvi_dshow: Type de média non supporté passé vers %s\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableFindNearestChannel "tvi_dshow: Impossible de trouver le canal le plus proche dans la table des fréquences du système\n"
|
||||||
|
#define MSGTR_TVI_DS_UnableToSetChannel "tvi_dshow: Impossible de basculer sur le canal le plus proche depuis la table des fréquences du système. Erreur :0x%x\n"
|
||||||
|
#define MSGTR_TVI_DS_NoVideoCaptureDevice "tvi_dshow: Impossible de trouver un périphérique de capture vidéo\n"
|
||||||
|
#define MSGTR_TVI_DS_NoAudioCaptureDevice "tvi_dshow: Impossible de trouver un périphérique de capture audio\n"
|
||||||
|
#define MSGTR_TVI_DS_GetActualMediatypeFailed "tvi_dshow: Impossible d'obtenir le type de média réel (Erreur:0x%x). Suppose qu'il s'agit de celui requis.\n"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Messages to be moved to the section where they belong in the English version */
|
/* Messages to be moved to the section where they belong in the English version */
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
//... Okay enough of the hw, now send the other two!
|
//... Okay enough of the hw, now send the other two!
|
||||||
//
|
//
|
||||||
// Updated by: Gabrov <gabrov@freemail.hu>
|
// Updated by: Gabrov <gabrov@freemail.hu>
|
||||||
// Sync'ed with help_mp-en.h r26649 (2008. 05. 11.)
|
// Sync'ed with help_mp-en.h r26911 (2008. 06. 02.)
|
||||||
|
|
||||||
// ========================= MPlayer help ===========================
|
// ========================= MPlayer help ===========================
|
||||||
|
|
||||||
@ -1295,6 +1295,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Botkormány: figyelmeztető init esemény, elvesztettük a szinkront a vezérlővel.\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Botkormány: figyelmeztető init esemény, elvesztettük a szinkront a vezérlővel.\n"
|
||||||
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Botkormány ismeretlen figyelmeztető esemény típus: %d\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Botkormány ismeretlen figyelmeztető esemény típus: %d\n"
|
||||||
|
|
||||||
|
// appleir.c
|
||||||
|
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Init "Apple IR inicializálása %s eszközön.\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Detect "Apple IR megtalálva %s eszközön.\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_CantOpen "Nem nyitható meg az Apple IR eszköz: %s\n"
|
||||||
|
|
||||||
// input.c
|
// input.c
|
||||||
|
|
||||||
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Túl sok parancs fájl leíró, nem sikerült a(z) %d fájl leíró regisztálása.\n"
|
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Túl sok parancs fájl leíró, nem sikerült a(z) %d fájl leíró regisztálása.\n"
|
||||||
@ -1704,7 +1710,8 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBVO_MGA_InvalidOutputFormat "[MGA] Hibás kimeneti formátum %0X\n"
|
#define MSGTR_LIBVO_MGA_InvalidOutputFormat "[MGA] Hibás kimeneti formátum %0X\n"
|
||||||
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] Az mga_vid vezérlőd verziója nem kompatibilis ezzel az MPlayer verzióval!\n"
|
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] Az mga_vid vezérlőd verziója nem kompatibilis ezzel az MPlayer verzióval!\n"
|
||||||
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Nem nyitható meg: %s\n"
|
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Nem nyitható meg: %s\n"
|
||||||
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] A forrás felbontás legalább egy dimenzióban nagyobb, mint 1023x1023. Kérlek méretezd át szoftveresen vagy használd a -lavdopts lowres=1-t\n"
|
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] A forrás felbontása legalább egy dimenzióban nagyobb, mint 1023x1023. Méretezd át szoftveresen vagy használd a -lavdopts lowres=1-t\n"
|
||||||
|
#define MGSTR_LIBVO_MGA_mgavidVersionMismatch "[MGA] különbség a kernel (%u) és az MPlayer (%u) mga_vid verziói között\n"
|
||||||
|
|
||||||
// libvo/vesa_lvo.c
|
// libvo/vesa_lvo.c
|
||||||
|
|
||||||
@ -1953,6 +1960,7 @@ static char help_text[]=
|
|||||||
"[VO_XV] majd olvasd el a DOCS/HTML/hu/video.html#xv fájlt!\n"\
|
"[VO_XV] majd olvasd el a DOCS/HTML/hu/video.html#xv fájlt!\n"\
|
||||||
"[VO_XV] Lásd az 'mplayer -vo help'-et más (nem-xv) videó kimeneti vezérlőkért.\n"\
|
"[VO_XV] Lásd az 'mplayer -vo help'-et más (nem-xv) videó kimeneti vezérlőkért.\n"\
|
||||||
"[VO_XV] Próbáld ki a -vo x11 -et.\n"
|
"[VO_XV] Próbáld ki a -vo x11 -et.\n"
|
||||||
|
#define MSGTR_LIBVO_XV_Adaptor "[VO_XV] Xv Adaptor #%d (%s) használata\n"
|
||||||
|
|
||||||
|
|
||||||
// loader/ldt_keeper.c
|
// loader/ldt_keeper.c
|
||||||
|
@ -546,7 +546,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_DVDlimitSpeed "Limitazione della velocità del DVD a %dKB/s... "
|
#define MSGTR_DVDlimitSpeed "Limitazione della velocità del DVD a %dKB/s... "
|
||||||
#define MSGTR_DVDlimitFail "non riuscita\n"
|
#define MSGTR_DVDlimitFail "non riuscita\n"
|
||||||
#define MSGTR_DVDlimitOk "riuscita\n"
|
#define MSGTR_DVDlimitOk "riuscita\n"
|
||||||
#define MSGTR_CantOpenDVD "Impossibile aprire il dispositivo DVD: %s\n"
|
#define MSGTR_CantOpenDVD "Impossibile aprire il dispositivo DVD: %s (%s)\n"
|
||||||
#define MSGTR_NoDVDSupport "MPlayer è stato compilato senza il supporto per DVD, esco\n"
|
#define MSGTR_NoDVDSupport "MPlayer è stato compilato senza il supporto per DVD, esco\n"
|
||||||
#define MSGTR_DVDnumTitles "Ci sono %d titolo/i su questo DVD.\n"
|
#define MSGTR_DVDnumTitles "Ci sono %d titolo/i su questo DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Numero del titolo del DVD non valido: %d\n"
|
#define MSGTR_DVDinvalidTitle "Numero del titolo del DVD non valido: %d\n"
|
||||||
|
@ -168,7 +168,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "ローカルエリアネットワークから開くことが出来ませんでした: '%s'\n"
|
#define MSGTR_SMBFileNotFound "ローカルエリアネットワークから開くことが出来ませんでした: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer はSMB reading support を無効にしてコンパイルされています\n"
|
#define MSGTR_SMBNotCompiled "MPlayer はSMB reading support を無効にしてコンパイルされています\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "DVDデバイスを開くことが出来ませんでした: %s\n"
|
#define MSGTR_CantOpenDVD "DVDデバイスを開くことが出来ませんでした: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "このDVDには %d タイトル記録されています.\n"
|
#define MSGTR_DVDnumTitles "このDVDには %d タイトル記録されています.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "不正な DVD タイトル番号です: %d\n"
|
#define MSGTR_DVDinvalidTitle "不正な DVD タイトル番号です: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "このDVDは %d キャプターあります.\n"
|
#define MSGTR_DVDnumChapters "このDVDは %d キャプターあります.\n"
|
||||||
|
@ -221,7 +221,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "lan으로 부터 열 수 없습니다.: '%s'\n"
|
#define MSGTR_SMBFileNotFound "lan으로 부터 열 수 없습니다.: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer가 SMB읽기를 할 수 있도록 컴파일되지 않았습니다.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer가 SMB읽기를 할 수 있도록 컴파일되지 않았습니다.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "DVD 장치를 열 수 없습니다.: %s\n"
|
#define MSGTR_CantOpenDVD "DVD 장치를 열 수 없습니다.: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "이 DVD에는 %d개의 타이틀이 있습니다.\n"
|
#define MSGTR_DVDnumTitles "이 DVD에는 %d개의 타이틀이 있습니다.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "유효하지 않은 DVD 타이틀 번호입니다.: %d\n"
|
#define MSGTR_DVDinvalidTitle "유효하지 않은 DVD 타이틀 번호입니다.: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "이 DVD 타이틀에는 %d개의 챕터가 있습니다.\n"
|
#define MSGTR_DVDnumChapters "이 DVD 타이틀에는 %d개의 챕터가 있습니다.\n"
|
||||||
|
@ -222,7 +222,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Не може да отвори од локалната мрежа: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Не може да отвори од локалната мрежа: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer не е компајлиран со подршка за SMB читање\n"
|
#define MSGTR_SMBNotCompiled "MPlayer не е компајлиран со подршка за SMB читање\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Не можеше да се отвори DVD уредот: %s\n"
|
#define MSGTR_CantOpenDVD "Не можеше да се отвори DVD уредот: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Има %d наслови на ова DVD.\n"
|
#define MSGTR_DVDnumTitles "Има %d наслови на ова DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Невалиден DVD број на насловот: %d\n"
|
#define MSGTR_DVDinvalidTitle "Невалиден DVD број на насловот: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Има %d поглавја на овој DVD наслов.\n"
|
#define MSGTR_DVDnumChapters "Има %d поглавја на овој DVD наслов.\n"
|
||||||
|
@ -98,7 +98,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_ConnToServer "Koblet til server: %s\n"
|
#define MSGTR_ConnToServer "Koblet til server: %s\n"
|
||||||
#define MSGTR_FileNotFound "Finner ikke filen: '%s'\n"
|
#define MSGTR_FileNotFound "Finner ikke filen: '%s'\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Kan ikke åpne DVD enhet: %s\n"
|
#define MSGTR_CantOpenDVD "Kan ikke åpne DVD enhet: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Det er %d titler på denne DVD.\n"
|
#define MSGTR_DVDnumTitles "Det er %d titler på denne DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Ugyldig DVD tittelnummer: %d\n"
|
#define MSGTR_DVDinvalidTitle "Ugyldig DVD tittelnummer: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Det er %d kapitler i denne DVD tittelen.\n"
|
#define MSGTR_DVDnumChapters "Det er %d kapitler i denne DVD tittelen.\n"
|
||||||
|
@ -153,7 +153,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Menu initialisatie mislukt.\n"
|
#define MSGTR_MenuInitFailed "Menu initialisatie mislukt.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "WAARSCHUWING: getch2_init is twee maal opgeroepen!\n"
|
#define MSGTR_Getch2InitializedTwice "WAARSCHUWING: getch2_init is twee maal opgeroepen!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Deze stream can niet opgeslagen worde - geen bestandsomschrijving (file descriptor) beschikbaar.\n"
|
#define MSGTR_DumpstreamFdUnavailable "Deze stream can niet opgeslagen worde - geen bestandsomschrijving (file descriptor) beschikbaar.\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "De afspeellijst %s wordt opnieuw ingelezen ...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Kan de libmenu video filter niet openen met het root menu %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Kan de libmenu video filter niet openen met het root menu %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Er is een fout opgetreden bijde pre-initialisatie van de audio filter!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Er is een fout opgetreden bijde pre-initialisatie van de audio filter!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Linux RTC leesfout: %s\n"
|
#define MSGTR_LinuxRTCReadError "Linux RTC leesfout: %s\n"
|
||||||
@ -429,7 +428,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Kon netwerkbestand '%s' niet openen\n"
|
#define MSGTR_SMBFileNotFound "Kon netwerkbestand '%s' niet openen\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer werd niet gecompileerd met SMB leesondersteuning\n"
|
#define MSGTR_SMBNotCompiled "MPlayer werd niet gecompileerd met SMB leesondersteuning\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Kon DVD device niet openen: %s\n"
|
#define MSGTR_CantOpenDVD "Kon DVD device niet openen: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Er zijn %d titels op deze DVD.\n"
|
#define MSGTR_DVDnumTitles "Er zijn %d titels op deze DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Foutieve DVD titelnummer: %d\n"
|
#define MSGTR_DVDinvalidTitle "Foutieve DVD titelnummer: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Er zijn %d hoofdstukken in deze DVD titel.\n"
|
#define MSGTR_DVDnumChapters "Er zijn %d hoofdstukken in deze DVD titel.\n"
|
||||||
|
@ -158,7 +158,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Nie mogę zainicjować menu.\n"
|
#define MSGTR_MenuInitFailed "Nie mogę zainicjować menu.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "UWAGA: getch2_init wywołany dwukrotnie!\n"
|
#define MSGTR_Getch2InitializedTwice "UWAGA: getch2_init wywołany dwukrotnie!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Nie mogę zrzucić strumienia - brak deskryptora pliku\n"
|
#define MSGTR_DumpstreamFdUnavailable "Nie mogę zrzucić strumienia - brak deskryptora pliku\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "Próbuję zinterpretować listę odtwarzania %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Nie mogę otworzyć filtru video libmenu z głownym menu %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Nie mogę otworzyć filtru video libmenu z głownym menu %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Błąd preinicjalizacji łańcucha filtru audio!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Błąd preinicjalizacji łańcucha filtru audio!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Błąd odczytu RTC Linuxa : %s\n"
|
#define MSGTR_LinuxRTCReadError "Błąd odczytu RTC Linuxa : %s\n"
|
||||||
@ -513,7 +512,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Nie mogę otworzyć z sieci lokalnej (LAN): '%s'\n"
|
#define MSGTR_SMBFileNotFound "Nie mogę otworzyć z sieci lokalnej (LAN): '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "Brak wkompilowanej obsługi zasobów SMB.\n"
|
#define MSGTR_SMBNotCompiled "Brak wkompilowanej obsługi zasobów SMB.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Nie znaleziono DVD: %s\n"
|
#define MSGTR_CantOpenDVD "Nie znaleziono DVD: %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
#define MSGTR_NoDVDSupport "MPlayer został skompilowany bez obsługi DVD support, wychodzę.\n"
|
#define MSGTR_NoDVDSupport "MPlayer został skompilowany bez obsługi DVD support, wychodzę.\n"
|
||||||
@ -1839,7 +1838,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_RADIO_CaptureStarting "[radio] Zaczynam nagrywanie.\n"
|
#define MSGTR_RADIO_CaptureStarting "[radio] Zaczynam nagrywanie.\n"
|
||||||
#define MSGTR_RADIO_ClearBufferFailed "[radio] Czyszczenie bufora nie powiodło się: %s\n"
|
#define MSGTR_RADIO_ClearBufferFailed "[radio] Czyszczenie bufora nie powiodło się: %s\n"
|
||||||
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Wywołanie stream_enable_cache nie powiodło się: %s\n"
|
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] Wywołanie stream_enable_cache nie powiodło się: %s\n"
|
||||||
#define MSGTR_RADIO_DriverUnknownId "[radio] Nieznany id sterownika: %d\n"
|
|
||||||
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nieznana nazwa sterownika: %s\n"
|
#define MSGTR_RADIO_DriverUnknownStr "[radio] Nieznana nazwa sterownika: %s\n"
|
||||||
#define MSGTR_RADIO_DriverV4L2 "[radio] Używam interfejsu radiowego V4Lv2.\n"
|
#define MSGTR_RADIO_DriverV4L2 "[radio] Używam interfejsu radiowego V4Lv2.\n"
|
||||||
#define MSGTR_RADIO_DriverV4L "[radio] Używam interfejsu radiowego V4Lv1.\n"
|
#define MSGTR_RADIO_DriverV4L "[radio] Używam interfejsu radiowego V4Lv1.\n"
|
||||||
|
@ -228,7 +228,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Impossível abrir da \"lan\": '%s'\n"
|
#define MSGTR_SMBFileNotFound "Impossível abrir da \"lan\": '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer não foi compilado com suporte a leitura de SMB\n"
|
#define MSGTR_SMBNotCompiled "MPlayer não foi compilado com suporte a leitura de SMB\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Impossível abrir dispositivo de DVD: %s\n"
|
#define MSGTR_CantOpenDVD "Impossível abrir dispositivo de DVD: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Existem %d títulos neste DVD.\n"
|
#define MSGTR_DVDnumTitles "Existem %d títulos neste DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Número do título do DVD inválido: %d\n"
|
#define MSGTR_DVDinvalidTitle "Número do título do DVD inválido: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Existem %d capítulos neste título de DVD.\n"
|
#define MSGTR_DVDnumChapters "Existem %d capítulos neste título de DVD.\n"
|
||||||
|
@ -211,7 +211,7 @@ static char help_text[]=
|
|||||||
|
|
||||||
#define MSGTR_SMBFileNotFound "Nu pot deschide de pe LAN: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Nu pot deschide de pe LAN: '%s'\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Nu pot deschide DVD-ul: %s\n"
|
#define MSGTR_CantOpenDVD "Nu pot deschide DVD-ul: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Sunt %d titluri pe acest DVD.\n"
|
#define MSGTR_DVDnumTitles "Sunt %d titluri pe acest DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Numãrul titlului DVD greºit: %d\n"
|
#define MSGTR_DVDinvalidTitle "Numãrul titlului DVD greºit: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Sunt %d capitole în acest titlu.\n"
|
#define MSGTR_DVDnumChapters "Sunt %d capitole în acest titlu.\n"
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Dmitry Baryshkov <mitya@school.ioffe.ru>
|
// Dmitry Baryshkov <mitya@school.ioffe.ru>
|
||||||
// Reworked by: Andrew Savchenko aka Bircoph <Bircoph[at]list[dot]ru>
|
// Reworked by: Andrew Savchenko aka Bircoph <Bircoph[at]list[dot]ru>
|
||||||
|
|
||||||
// Synced with help_mp-en.h: r26067
|
// Synced with help_mp-en.h: r26795
|
||||||
|
|
||||||
// ========================= MPlayer help ===========================
|
// ========================= MPlayer help ===========================
|
||||||
|
|
||||||
@ -1387,7 +1387,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] Внимание! Высота события изменилась! \n"
|
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] Внимание! Высота события изменилась! \n"
|
||||||
|
|
||||||
// ass_font.c
|
// ass_font.c
|
||||||
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] Глиф 0x%X не найден, выбираю шрифт заново для (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] Глиф 0x%X не найден, выбираю еще один шрифт для (%s, %d, %d)\n"
|
||||||
#define MSGTR_LIBASS_GlyphNotFound "[ass] В шрифте не найден глиф 0x%X для (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFound "[ass] В шрифте не найден глиф 0x%X для (%s, %d, %d)\n"
|
||||||
#define MSGTR_LIBASS_ErrorOpeningMemoryFont "[ass] Ошибка открытия шрифта в памяти: %s\n"
|
#define MSGTR_LIBASS_ErrorOpeningMemoryFont "[ass] Ошибка открытия шрифта в памяти: %s\n"
|
||||||
#define MSGTR_LIBASS_NoCharmaps "[ass] шрифт без таблиц символов\n"
|
#define MSGTR_LIBASS_NoCharmaps "[ass] шрифт без таблиц символов\n"
|
||||||
@ -1408,6 +1408,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Джойстик: предупреждение о событии инициализации,\nотеряна синхронизация с драйвером.\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "Джойстик: предупреждение о событии инициализации,\nотеряна синхронизация с драйвером.\n"
|
||||||
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Джойстик: предупреждение о неизвестном типе события %d\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "Джойстик: предупреждение о неизвестном типе события %d\n"
|
||||||
|
|
||||||
|
// appleir.c
|
||||||
|
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Init "Инициализация Apple IR на %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Detect "Обнаружен Apple IR на %s\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_CantOpen "Невозможно открыть устройство Apple IR: %s\n"
|
||||||
|
|
||||||
// input.c
|
// input.c
|
||||||
|
|
||||||
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Слишком много описателей файлов команд,\nне могу зарегистрировать файловый описатель %d.\n"
|
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "Слишком много описателей файлов команд,\nне могу зарегистрировать файловый описатель %d.\n"
|
||||||
@ -2066,6 +2072,7 @@ static char help_text[]=
|
|||||||
"[VO_XV] DOCS/HTML/ru/video.html#xv!\n"\
|
"[VO_XV] DOCS/HTML/ru/video.html#xv!\n"\
|
||||||
"[VO_XV] Другие (не-xv) драйверы ищите в выводе 'mplayer -vo help'.\n"\
|
"[VO_XV] Другие (не-xv) драйверы ищите в выводе 'mplayer -vo help'.\n"\
|
||||||
"[VO_XV] Попробуйте -vo x11.\n"
|
"[VO_XV] Попробуйте -vo x11.\n"
|
||||||
|
#define MSGTR_LIBVO_XV_Adaptor "[VO_XV] Использую Xv Адаптер #%d (%s)\n"
|
||||||
|
|
||||||
//tv.c
|
//tv.c
|
||||||
#define MSGTR_TV_BogusNormParameter "tv.c: norm_from_string(%s): Неизвестный параметр norm, устанавливается %s.\n"
|
#define MSGTR_TV_BogusNormParameter "tv.c: norm_from_string(%s): Неизвестный параметр norm, устанавливается %s.\n"
|
||||||
|
@ -158,7 +158,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Zlyhala inicializácia menu.\n"
|
#define MSGTR_MenuInitFailed "Zlyhala inicializácia menu.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "VAROVANIE: getch2_init je volaná dvakrát!\n"
|
#define MSGTR_Getch2InitializedTwice "VAROVANIE: getch2_init je volaná dvakrát!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Nemôžem uložiť (dump) tento prúd - nie je dostupný žiaden deskriptor súboru.\n"
|
#define MSGTR_DumpstreamFdUnavailable "Nemôžem uložiť (dump) tento prúd - nie je dostupný žiaden deskriptor súboru.\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "Ustupujem od pokusu o spracovanie playlistu %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Nemôžem otvoriť video filter libmenu s koreňovým menu %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Nemôžem otvoriť video filter libmenu s koreňovým menu %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Chyba pri predinicializácii reťazca audio filtrov!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Chyba pri predinicializácii reťazca audio filtrov!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Chyba pri čítaní z Linuxových RTC: %s\n"
|
#define MSGTR_LinuxRTCReadError "Chyba pri čítaní z Linuxových RTC: %s\n"
|
||||||
@ -506,7 +505,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Nemôžem otvoriť z LAN: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Nemôžem otvoriť z LAN: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer mebol skompilovaný s podporou čítania z SMB\n"
|
#define MSGTR_SMBNotCompiled "MPlayer mebol skompilovaný s podporou čítania z SMB\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Nejde otvoriť DVD zariadenie: %s\n"
|
#define MSGTR_CantOpenDVD "Nejde otvoriť DVD zariadenie: %s (%s)\n"
|
||||||
#define MSGTR_NoDVDSupport "MPlayer bol skompilovaný bez podpory DVD, koniec\n"
|
#define MSGTR_NoDVDSupport "MPlayer bol skompilovaný bez podpory DVD, koniec\n"
|
||||||
#define MSGTR_DVDnumTitles "Na tomto DVD je %d titulov.\n"
|
#define MSGTR_DVDnumTitles "Na tomto DVD je %d titulov.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Neplatné číslo DVD titulu: %d\n"
|
#define MSGTR_DVDinvalidTitle "Neplatné číslo DVD titulu: %d\n"
|
||||||
|
@ -156,7 +156,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "Menyinitiering misslyckades.\n"
|
#define MSGTR_MenuInitFailed "Menyinitiering misslyckades.\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "VARNING: getch2_init anropad dubbelt!\n"
|
#define MSGTR_Getch2InitializedTwice "VARNING: getch2_init anropad dubbelt!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "Kan inte dumpa denna ström - ingen 'fd' tillgänglig.\n"
|
#define MSGTR_DumpstreamFdUnavailable "Kan inte dumpa denna ström - ingen 'fd' tillgänglig.\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "Faller tillbaka med att försöka tolka spellista %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Kan inte öppna 'libmenu video filter' med rotmeny %s.\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "Kan inte öppna 'libmenu video filter' med rotmeny %s.\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "Fel vid förinitiering av audiofilter!\n"
|
#define MSGTR_AudioFilterChainPreinitError "Fel vid förinitiering av audiofilter!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "'Linux RTC' läsfel: %s\n"
|
#define MSGTR_LinuxRTCReadError "'Linux RTC' läsfel: %s\n"
|
||||||
@ -441,7 +440,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Kunde inte öppna från LAN: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Kunde inte öppna från LAN: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer var inte kompilerad med SMB-lässtöd.\n"
|
#define MSGTR_SMBNotCompiled "MPlayer var inte kompilerad med SMB-lässtöd.\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Kunde inte öppna DVD-enhet: %s\n"
|
#define MSGTR_CantOpenDVD "Kunde inte öppna DVD-enhet: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Det är %d titlar på denna DVD.\n"
|
#define MSGTR_DVDnumTitles "Det är %d titlar på denna DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Icke godkänt DVD-titelnummer: %d\n"
|
#define MSGTR_DVDinvalidTitle "Icke godkänt DVD-titelnummer: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Der är %d kapitel på denna DVD-titel.\n"
|
#define MSGTR_DVDnumChapters "Der är %d kapitel på denna DVD-titel.\n"
|
||||||
|
@ -603,7 +603,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_FormatNotRecognized "============ Üzgünüm, bu dosya biçimi desteklenmiyor ===========\n"\
|
#define MSGTR_FormatNotRecognized "============ Üzgünüm, bu dosya biçimi desteklenmiyor ===========\n"\
|
||||||
"=== Dosya bir AVI,ASF veya MPEG yayın biçimi ise, lütfen geliştiricilere bildiriniz. ===\n"
|
"=== Dosya bir AVI,ASF veya MPEG yayın biçimi ise, lütfen geliştiricilere bildiriniz. ===\n"
|
||||||
#define MSGTR_SettingProcessPriority "İşlem önceliği ayarlanıyor: %s\n"
|
#define MSGTR_SettingProcessPriority "İşlem önceliği ayarlanıyor: %s\n"
|
||||||
#define MSGTR_FilefmtFourccSizeFpsFtime "[V] filefmt:%d fourcc:0x%X boyut:%dx%d fps:%5.2f ftime:=%6.4f\n"
|
#define MSGTR_FilefmtFourccSizeFpsFtime "[V] filefmt:%d fourcc:0x%X boyut:%dx%d fps:%5.3f ftime:=%6.4f\n"
|
||||||
#define MSGTR_CannotInitializeMuxer "Cannot initialize muxer."
|
#define MSGTR_CannotInitializeMuxer "Cannot initialize muxer."
|
||||||
#define MSGTR_MissingVideoStream "Video yayını bulunamadı!\n"
|
#define MSGTR_MissingVideoStream "Video yayını bulunamadı!\n"
|
||||||
#define MSGTR_MissingAudioStream "Ses yayını bulunamadı... -> ses yok\n"
|
#define MSGTR_MissingAudioStream "Ses yayını bulunamadı... -> ses yok\n"
|
||||||
|
@ -215,7 +215,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "Помилка відкриття з мережі: '%s'\n"
|
#define MSGTR_SMBFileNotFound "Помилка відкриття з мережі: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer не має вкомпільованої підтримки SMB\n"
|
#define MSGTR_SMBNotCompiled "MPlayer не має вкомпільованої підтримки SMB\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "Не зміг відкрити DVD: %s\n"
|
#define MSGTR_CantOpenDVD "Не зміг відкрити DVD: %s (%s)\n"
|
||||||
#define MSGTR_DVDnumTitles "Є %d доріжок з титрами на цьому DVD.\n"
|
#define MSGTR_DVDnumTitles "Є %d доріжок з титрами на цьому DVD.\n"
|
||||||
#define MSGTR_DVDinvalidTitle "Неприпустимий номер доріжки титрів на DVD: %d\n"
|
#define MSGTR_DVDinvalidTitle "Неприпустимий номер доріжки титрів на DVD: %d\n"
|
||||||
#define MSGTR_DVDnumChapters "Є %d розділів на цій доріжці з DVD титрами.\n"
|
#define MSGTR_DVDnumChapters "Є %d розділів на цій доріжці з DVD титрами.\n"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
//Synced with help_mp-en.h r26067 (MSGTR_Exit_SIGILL_RTCpuSel)
|
// Synced with help_mp-en.h r26863 (MSGTR_EdlOutOfMem)
|
||||||
// Reminder of hard terms which need better/final solution later:
|
// Reminder of hard terms which need better/final solution later:
|
||||||
// (file links to be updated later if available!);
|
// (file links to be updated later if available!);
|
||||||
// NAV; section/subsection; XScreenSaver; keycolor;
|
// NAV; section/subsection; XScreenSaver; keycolor;
|
||||||
@ -37,7 +37,7 @@ static char help_text[]=
|
|||||||
" -playlist <文件> 指定播放列表文件\n"
|
" -playlist <文件> 指定播放列表文件\n"
|
||||||
" -vid x -aid y 选择播放视频流(x)和音频流(y)\n"
|
" -vid x -aid y 选择播放视频流(x)和音频流(y)\n"
|
||||||
" -fps x -srate y 改变视频帧率为 x(fps),音频采样率为 y(Hz)\n"
|
" -fps x -srate y 改变视频帧率为 x(fps),音频采样率为 y(Hz)\n"
|
||||||
" -pp <质量> 启用后期处理过滤器/滤镜(详见于手册相关页面)\n"
|
" -pp <质量> 启用后期处理过滤器(详见于手册相关页面)\n"
|
||||||
" -framedrop 启用丢帧(用于运行慢的机器)\n"
|
" -framedrop 启用丢帧(用于运行慢的机器)\n"
|
||||||
"\n"
|
"\n"
|
||||||
"基本控制键: (完整列表见手册相关页面,也请查阅 input.conf)\n"
|
"基本控制键: (完整列表见手册相关页面,也请查阅 input.conf)\n"
|
||||||
@ -137,58 +137,58 @@ static char help_text[]=
|
|||||||
#define MSGTR_PlaylistLoadUnable "\n无法装载播放列表 %s\n"
|
#define MSGTR_PlaylistLoadUnable "\n无法装载播放列表 %s\n"
|
||||||
#define MSGTR_Exit_SIGILL_RTCpuSel \
|
#define MSGTR_Exit_SIGILL_RTCpuSel \
|
||||||
"- “非法指令”导致 MPlayer 崩溃。\n"\
|
"- “非法指令”导致 MPlayer 崩溃。\n"\
|
||||||
" 这可能是我们的新代码中运行时 CPU-检测的一个错误...\n"\
|
" 这可能是我们新的实时 CPU 侦测代码中的一个缺陷...\n"\
|
||||||
" 请阅读 DOCS/zh/bugreports.html。\n"
|
" 请阅读 DOCS/zh/bugreports.html。\n"
|
||||||
#define MSGTR_Exit_SIGILL \
|
#define MSGTR_Exit_SIGILL \
|
||||||
"- “非法指令”导致 MPlayer 崩溃。\n"\
|
"- “非法指令”导致 MPlayer 崩溃。\n"\
|
||||||
" 这通常发生在现在你所运行之上的 CPU 不同于\n"\
|
" 这通常是在你运行 MPlayer 的 CPU 与其\n"\
|
||||||
" 编译/优化时的 CPU 所造成的。\n"\
|
" 编译/优化时所针对的 CPU 不同时发生。\n"\
|
||||||
" 证实它!\n"
|
" 检查是否如此!\n"
|
||||||
#define MSGTR_Exit_SIGSEGV_SIGFPE \
|
#define MSGTR_Exit_SIGSEGV_SIGFPE \
|
||||||
"- 过度使用 CPU/FPU/RAM 导致 MPlayer 崩溃。\n"\
|
"- 不合理使用 CPU/FPU/RAM 导致 MPlayer 崩溃。\n"\
|
||||||
" 使用 --enable-debug 重新编译 MPlayer 并用调试程序“gdb”反跟踪和\n"\
|
" 使用 --enable-debug 重新编译 MPlayer 并建立“gdb”反跟踪和\n"\
|
||||||
" 反汇编。具体细节看 DOCS/zh/bugreports.html#crash。\n"
|
" 反汇编输出。具体细节见 DOCS/zh/bugreports.html#crash。\n"
|
||||||
#define MSGTR_Exit_SIGCRASH \
|
#define MSGTR_Exit_SIGCRASH \
|
||||||
"- MPlayer 崩溃了。这不应该发生。\n"\
|
"- MPlayer 崩溃了。这不应该发生。\n"\
|
||||||
" 这可能是 MPlayer 代码中 _或者_ 你的驱动中 _或者_ 你的 gcc 版本中的一个\n"\
|
" 这可能是 MPlayer 或者 你的驱动中 或者 你的 gcc 版本中的一个缺陷。\n"\
|
||||||
" 错误。如你觉得这是 MPlayer 的错误,请阅读 DOCS/zh/bugreports.html\n"\
|
" 如你觉得这是 MPlayer 的问题,请阅读 DOCS/zh/bugreports.html\n"\
|
||||||
" 并遵循上面的步骤报告错误。除非你在报告一个可能的错误时候提供我们\n"\
|
" 并遵循其中的指示去做。除非你在报告一个潜在的缺陷时候提供我们\n"\
|
||||||
" 所需要的信息, 否则我们不能也不会帮助你。\n"
|
" 所需要的信息,否则我们不能也不会帮助你。\n"
|
||||||
#define MSGTR_LoadingConfig "正在装载配置文件 '%s'\n"
|
#define MSGTR_LoadingConfig "正在加载配置 '%s'\n"
|
||||||
#define MSGTR_LoadingProtocolProfile "加载协议的相关配置集‘%s’\n"
|
#define MSGTR_LoadingProtocolProfile "加载协议相关的配置集‘%s’\n"
|
||||||
#define MSGTR_LoadingExtensionProfile "加载扩展组件的相关配置集‘%s’\n"
|
#define MSGTR_LoadingExtensionProfile "加载扩展组件相关的配置集‘%s’\n"
|
||||||
#define MSGTR_AddedSubtitleFile "字幕: 添加字幕文件 (%d): %s\n"
|
#define MSGTR_AddedSubtitleFile "字幕:添加字幕文件(%d):%s\n"
|
||||||
#define MSGTR_RemovedSubtitleFile "字幕: 删除字幕文件 (%d): %s\n"
|
#define MSGTR_RemovedSubtitleFile "字幕:移除字幕文件(%d): %s\n"
|
||||||
#define MSGTR_ErrorOpeningOutputFile "打开写入文件 [%s] 失败!\n"
|
#define MSGTR_ErrorOpeningOutputFile "以写入方式打开文件 [%s] 失败!\n"
|
||||||
#define MSGTR_CommandLine "命令行: "
|
#define MSGTR_CommandLine "命令行:"
|
||||||
#define MSGTR_RTCDeviceNotOpenable "打开 %s 失败: %s (此文件应该能被用户读取。)\n"
|
#define MSGTR_RTCDeviceNotOpenable "打开 %s 失败:%s(用户应当有权限读取该设备。)\n"
|
||||||
#define MSGTR_LinuxRTCInitErrorIrqpSet "Linux RTC 初始化错误在 ioctl (rtc_irqp_set %lu): %s\n"
|
#define MSGTR_LinuxRTCInitErrorIrqpSet "ioctl (rtc_irqp_set %lu) 中出现 Linux RTC 初始化错误:%s\n"
|
||||||
#define MSGTR_IncreaseRTCMaxUserFreq "试图添加 \"echo %lu > /proc/sys/dev/rtc/max-user-freq\" 到你的系统启动脚本。\n"
|
#define MSGTR_IncreaseRTCMaxUserFreq "尝试添加 \"echo %lu > /proc/sys/dev/rtc/max-user-freq\" 到你的系统启动脚本中。\n"
|
||||||
#define MSGTR_LinuxRTCInitErrorPieOn "Linux RTC 初始化错误在 ioctl (rtc_pie_on): %s\n"
|
#define MSGTR_LinuxRTCInitErrorPieOn "ioctl (rtc_pie_on) 中出现 Linux RTC 初始化错误:%s\n"
|
||||||
#define MSGTR_UsingTimingType "正在使用 %s 计时。\n"
|
#define MSGTR_UsingTimingType "正在使用 %s 计时。\n"
|
||||||
#define MSGTR_NoIdleAndGui "GMPLayer 不能使用选项 -idle。\n"
|
#define MSGTR_NoIdleAndGui "GMPLayer 不能使用选项 -idle。\n"
|
||||||
#define MSGTR_MenuInitialized "菜单已初始化: %s\n"
|
#define MSGTR_MenuInitialized "菜单已初始化:%s\n"
|
||||||
#define MSGTR_MenuInitFailed "菜单初始化失败。\n"
|
#define MSGTR_MenuInitFailed "菜单初始化失败。\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "警告: getch2_init 被调用两次!\n"
|
#define MSGTR_Getch2InitializedTwice "警告:getch2_init 被两次调用!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "无法转储此流 - 没有可用的文件描述符。\n"
|
#define MSGTR_DumpstreamFdUnavailable "无法导出该数据流 - 没有可用的文件描述符。\n"
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "不能用根菜单 %s 打开 libmenu 视频过滤器。\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "不能用根菜单 %s 打开 libmenu 视频过滤器。\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "音频过滤器链预启动错误!\n"
|
#define MSGTR_AudioFilterChainPreinitError "音频过滤器链预初始化错误!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Linux RTC 读取错误: %s\n"
|
#define MSGTR_LinuxRTCReadError "Linux RTC 读取错误:%s\n"
|
||||||
#define MSGTR_SoftsleepUnderflow "警告! Softsleep 向下溢出!\n"
|
#define MSGTR_SoftsleepUnderflow "警告!Softsleep 数值下溢!\n"
|
||||||
#define MSGTR_DvdnavNullEvent "DVDNAV 事件为空?!\n"
|
#define MSGTR_DvdnavNullEvent "DVDNAV 事件为空?!\n"
|
||||||
#define MSGTR_DvdnavHighlightEventBroken "DVDNAV 事件: 高亮事件损坏\n"
|
#define MSGTR_DvdnavHighlightEventBroken "DVDNAV 事件:重要事件损坏\n"
|
||||||
#define MSGTR_DvdnavEvent "DVDNAV 事件: %s\n"
|
#define MSGTR_DvdnavEvent "DVDNAV 事件:%s\n"
|
||||||
#define MSGTR_DvdnavHighlightHide "DVDNAV 事件: 高亮隐藏\n"
|
#define MSGTR_DvdnavHighlightHide "DVDNAV 事件:重要事件隐藏\n"
|
||||||
#define MSGTR_DvdnavStillFrame "######################################## DVDNAV 事件: 静止帧: %d秒\n"
|
#define MSGTR_DvdnavStillFrame "######################################## DVDNAV 事件:静止帧:%d 秒\n"
|
||||||
#define MSGTR_DvdnavNavStop "DVDNAV 事件: Nav停止\n"
|
#define MSGTR_DvdnavNavStop "DVDNAV 事件:Nav 停止\n"
|
||||||
#define MSGTR_DvdnavNavNOP "DVDNAV 事件: Nav无操作\n"
|
#define MSGTR_DvdnavNavNOP "DVDNAV 事件:Nav 无操作\n"
|
||||||
#define MSGTR_DvdnavNavSpuStreamChangeVerbose "DVDNAV 事件: Nav SPU 流改变: 物理: %d/%d/%d 逻辑: %d\n"
|
#define MSGTR_DvdnavNavSpuStreamChangeVerbose "DVDNAV 事件:Nav SPU 数据流切换:物理位置:%d/%d/%d 逻辑位置:%d\n"
|
||||||
#define MSGTR_DvdnavNavSpuStreamChange "DVDNAV 事件: Nav SPU 流改变: 物理: %d 逻辑: %d\n"
|
#define MSGTR_DvdnavNavSpuStreamChange "DVDNAV 事件:Nav SPU 数据流切换:物理位置:%d 逻辑位置:%d\n"
|
||||||
#define MSGTR_DvdnavNavAudioStreamChange "DVDNAV 事件: Nav 音频流改变: 物理: %d 逻辑: %d\n"
|
#define MSGTR_DvdnavNavAudioStreamChange "DVDNAV 事件:Nav 音频流切换:物理位置:%d 逻辑位置:%d\n"
|
||||||
#define MSGTR_DvdnavNavVTSChange "DVDNAV 事件: Nav VTS 改变\n"
|
#define MSGTR_DvdnavNavVTSChange "DVDNAV 事件:Nav VTS 切换\n"
|
||||||
#define MSGTR_DvdnavNavCellChange "DVDNAV 事件: Nav Cell 改变\n"
|
#define MSGTR_DvdnavNavCellChange "DVDNAV 事件:Nav Cell 切换\n"
|
||||||
#define MSGTR_DvdnavNavSpuClutChange "DVDNAV 事件: Nav SPU CLUT 改变\n"
|
#define MSGTR_DvdnavNavSpuClutChange "DVDNAV 事件:Nav SPU CLUT 切换\n"
|
||||||
#define MSGTR_DvdnavNavSeekDone "DVDNAV 事件: Nav 搜寻完成\n"
|
#define MSGTR_DvdnavNavSeekDone "DVDNAV 事件:Nav 定位完成\n"
|
||||||
#define MSGTR_MenuCall "菜单调用\n"
|
#define MSGTR_MenuCall "菜单调用\n"
|
||||||
|
|
||||||
#define MSGTR_EdlOutOfMem "不能分配足够的内存来保持 EDL 数据。\n"
|
#define MSGTR_EdlOutOfMem "不能分配足够的内存来保持 EDL 数据。\n"
|
||||||
@ -1290,6 +1290,12 @@ static char help_text[]=
|
|||||||
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "操纵杆: 警告初始事件, 失去了和驱动的同步。\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnLostSync "操纵杆: 警告初始事件, 失去了和驱动的同步。\n"
|
||||||
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "操作杆警告未知事件类型%d\n"
|
#define MSGTR_INPUT_JOYSTICK_WarnUnknownEvent "操作杆警告未知事件类型%d\n"
|
||||||
|
|
||||||
|
// appleir.c
|
||||||
|
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Init "在设备 %s 上初始化 Apple IR\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_Detect "在设备 %s 上侦测到 Apple IR\n"
|
||||||
|
#define MSGTR_INPUT_APPLE_IR_CantOpen "无法打开 Apple IR 设备:%s\n"
|
||||||
|
|
||||||
// input.c
|
// input.c
|
||||||
|
|
||||||
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "命令文件描述符太多, 不能注册文件描述符 %d。\n"
|
#define MSGTR_INPUT_INPUT_ErrCantRegister2ManyCmdFds "命令文件描述符太多, 不能注册文件描述符 %d。\n"
|
||||||
@ -1700,6 +1706,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] 你的 mga_vid 驱动版本与 MPlayer 的版本不兼容!\n"
|
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] 你的 mga_vid 驱动版本与 MPlayer 的版本不兼容!\n"
|
||||||
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] 打不开: %s\n"
|
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] 打不开: %s\n"
|
||||||
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] 原分辨率至少有一维大于 1023x1023。请用软件或用 -lavdopts lowres=1 重新缩放\n"
|
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] 原分辨率至少有一维大于 1023x1023。请用软件或用 -lavdopts lowres=1 重新缩放\n"
|
||||||
|
#define MGSTR_LIBVO_MGA_mgavidVersionMismatch "[MGA] mga_vid 驱动的版本号(%u)与 MPlayer 编译时植入的不符(%u)\n"
|
||||||
|
|
||||||
// libvo/vesa_lvo.c
|
// libvo/vesa_lvo.c
|
||||||
|
|
||||||
@ -1948,6 +1955,7 @@ static char help_text[]=
|
|||||||
"[VO_XV] DOCS/HTML/en/video.html#xv!\n"\
|
"[VO_XV] DOCS/HTML/en/video.html#xv!\n"\
|
||||||
"[VO_XV] 请参见 'mplayer -vo help' 找其它 (非-xv) 视频输出驱动。\n"\
|
"[VO_XV] 请参见 'mplayer -vo help' 找其它 (非-xv) 视频输出驱动。\n"\
|
||||||
"[VO_XV] 试试 -vo x11.\n"
|
"[VO_XV] 试试 -vo x11.\n"
|
||||||
|
#define MSGTR_LIBVO_XV_Adaptor "[VO_XV] 使用 Xv 转换器 #%d(%s)\n"
|
||||||
|
|
||||||
|
|
||||||
// loader/ldt_keeper.c
|
// loader/ldt_keeper.c
|
||||||
@ -2028,7 +2036,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBASS_ErrorOpeningFont "[ass] 打开字体出错: %s, %d\n"
|
#define MSGTR_LIBASS_ErrorOpeningFont "[ass] 打开字体出错: %s, %d\n"
|
||||||
|
|
||||||
// ass_fontconfig.c
|
// ass_fontconfig.c
|
||||||
#define MSGTR_LIBASS_SelectedFontFamilyIsNotTheRequestedOne "[ass] fontconfig: 选中的字体家族不是要求的: '%s' != '%s'\n"
|
#define MSGTR_LIBASS_SelectedFontFamilyIsNotTheRequestedOne "[ass] fontconfig:所选字体不是所要求使用的:'%s' != '%s'\n"
|
||||||
#define MSGTR_LIBASS_UsingDefaultFontFamily "[ass] fontconfig_select: 使用缺省字体家族: (%s, %d, %d) -> %s, %d\n"
|
#define MSGTR_LIBASS_UsingDefaultFontFamily "[ass] fontconfig_select: 使用缺省字体家族: (%s, %d, %d) -> %s, %d\n"
|
||||||
#define MSGTR_LIBASS_UsingDefaultFont "[ass] fontconfig_select: 使用缺省字体: (%s, %d, %d) -> %s, %d\n"
|
#define MSGTR_LIBASS_UsingDefaultFont "[ass] fontconfig_select: 使用缺省字体: (%s, %d, %d) -> %s, %d\n"
|
||||||
#define MSGTR_LIBASS_UsingArialFontFamily "[ass] fontconfig_select: 使用 'Arial' 字体家族: (%s, %d, %d) -> %s, %d\n"
|
#define MSGTR_LIBASS_UsingArialFontFamily "[ass] fontconfig_select: 使用 'Arial' 字体家族: (%s, %d, %d) -> %s, %d\n"
|
||||||
@ -2059,7 +2067,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] 警告! 事件高度(height) 已改变! \n"
|
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] 警告! 事件高度(height) 已改变! \n"
|
||||||
|
|
||||||
// ass_font.c
|
// ass_font.c
|
||||||
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] 字形 0x%X 未找到, 重新选择字体 (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] 字形 0x%X 未找到,为 (%s, %d, %d) 选择另一种字体\n"
|
||||||
#define MSGTR_LIBASS_GlyphNotFound "[ass] 字形 0x%X 未在字体中找到 (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFound "[ass] 字形 0x%X 未在字体中找到 (%s, %d, %d)\n"
|
||||||
#define MSGTR_LIBASS_ErrorOpeningMemoryFont "[ass] 打开内存字体出错: %s\n"
|
#define MSGTR_LIBASS_ErrorOpeningMemoryFont "[ass] 打开内存字体出错: %s\n"
|
||||||
#define MSGTR_LIBASS_NoCharmaps "[ass] 字体缺少字符映射表\n"
|
#define MSGTR_LIBASS_NoCharmaps "[ass] 字体缺少字符映射表\n"
|
||||||
|
@ -162,7 +162,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_MenuInitFailed "菜單初始化失敗。\n"
|
#define MSGTR_MenuInitFailed "菜單初始化失敗。\n"
|
||||||
#define MSGTR_Getch2InitializedTwice "警告: getch2_init 被調用兩次!\n"
|
#define MSGTR_Getch2InitializedTwice "警告: getch2_init 被調用兩次!\n"
|
||||||
#define MSGTR_DumpstreamFdUnavailable "無法轉儲此流 - 没有可用的文件描述符。\n"
|
#define MSGTR_DumpstreamFdUnavailable "無法轉儲此流 - 没有可用的文件描述符。\n"
|
||||||
#define MSGTR_FallingBackOnPlaylist "回退到試着解析播放列表 %s...\n"
|
|
||||||
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "不能用根菜單 %s 打開 libmenu 視頻過濾器。\n"
|
#define MSGTR_CantOpenLibmenuFilterWithThisRootMenu "不能用根菜單 %s 打開 libmenu 視頻過濾器。\n"
|
||||||
#define MSGTR_AudioFilterChainPreinitError "音頻過濾器鏈預啟動錯誤!\n"
|
#define MSGTR_AudioFilterChainPreinitError "音頻過濾器鏈預啟動錯誤!\n"
|
||||||
#define MSGTR_LinuxRTCReadError "Linux RTC 讀取錯誤: %s\n"
|
#define MSGTR_LinuxRTCReadError "Linux RTC 讀取錯誤: %s\n"
|
||||||
@ -522,7 +521,7 @@ static char help_text[]=
|
|||||||
#define MSGTR_SMBFileNotFound "打不開局域網内的: '%s'\n"
|
#define MSGTR_SMBFileNotFound "打不開局域網内的: '%s'\n"
|
||||||
#define MSGTR_SMBNotCompiled "MPlayer 没有編譯成支持 SMB 的讀取。\n"
|
#define MSGTR_SMBNotCompiled "MPlayer 没有編譯成支持 SMB 的讀取。\n"
|
||||||
|
|
||||||
#define MSGTR_CantOpenDVD "打不開 DVD 設備: %s\n"
|
#define MSGTR_CantOpenDVD "打不開 DVD 設備: %s (%s)\n"
|
||||||
|
|
||||||
// stream_dvd.c
|
// stream_dvd.c
|
||||||
#define MSGTR_DVDspeedCantOpen "不能以寫方式打開DVD設備, 改變DVD速度需要寫方式。\n"
|
#define MSGTR_DVDspeedCantOpen "不能以寫方式打開DVD設備, 改變DVD速度需要寫方式。\n"
|
||||||
@ -1189,8 +1188,6 @@ static char help_text[]=
|
|||||||
"[AO_ALSA] device=<device-name>\n"\
|
"[AO_ALSA] device=<device-name>\n"\
|
||||||
"[AO_ALSA] 設置設備 (change , to . and : to =)\n"
|
"[AO_ALSA] 設置設備 (change , to . and : to =)\n"
|
||||||
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] %d 聲道不被支持。\n"
|
#define MSGTR_AO_ALSA_ChannelsNotSupported "[AO_ALSA] %d 聲道不被支持。\n"
|
||||||
#define MSGTR_AO_ALSA_CannotReadAlsaConfiguration "[AO_ALSA] 不能讀取 ALSA 配置: %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_CannotCopyConfiguration "[AO_ALSA] 不能拷貝配置: %s\n"
|
|
||||||
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] 打開 nonblock-模式 失敗, 試着打開 block-模式。\n"
|
#define MSGTR_AO_ALSA_OpenInNonblockModeFailed "[AO_ALSA] 打開 nonblock-模式 失敗, 試着打開 block-模式。\n"
|
||||||
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] 回放打開錯誤: %s\n"
|
#define MSGTR_AO_ALSA_PlaybackOpenError "[AO_ALSA] 回放打開錯誤: %s\n"
|
||||||
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] 錯誤設置 block-模式 %s。\n"
|
#define MSGTR_AO_ALSA_ErrorSetBlockMode "[AL_ALSA] 錯誤設置 block-模式 %s。\n"
|
||||||
@ -1955,7 +1952,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_RADIO_CaptureStarting "[radio] 開始捕獲。\n"
|
#define MSGTR_RADIO_CaptureStarting "[radio] 開始捕獲。\n"
|
||||||
#define MSGTR_RADIO_ClearBufferFailed "[radio] 清空緩衝失敗: %s\n"
|
#define MSGTR_RADIO_ClearBufferFailed "[radio] 清空緩衝失敗: %s\n"
|
||||||
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] 調用 stream_enable_cache 失敗: %s\n"
|
#define MSGTR_RADIO_StreamEnableCacheFailed "[radio] 調用 stream_enable_cache 失敗: %s\n"
|
||||||
#define MSGTR_RADIO_DriverUnknownId "[radio] 未知驅動號: %d\n"
|
|
||||||
#define MSGTR_RADIO_DriverUnknownStr "[radio] 未知驅動名: %s\n"
|
#define MSGTR_RADIO_DriverUnknownStr "[radio] 未知驅動名: %s\n"
|
||||||
#define MSGTR_RADIO_DriverV4L2 "[radio] 使用 V4Lv2 廣播接口。\n"
|
#define MSGTR_RADIO_DriverV4L2 "[radio] 使用 V4Lv2 廣播接口。\n"
|
||||||
#define MSGTR_RADIO_DriverV4L "[radio] 使用 V4Lv1 廣播接口。\n"
|
#define MSGTR_RADIO_DriverV4L "[radio] 使用 V4Lv1 廣播接口。\n"
|
||||||
@ -2018,7 +2014,6 @@ static char help_text[]=
|
|||||||
#define MSGTR_LIBASS_EmptyEvent "[ass] 空事件!\n"
|
#define MSGTR_LIBASS_EmptyEvent "[ass] 空事件!\n"
|
||||||
#define MSGTR_LIBASS_MAX_GLYPHS_Reached "[ass] 達到了字形最大值: 事件 %d, 開始 = %llu, 時長 = %llu\n 文本 = %s\n"
|
#define MSGTR_LIBASS_MAX_GLYPHS_Reached "[ass] 達到了字形最大值: 事件 %d, 開始 = %llu, 時長 = %llu\n 文本 = %s\n"
|
||||||
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] 警告! 事件高度(height) 已改變! \n"
|
#define MSGTR_LIBASS_EventHeightHasChanged "[ass] 警告! 事件高度(height) 已改變! \n"
|
||||||
#define MSGTR_LIBASS_TooManySimultaneousEvents "[ass] 過多同時的事件!\n"
|
|
||||||
|
|
||||||
// ass_font.c
|
// ass_font.c
|
||||||
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] 字形 0x%X 未找到, 重新選擇字體 (%s, %d, %d)\n"
|
#define MSGTR_LIBASS_GlyphNotFoundReselectingFont "[ass] 字形 0x%X 未找到, 重新選擇字體 (%s, %d, %d)\n"
|
||||||
|
152
input/appleir.c
Normal file
152
input/appleir.c
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
/*
|
||||||
|
* Linux Apple IR Remote input interface
|
||||||
|
*
|
||||||
|
* Copyright (C) 2008 Benjamin Zores <ben at geexbox dot org>
|
||||||
|
*
|
||||||
|
* This file is part of MPlayer.
|
||||||
|
*
|
||||||
|
* MPlayer 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.
|
||||||
|
*
|
||||||
|
* MPlayer 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 MPlayer; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "ar.h"
|
||||||
|
#include "input.h"
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <errno.h>
|
||||||
|
|
||||||
|
#include <linux/types.h>
|
||||||
|
#include <linux/input.h>
|
||||||
|
|
||||||
|
#include "mp_msg.h"
|
||||||
|
#include "help_mp.h"
|
||||||
|
|
||||||
|
#define EVDEV_MAX_EVENTS 32
|
||||||
|
|
||||||
|
/* ripped from AppleIR driver */
|
||||||
|
#define USB_VENDOR_APPLE 0x05ac
|
||||||
|
#define USB_DEV_APPLE_IR 0x8240
|
||||||
|
#define USB_DEV_APPLE_IR_2 0x8242
|
||||||
|
|
||||||
|
/* Apple IR Remote evdev mapping */
|
||||||
|
#define APPLE_IR_MINUS KEY_VOLUMEDOWN
|
||||||
|
#define APPLE_IR_PLUS KEY_VOLUMEUP
|
||||||
|
#define APPLE_IR_MENU KEY_MENU
|
||||||
|
#define APPLE_IR_FORWARD KEY_NEXTSONG
|
||||||
|
#define APPLE_IR_PLAY KEY_PLAYPAUSE
|
||||||
|
#define APPLE_IR_BACKWARD KEY_PREVIOUSSONG
|
||||||
|
|
||||||
|
static const struct {
|
||||||
|
int linux_keycode;
|
||||||
|
int value;
|
||||||
|
int mp_keycode;
|
||||||
|
} apple_ir_mapping[] = {
|
||||||
|
{ APPLE_IR_PLAY, 1, AR_PLAY },
|
||||||
|
{ APPLE_IR_PLAY, 2, AR_PLAY_HOLD },
|
||||||
|
{ APPLE_IR_FORWARD, 1, AR_NEXT },
|
||||||
|
{ APPLE_IR_FORWARD, 2, AR_NEXT_HOLD },
|
||||||
|
{ APPLE_IR_BACKWARD, 1, AR_PREV },
|
||||||
|
{ APPLE_IR_BACKWARD, 2, AR_PREV_HOLD },
|
||||||
|
{ APPLE_IR_MENU, 1, AR_MENU },
|
||||||
|
{ APPLE_IR_MENU, 2, AR_MENU_HOLD },
|
||||||
|
{ APPLE_IR_PLUS, 1, AR_VUP },
|
||||||
|
{ APPLE_IR_MINUS, 1, AR_VDOWN },
|
||||||
|
{ -1, -1, -1 }
|
||||||
|
};
|
||||||
|
|
||||||
|
int mp_input_appleir_init (char *dev)
|
||||||
|
{
|
||||||
|
int i, fd;
|
||||||
|
|
||||||
|
if (dev)
|
||||||
|
{
|
||||||
|
mp_msg (MSGT_INPUT, MSGL_V, MSGTR_INPUT_APPLE_IR_Init, dev);
|
||||||
|
fd = open (dev, O_RDONLY | O_NONBLOCK);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
mp_msg (MSGT_INPUT, MSGL_ERR,
|
||||||
|
MSGTR_INPUT_APPLE_IR_CantOpen, strerror (errno));
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return fd;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* look for a valid AppleIR device on system */
|
||||||
|
for (i = 0; i < EVDEV_MAX_EVENTS; i++)
|
||||||
|
{
|
||||||
|
struct input_id id;
|
||||||
|
char file[64];
|
||||||
|
|
||||||
|
sprintf (file, "/dev/input/event%d", i);
|
||||||
|
fd = open (file, O_RDONLY | O_NONBLOCK);
|
||||||
|
if (fd < 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
ioctl (fd, EVIOCGID, &id);
|
||||||
|
if (id.bustype == BUS_USB &&
|
||||||
|
id.vendor == USB_VENDOR_APPLE &&
|
||||||
|
(id.product == USB_DEV_APPLE_IR ||id.product == USB_DEV_APPLE_IR_2))
|
||||||
|
{
|
||||||
|
mp_msg (MSGT_INPUT, MSGL_V, MSGTR_INPUT_APPLE_IR_Detect, file);
|
||||||
|
return fd;
|
||||||
|
}
|
||||||
|
close (fd);
|
||||||
|
}
|
||||||
|
|
||||||
|
mp_msg (MSGT_INPUT, MSGL_ERR,
|
||||||
|
MSGTR_INPUT_APPLE_IR_CantOpen, strerror (errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int mp_input_appleir_read(void *ctx, int fd)
|
||||||
|
{
|
||||||
|
struct input_event ev;
|
||||||
|
int i, r;
|
||||||
|
|
||||||
|
r = read (fd, &ev, sizeof (struct input_event));
|
||||||
|
if (r <= 0 || r < sizeof (struct input_event))
|
||||||
|
return MP_INPUT_NOTHING;
|
||||||
|
|
||||||
|
/* check for key press only */
|
||||||
|
if (ev.type != EV_KEY)
|
||||||
|
return MP_INPUT_NOTHING;
|
||||||
|
|
||||||
|
/* EvDev Key values:
|
||||||
|
* 0: key release
|
||||||
|
* 1: key press
|
||||||
|
* 2: key auto-repeat
|
||||||
|
*/
|
||||||
|
if (ev.value == 0)
|
||||||
|
return MP_INPUT_NOTHING;
|
||||||
|
|
||||||
|
/* find Linux evdev -> MPlayer keycode mapping */
|
||||||
|
for (i = 0; apple_ir_mapping[i].linux_keycode != -1; i++)
|
||||||
|
if (apple_ir_mapping[i].linux_keycode == ev.code &&
|
||||||
|
apple_ir_mapping[i].value == ev.value)
|
||||||
|
return apple_ir_mapping[i].mp_keycode;
|
||||||
|
|
||||||
|
return MP_INPUT_NOTHING;
|
||||||
|
}
|
@ -35,8 +35,13 @@
|
|||||||
#define AR_VUP (AR_BASE + 8)
|
#define AR_VUP (AR_BASE + 8)
|
||||||
#define AR_VDOWN (AR_BASE + 9)
|
#define AR_VDOWN (AR_BASE + 9)
|
||||||
|
|
||||||
|
/* MacOSX Driver */
|
||||||
int mp_input_ar_init(void);
|
int mp_input_ar_init(void);
|
||||||
int mp_input_ar_read(void *ctx, int fd);
|
int mp_input_ar_read(void *ctx, int fd);
|
||||||
void mp_input_ar_close(int fd);
|
void mp_input_ar_close(int fd);
|
||||||
|
|
||||||
|
/* Linux Driver */
|
||||||
|
int mp_input_appleir_init(char* dev);
|
||||||
|
int mp_input_appleir_read(void *ctx, int fd);
|
||||||
|
|
||||||
#endif /* MPLAYER_AR_H */
|
#endif /* MPLAYER_AR_H */
|
||||||
|
@ -75,6 +75,7 @@ static const mp_cmd_t mp_cmds[] = {
|
|||||||
{ MP_CMD_SPEED_MULT, "speed_mult", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } },
|
{ MP_CMD_SPEED_MULT, "speed_mult", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } },
|
||||||
{ MP_CMD_SPEED_SET, "speed_set", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } },
|
{ MP_CMD_SPEED_SET, "speed_set", 1, { {MP_CMD_ARG_FLOAT,{0}}, {-1,{0}} } },
|
||||||
{ MP_CMD_QUIT, "quit", 0, { {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
|
{ MP_CMD_QUIT, "quit", 0, { {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
|
||||||
|
{ MP_CMD_STOP, "stop", 0, { {-1,{0}} } },
|
||||||
{ MP_CMD_PAUSE, "pause", 0, { {-1,{0}} } },
|
{ MP_CMD_PAUSE, "pause", 0, { {-1,{0}} } },
|
||||||
{ MP_CMD_FRAME_STEP, "frame_step", 0, { {-1,{0}} } },
|
{ MP_CMD_FRAME_STEP, "frame_step", 0, { {-1,{0}} } },
|
||||||
{ MP_CMD_PLAY_TREE_STEP, "pt_step",1, { { MP_CMD_ARG_INT ,{0}}, { MP_CMD_ARG_INT ,{0}}, {-1,{0}} } },
|
{ MP_CMD_PLAY_TREE_STEP, "pt_step",1, { { MP_CMD_ARG_INT ,{0}}, { MP_CMD_ARG_INT ,{0}}, {-1,{0}} } },
|
||||||
@ -484,6 +485,7 @@ static const mp_cmd_bind_t def_cmd_binds[] = {
|
|||||||
{ { '!', 0 }, "seek_chapter -1" },
|
{ { '!', 0 }, "seek_chapter -1" },
|
||||||
{ { '@', 0 }, "seek_chapter 1" },
|
{ { '@', 0 }, "seek_chapter 1" },
|
||||||
{ { 'A', 0 }, "switch_angle 1" },
|
{ { 'A', 0 }, "switch_angle 1" },
|
||||||
|
{ { 'U', 0 }, "stop" },
|
||||||
|
|
||||||
{ { 0 }, NULL }
|
{ { 0 }, NULL }
|
||||||
};
|
};
|
||||||
@ -599,6 +601,7 @@ static const m_option_t input_conf[] = {
|
|||||||
{ "keylist", print_key_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL },
|
{ "keylist", print_key_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL },
|
||||||
{ "cmdlist", print_cmd_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL },
|
{ "cmdlist", print_cmd_list, CONF_TYPE_FUNC, CONF_GLOBAL, 0, 0, NULL },
|
||||||
OPT_STRING("js-dev", input.js_dev, CONF_GLOBAL),
|
OPT_STRING("js-dev", input.js_dev, CONF_GLOBAL),
|
||||||
|
OPT_STRING("ar-dev", input.ar_dev, CONF_GLOBAL),
|
||||||
OPT_STRING("file", input.in_file, CONF_GLOBAL),
|
OPT_STRING("file", input.in_file, CONF_GLOBAL),
|
||||||
{ NULL, NULL, 0, 0, 0, 0, NULL}
|
{ NULL, NULL, 0, 0, 0, 0, NULL}
|
||||||
};
|
};
|
||||||
@ -1741,6 +1744,17 @@ struct input_ctx *mp_input_init(struct input_conf *input_conf, int use_gui)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_APPLE_IR
|
||||||
|
if (input_conf->use_ar) {
|
||||||
|
int fd = mp_input_appleir_init(input_conf->ar_dev);
|
||||||
|
if(fd < 0)
|
||||||
|
mp_msg(MSGT_INPUT,MSGL_ERR,MSGTR_INPUT_INPUT_ErrCantInitAppleRemote);
|
||||||
|
else
|
||||||
|
mp_input_add_key_fd(ictx, fd, 1, mp_input_appleir_read,
|
||||||
|
(mp_close_func_t)close, NULL);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (input_conf->in_file) {
|
if (input_conf->in_file) {
|
||||||
struct stat st;
|
struct stat st;
|
||||||
if (stat(input_conf->in_file, &st))
|
if (stat(input_conf->in_file, &st))
|
||||||
|
@ -109,6 +109,7 @@
|
|||||||
#define MP_CMD_SWITCH_ANGLE 105
|
#define MP_CMD_SWITCH_ANGLE 105
|
||||||
#define MP_CMD_ASS_USE_MARGINS 106
|
#define MP_CMD_ASS_USE_MARGINS 106
|
||||||
#define MP_CMD_SWITCH_TITLE 107
|
#define MP_CMD_SWITCH_TITLE 107
|
||||||
|
#define MP_CMD_STOP 108
|
||||||
|
|
||||||
#define MP_CMD_GUI_EVENTS 5000
|
#define MP_CMD_GUI_EVENTS 5000
|
||||||
#define MP_CMD_GUI_LOADFILE 5001
|
#define MP_CMD_GUI_LOADFILE 5001
|
||||||
|
@ -120,9 +120,9 @@ int mp_input_joystick_read(void *ctx, int fd) {
|
|||||||
btns &= ~(1 << ev.number);
|
btns &= ~(1 << ev.number);
|
||||||
btns |= (ev.value << ev.number);
|
btns |= (ev.value << ev.number);
|
||||||
if(ev.value == 1)
|
if(ev.value == 1)
|
||||||
return ((JOY_BTN0+ev.number) | MP_KEY_DOWN);
|
return (JOY_BTN0 + ev.number) | MP_KEY_DOWN;
|
||||||
else
|
else
|
||||||
return (JOY_BTN0+ev.number);
|
return JOY_BTN0 + ev.number;
|
||||||
} else if(ev.type & JS_EVENT_AXIS) {
|
} else if(ev.type & JS_EVENT_AXIS) {
|
||||||
if(ev.value < -JOY_AXIS_DELTA && axis[ev.number] != -1) {
|
if(ev.value < -JOY_AXIS_DELTA && axis[ev.number] != -1) {
|
||||||
axis[ev.number] = -1;
|
axis[ev.number] = -1;
|
||||||
|
@ -382,10 +382,10 @@ void imdct_do_512 (sample_t * data, sample_t * delay, sample_t bias)
|
|||||||
#define WORD_s2 0x18,0x19,0x1a,0x1b
|
#define WORD_s2 0x18,0x19,0x1a,0x1b
|
||||||
#define WORD_s3 0x1c,0x1d,0x1e,0x1f
|
#define WORD_s3 0x1c,0x1d,0x1e,0x1f
|
||||||
|
|
||||||
#ifdef __APPLE_CC__
|
#ifdef HAVE_ALTIVEC_VECTOR_BRACES
|
||||||
#define AVV(x...) (x)
|
|
||||||
#else
|
|
||||||
#define AVV(x...) {x}
|
#define AVV(x...) {x}
|
||||||
|
#else
|
||||||
|
#define AVV(x...) (x)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define vcprm(a,b,c,d) (const vector unsigned char)AVV(WORD_ ## a, WORD_ ## b, WORD_ ## c, WORD_ ## d)
|
#define vcprm(a,b,c,d) (const vector unsigned char)AVV(WORD_ ## a, WORD_ ## b, WORD_ ## c, WORD_ ## d)
|
||||||
|
@ -1563,10 +1563,10 @@
|
|||||||
+#define WORD_s2 0x18,0x19,0x1a,0x1b
|
+#define WORD_s2 0x18,0x19,0x1a,0x1b
|
||||||
+#define WORD_s3 0x1c,0x1d,0x1e,0x1f
|
+#define WORD_s3 0x1c,0x1d,0x1e,0x1f
|
||||||
+
|
+
|
||||||
+#ifdef __APPLE_CC__
|
+#ifdef HAVE_ALTIVEC_VECTOR_BRACES
|
||||||
+#define AVV(x...) (x)
|
|
||||||
+#else
|
|
||||||
+#define AVV(x...) {x}
|
+#define AVV(x...) {x}
|
||||||
|
+#else
|
||||||
|
+#define AVV(x...) (x)
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
+#define vcprm(a,b,c,d) (const vector unsigned char)AVV(WORD_ ## a, WORD_ ## b, WORD_ ## c, WORD_ ## d)
|
+#define vcprm(a,b,c,d) (const vector unsigned char)AVV(WORD_ ## a, WORD_ ## b, WORD_ ## c, WORD_ ## d)
|
||||||
|
@ -157,7 +157,7 @@ static FLOAT_TYPE besselizero(FLOAT_TYPE x)
|
|||||||
sum += u;
|
sum += u;
|
||||||
n++;
|
n++;
|
||||||
} while (u >= BIZ_EPSILON * sum);
|
} while (u >= BIZ_EPSILON * sum);
|
||||||
return(sum);
|
return sum;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -232,7 +232,7 @@ static int control(int cmd, void *arg)
|
|||||||
}
|
}
|
||||||
|
|
||||||
} //end switch
|
} //end switch
|
||||||
return(CONTROL_UNKNOWN);
|
return CONTROL_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void parse_device (char *dest, const char *src, int len)
|
static void parse_device (char *dest, const char *src, int len)
|
||||||
@ -498,11 +498,11 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
mp_msg(MSGT_AO,MSGL_INFO,MSGTR_AO_ALSA_OpenInNonblockModeFailed);
|
mp_msg(MSGT_AO,MSGL_INFO,MSGTR_AO_ALSA_OpenInNonblockModeFailed);
|
||||||
if ((err = try_open_device(alsa_device, 0, format == AF_FORMAT_AC3)) < 0) {
|
if ((err = try_open_device(alsa_device, 0, format == AF_FORMAT_AC3)) < 0) {
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PlaybackOpenError, snd_strerror(err));
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PlaybackOpenError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PlaybackOpenError, snd_strerror(err));
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PlaybackOpenError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -520,7 +520,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToGetInitialParameters,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToGetInitialParameters,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = snd_pcm_hw_params_set_access(alsa_handler, alsa_hwparams,
|
err = snd_pcm_hw_params_set_access(alsa_handler, alsa_hwparams,
|
||||||
@ -528,7 +528,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if (err < 0) {
|
if (err < 0) {
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetAccessType,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetAccessType,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return (0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* workaround for nonsupported formats
|
/* workaround for nonsupported formats
|
||||||
@ -547,7 +547,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetFormat,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetFormat,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((err = snd_pcm_hw_params_set_channels_near(alsa_handler, alsa_hwparams,
|
if ((err = snd_pcm_hw_params_set_channels_near(alsa_handler, alsa_hwparams,
|
||||||
@ -555,7 +555,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetChannels,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetChannels,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* workaround for buggy rate plugin (should be fixed in ALSA 1.0.11)
|
/* workaround for buggy rate plugin (should be fixed in ALSA 1.0.11)
|
||||||
@ -566,7 +566,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToDisableResampling,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToDisableResampling,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -575,7 +575,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetSamplerate2,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetSamplerate2,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bytes_per_sample = snd_pcm_format_physical_width(alsa_format) / 8;
|
bytes_per_sample = snd_pcm_format_physical_width(alsa_format) / 8;
|
||||||
@ -592,7 +592,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetBufferTimeNear,
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_UnableToSetBufferTimeNear,
|
||||||
snd_strerror(err));
|
snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
} else
|
} else
|
||||||
alsa_buffer_time = err;
|
alsa_buffer_time = err;
|
||||||
|
|
||||||
@ -711,7 +711,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
|
|
||||||
} // end switch alsa_handler (spdif)
|
} // end switch alsa_handler (spdif)
|
||||||
alsa_can_pause = snd_pcm_hw_params_can_pause(alsa_hwparams);
|
alsa_can_pause = snd_pcm_hw_params_can_pause(alsa_hwparams);
|
||||||
return(1);
|
return 1;
|
||||||
} // end init
|
} // end init
|
||||||
|
|
||||||
|
|
||||||
@ -837,7 +837,7 @@ static int play(void* data, int len, int flags)
|
|||||||
mp_msg(MSGT_AO,MSGL_INFO,MSGTR_AO_ALSA_TryingToResetSoundcard);
|
mp_msg(MSGT_AO,MSGL_INFO,MSGTR_AO_ALSA_TryingToResetSoundcard);
|
||||||
if ((res = snd_pcm_prepare(alsa_handler)) < 0) {
|
if ((res = snd_pcm_prepare(alsa_handler)) < 0) {
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PcmPrepareError, snd_strerror(res));
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PcmPrepareError, snd_strerror(res));
|
||||||
return(0);
|
return 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -857,13 +857,13 @@ static int get_space(void)
|
|||||||
if ((ret = snd_pcm_status(alsa_handler, status)) < 0)
|
if ((ret = snd_pcm_status(alsa_handler, status)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_CannotGetPcmStatus, snd_strerror(ret));
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_CannotGetPcmStatus, snd_strerror(ret));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = snd_pcm_status_get_avail(status) * bytes_per_sample;
|
ret = snd_pcm_status_get_avail(status) * bytes_per_sample;
|
||||||
if (ret > ao_data.buffersize) // Buffer underrun?
|
if (ret > ao_data.buffersize) // Buffer underrun?
|
||||||
ret = ao_data.buffersize;
|
ret = ao_data.buffersize;
|
||||||
return(ret);
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* delay in seconds between first and last sample in buffer */
|
/* delay in seconds between first and last sample in buffer */
|
||||||
@ -884,6 +884,6 @@ static float get_delay(void)
|
|||||||
}
|
}
|
||||||
return (float)delay / (float)ao_data.samplerate;
|
return (float)delay / (float)ao_data.samplerate;
|
||||||
} else {
|
} else {
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -35,7 +35,7 @@ static int alsa_rate = SND_PCM_RATE_CONTINUOUS;
|
|||||||
/* to set/get/query special features/parameters */
|
/* to set/get/query special features/parameters */
|
||||||
static int control(int cmd, void *arg)
|
static int control(int cmd, void *arg)
|
||||||
{
|
{
|
||||||
return(CONTROL_UNKNOWN);
|
return CONTROL_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -62,7 +62,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if ((cards = snd_cards()) < 0)
|
if ((cards = snd_cards()) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_SoundCardNotFound);
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_SoundCardNotFound);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ao_data.format = format;
|
ao_data.format = format;
|
||||||
@ -112,7 +112,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
break;
|
break;
|
||||||
case -1:
|
case -1:
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_InvalidFormatReq,af_fmt2str_short(format));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_InvalidFormatReq,af_fmt2str_short(format));
|
||||||
return(0);
|
return 0;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -164,13 +164,13 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if ((err = snd_pcm_open(&alsa_handler, 0, 0, SND_PCM_OPEN_PLAYBACK)) < 0)
|
if ((err = snd_pcm_open(&alsa_handler, 0, 0, SND_PCM_OPEN_PLAYBACK)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PlayBackError, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PlayBackError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((err = snd_pcm_info(alsa_handler, &info)) < 0)
|
if ((err = snd_pcm_info(alsa_handler, &info)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PcmInfoError, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PcmInfoError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_ALSA5_SoundcardsFound,
|
mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_ALSA5_SoundcardsFound,
|
||||||
@ -183,7 +183,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if ((err = snd_pcm_channel_info(alsa_handler, &chninfo)) < 0)
|
if ((err = snd_pcm_channel_info(alsa_handler, &chninfo)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PcmChanInfoError, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PcmChanInfoError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef __QNX__
|
#ifndef __QNX__
|
||||||
@ -207,7 +207,7 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if ((err = snd_pcm_channel_params(alsa_handler, ¶ms)) < 0)
|
if ((err = snd_pcm_channel_params(alsa_handler, ¶ms)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_CantSetParms, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_CantSetParms, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(&setup, 0, sizeof(setup));
|
memset(&setup, 0, sizeof(setup));
|
||||||
@ -220,19 +220,19 @@ static int init(int rate_hz, int channels, int format, int flags)
|
|||||||
if ((err = snd_pcm_channel_setup(alsa_handler, &setup)) < 0)
|
if ((err = snd_pcm_channel_setup(alsa_handler, &setup)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_CantSetChan, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_CantSetChan, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((err = snd_pcm_channel_prepare(alsa_handler, SND_PCM_CHANNEL_PLAYBACK)) < 0)
|
if ((err = snd_pcm_channel_prepare(alsa_handler, SND_PCM_CHANNEL_PLAYBACK)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_ChanPrepareError, snd_strerror(err));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_ChanPrepareError, snd_strerror(err));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
mp_msg(MSGT_AO, MSGL_INFO, "AUDIO: %d Hz/%d channels/%d bps/%d bytes buffer/%s\n",
|
mp_msg(MSGT_AO, MSGL_INFO, "AUDIO: %d Hz/%d channels/%d bps/%d bytes buffer/%s\n",
|
||||||
ao_data.samplerate, ao_data.channels, ao_data.bps, ao_data.buffersize,
|
ao_data.samplerate, ao_data.channels, ao_data.bps, ao_data.buffersize,
|
||||||
snd_pcm_get_format_name(alsa_format.format));
|
snd_pcm_get_format_name(alsa_format.format));
|
||||||
return(1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* close audio device */
|
/* close audio device */
|
||||||
@ -321,7 +321,7 @@ static int play(void* data, int len, int flags)
|
|||||||
int got_len;
|
int got_len;
|
||||||
|
|
||||||
if (!len)
|
if (!len)
|
||||||
return(0);
|
return 0;
|
||||||
|
|
||||||
if ((got_len = snd_pcm_write(alsa_handler, data, len)) < 0)
|
if ((got_len = snd_pcm_write(alsa_handler, data, len)) < 0)
|
||||||
{
|
{
|
||||||
@ -331,20 +331,20 @@ static int play(void* data, int len, int flags)
|
|||||||
if ((got_len = snd_pcm_channel_prepare(alsa_handler, SND_PCM_CHANNEL_PLAYBACK)) < 0)
|
if ((got_len = snd_pcm_channel_prepare(alsa_handler, SND_PCM_CHANNEL_PLAYBACK)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PlaybackPrepareError, snd_strerror(got_len));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_PlaybackPrepareError, snd_strerror(got_len));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
if ((got_len = snd_pcm_write(alsa_handler, data, len)) < 0)
|
if ((got_len = snd_pcm_write(alsa_handler, data, len)) < 0)
|
||||||
{
|
{
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_WriteErrorAfterReset,
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_WriteErrorAfterReset,
|
||||||
snd_strerror(got_len));
|
snd_strerror(got_len));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
return(got_len); /* 2nd write was ok */
|
return got_len; /* 2nd write was ok */
|
||||||
}
|
}
|
||||||
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_OutPutError, snd_strerror(got_len));
|
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_ALSA5_OutPutError, snd_strerror(got_len));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
return(got_len);
|
return got_len;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* how many byes are free in the buffer */
|
/* how many byes are free in the buffer */
|
||||||
@ -355,9 +355,9 @@ static int get_space(void)
|
|||||||
ch_stat.channel = SND_PCM_CHANNEL_PLAYBACK;
|
ch_stat.channel = SND_PCM_CHANNEL_PLAYBACK;
|
||||||
|
|
||||||
if (snd_pcm_channel_status(alsa_handler, &ch_stat) < 0)
|
if (snd_pcm_channel_status(alsa_handler, &ch_stat) < 0)
|
||||||
return(0); /* error occurred */
|
return 0; /* error occurred */
|
||||||
else
|
else
|
||||||
return(ch_stat.free);
|
return ch_stat.free;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* delay in seconds between first and last sample in buffer */
|
/* delay in seconds between first and last sample in buffer */
|
||||||
@ -368,7 +368,7 @@ static float get_delay(void)
|
|||||||
ch_stat.channel = SND_PCM_CHANNEL_PLAYBACK;
|
ch_stat.channel = SND_PCM_CHANNEL_PLAYBACK;
|
||||||
|
|
||||||
if (snd_pcm_channel_status(alsa_handler, &ch_stat) < 0)
|
if (snd_pcm_channel_status(alsa_handler, &ch_stat) < 0)
|
||||||
return((float)ao_data.buffersize/(float)ao_data.bps); /* error occurred */
|
return (float)ao_data.buffersize/(float)ao_data.bps; /* error occurred */
|
||||||
else
|
else
|
||||||
return((float)ch_stat.count/(float)ao_data.bps);
|
return (float)ch_stat.count/(float)ao_data.bps;
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ LIBAO_EXTERN(arts)
|
|||||||
|
|
||||||
static int control(int cmd, void *arg)
|
static int control(int cmd, void *arg)
|
||||||
{
|
{
|
||||||
return(CONTROL_UNKNOWN);
|
return CONTROL_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int init(int rate_hz, int channels, int format, int flags)
|
static int init(int rate_hz, int channels, int format, int flags)
|
||||||
|
@ -231,7 +231,7 @@ void callback(void *userdata, Uint8 *stream, int len); userdata is the pointer s
|
|||||||
/* Open the audio device and start playing sound! */
|
/* Open the audio device and start playing sound! */
|
||||||
if(SDL_OpenAudio(&aspec, &obtained) < 0) {
|
if(SDL_OpenAudio(&aspec, &obtained) < 0) {
|
||||||
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_SDL_CantOpenAudio, SDL_GetError());
|
mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_SDL_CantOpenAudio, SDL_GetError());
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* did we got what we wanted ? */
|
/* did we got what we wanted ? */
|
||||||
|
20
libass/ass.c
20
libass/ass.c
@ -163,7 +163,7 @@ static void rskip_spaces(char** str, char* limit) {
|
|||||||
static int lookup_style(ass_track_t* track, char* name) {
|
static int lookup_style(ass_track_t* track, char* name) {
|
||||||
int i;
|
int i;
|
||||||
if (*name == '*') ++name; // FIXME: what does '*' really mean ?
|
if (*name == '*') ++name; // FIXME: what does '*' really mean ?
|
||||||
for (i=0; i<track->n_styles; ++i) {
|
for (i = track->n_styles - 1; i >= 0; --i) {
|
||||||
// FIXME: mb strcasecmp ?
|
// FIXME: mb strcasecmp ?
|
||||||
if (strcmp(track->styles[i].Name, name) == 0)
|
if (strcmp(track->styles[i].Name, name) == 0)
|
||||||
return i;
|
return i;
|
||||||
@ -846,16 +846,22 @@ static char* sub_recode(char* data, size_t size, char* codepage)
|
|||||||
char* ip;
|
char* ip;
|
||||||
char* op;
|
char* op;
|
||||||
size_t rc;
|
size_t rc;
|
||||||
|
int clear = 0;
|
||||||
|
|
||||||
outbuf = malloc(size);
|
outbuf = malloc(osize);
|
||||||
ip = data;
|
ip = data;
|
||||||
op = outbuf;
|
op = outbuf;
|
||||||
|
|
||||||
while (ileft) {
|
while (1) {
|
||||||
rc = iconv(icdsc, &ip, &ileft, &op, &oleft);
|
if (ileft)
|
||||||
|
rc = iconv(icdsc, &ip, &ileft, &op, &oleft);
|
||||||
|
else {// clear the conversion state and leave
|
||||||
|
clear = 1;
|
||||||
|
rc = iconv(icdsc, NULL, NULL, &op, &oleft);
|
||||||
|
}
|
||||||
if (rc == (size_t)(-1)) {
|
if (rc == (size_t)(-1)) {
|
||||||
if (errno == E2BIG) {
|
if (errno == E2BIG) {
|
||||||
int offset = op - outbuf;
|
size_t offset = op - outbuf;
|
||||||
outbuf = (char*)realloc(outbuf, osize + size);
|
outbuf = (char*)realloc(outbuf, osize + size);
|
||||||
op = outbuf + offset;
|
op = outbuf + offset;
|
||||||
osize += size;
|
osize += size;
|
||||||
@ -864,7 +870,9 @@ static char* sub_recode(char* data, size_t size, char* codepage)
|
|||||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_ErrorRecodingFile);
|
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_ErrorRecodingFile);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
} else
|
||||||
|
if (clear)
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
outbuf[osize - oleft - 1] = 0;
|
outbuf[osize - oleft - 1] = 0;
|
||||||
}
|
}
|
||||||
|
@ -86,7 +86,7 @@ static unsigned hashmap_hash(void* buf, size_t len)
|
|||||||
|
|
||||||
static int hashmap_key_compare(void* a, void* b, size_t size)
|
static int hashmap_key_compare(void* a, void* b, size_t size)
|
||||||
{
|
{
|
||||||
return (memcmp(a, b, size) == 0);
|
return memcmp(a, b, size) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void hashmap_item_dtor(void* key, size_t key_size, void* value, size_t value_size)
|
static void hashmap_item_dtor(void* key, size_t key_size, void* value, size_t value_size)
|
||||||
|
@ -150,11 +150,13 @@ static char* _select_font(fc_instance_t* priv, const char* family, unsigned bold
|
|||||||
if (curf >= fset->nfont)
|
if (curf >= fset->nfont)
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
|
#if (FC_VERSION >= 20297)
|
||||||
// Remove all extra family names from original pattern.
|
// Remove all extra family names from original pattern.
|
||||||
// After this, FcFontRenderPrepare will select the most relevant family
|
// After this, FcFontRenderPrepare will select the most relevant family
|
||||||
// name in case there are more than one of them.
|
// name in case there are more than one of them.
|
||||||
for (; family_cnt > 1; --family_cnt)
|
for (; family_cnt > 1; --family_cnt)
|
||||||
FcPatternRemove(pat, FC_FAMILY, family_cnt - 1);
|
FcPatternRemove(pat, FC_FAMILY, family_cnt - 1);
|
||||||
|
#endif
|
||||||
|
|
||||||
rpat = FcFontRenderPrepare(priv->config, pat, fset->fonts[curf]);
|
rpat = FcFontRenderPrepare(priv->config, pat, fset->fonts[curf]);
|
||||||
if (!rpat)
|
if (!rpat)
|
||||||
@ -349,35 +351,39 @@ static void process_fontdata(fc_instance_t* priv, ass_library_t* library, FT_Lib
|
|||||||
FcPattern* pattern;
|
FcPattern* pattern;
|
||||||
FcFontSet* fset;
|
FcFontSet* fset;
|
||||||
FcBool res;
|
FcBool res;
|
||||||
|
int face_index, num_faces = 1;
|
||||||
|
|
||||||
rc = FT_New_Memory_Face(ftlibrary, (unsigned char*)data, data_size, 0, &face);
|
for (face_index = 0; face_index < num_faces; ++face_index) {
|
||||||
if (rc) {
|
rc = FT_New_Memory_Face(ftlibrary, (unsigned char*)data, data_size, face_index, &face);
|
||||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_ErrorOpeningMemoryFont, name);
|
if (rc) {
|
||||||
return;
|
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_ErrorOpeningMemoryFont, name);
|
||||||
}
|
return;
|
||||||
|
}
|
||||||
|
num_faces = face->num_faces;
|
||||||
|
|
||||||
|
pattern = FcFreeTypeQueryFace(face, (unsigned char*)name, 0, FcConfigGetBlanks(priv->config));
|
||||||
|
if (!pattern) {
|
||||||
|
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcFreeTypeQueryFace");
|
||||||
|
FT_Done_Face(face);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
fset = FcConfigGetFonts(priv->config, FcSetSystem); // somehow it failes when asked for FcSetApplication
|
||||||
|
if (!fset) {
|
||||||
|
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcConfigGetFonts");
|
||||||
|
FT_Done_Face(face);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
res = FcFontSetAdd(fset, pattern);
|
||||||
|
if (!res) {
|
||||||
|
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcFontSetAdd");
|
||||||
|
FT_Done_Face(face);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
pattern = FcFreeTypeQueryFace(face, (unsigned char*)name, 0, FcConfigGetBlanks(priv->config));
|
|
||||||
if (!pattern) {
|
|
||||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcFreeTypeQueryFace");
|
|
||||||
FT_Done_Face(face);
|
FT_Done_Face(face);
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fset = FcConfigGetFonts(priv->config, FcSetSystem); // somehow it failes when asked for FcSetApplication
|
|
||||||
if (!fset) {
|
|
||||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcConfigGetFonts");
|
|
||||||
FT_Done_Face(face);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
res = FcFontSetAdd(fset, pattern);
|
|
||||||
if (!res) {
|
|
||||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FunctionCallFailed, "FcFontSetAdd");
|
|
||||||
FT_Done_Face(face);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
FT_Done_Face(face);
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -241,7 +241,7 @@ static int open_dir(menu_t* menu,char* args) {
|
|||||||
if(dp->d_name[0] == '.' && strcmp(dp->d_name,"..") != 0)
|
if(dp->d_name[0] == '.' && strcmp(dp->d_name,"..") != 0)
|
||||||
continue;
|
continue;
|
||||||
if (menu_chroot && !strcmp (dp->d_name,"..")) {
|
if (menu_chroot && !strcmp (dp->d_name,"..")) {
|
||||||
int len = strlen (menu_chroot);
|
size_t len = strlen (menu_chroot);
|
||||||
if ((strlen (mpriv->dir) == len || strlen (mpriv->dir) == len + 1)
|
if ((strlen (mpriv->dir) == len || strlen (mpriv->dir) == len + 1)
|
||||||
&& !strncmp (mpriv->dir, menu_chroot, len))
|
&& !strncmp (mpriv->dir, menu_chroot, len))
|
||||||
continue;
|
continue;
|
||||||
|
@ -215,7 +215,7 @@ static int config(struct vf_instance* vf, int width, int height, int d_width, in
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int query_format(struct vf_instance* vf, unsigned int fmt){
|
static int query_format(struct vf_instance* vf, unsigned int fmt){
|
||||||
return (vf_next_query_format(vf,fmt));
|
return vf_next_query_format(vf, fmt);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int open_vf(vf_instance_t *vf, char* args){
|
static int open_vf(vf_instance_t *vf, char* args){
|
||||||
|
@ -128,14 +128,17 @@ static int init(sh_audio_t *sh_audio)
|
|||||||
}
|
}
|
||||||
if(ac3dts_fillbuff(sh_audio) < 0)
|
if(ac3dts_fillbuff(sh_audio) < 0)
|
||||||
{
|
{
|
||||||
|
a52_free(a52_state);
|
||||||
mp_msg(MSGT_DECAUDIO, MSGL_ERR, "AC3/DTS sync failed\n");
|
mp_msg(MSGT_DECAUDIO, MSGL_ERR, "AC3/DTS sync failed\n");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
sh_audio->context = a52_state;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void uninit(sh_audio_t *sh)
|
static void uninit(sh_audio_t *sh)
|
||||||
{
|
{
|
||||||
|
a52_free(sh->context);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int control(sh_audio_t *sh,int cmd,void* arg, ...)
|
static int control(sh_audio_t *sh,int cmd,void* arg, ...)
|
||||||
|
@ -253,6 +253,7 @@ while(sh_audio->channels>0){
|
|||||||
|
|
||||||
static void uninit(sh_audio_t *sh)
|
static void uninit(sh_audio_t *sh)
|
||||||
{
|
{
|
||||||
|
a52_free(a52_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int control(sh_audio_t *sh,int cmd,void* arg, ...)
|
static int control(sh_audio_t *sh,int cmd,void* arg, ...)
|
||||||
|
@ -216,7 +216,7 @@ static int bread(char *data, /* Output: Output data array */
|
|||||||
}
|
}
|
||||||
iptr = priv->ptr; /* current file data buffer pointer */
|
iptr = priv->ptr; /* current file data buffer pointer */
|
||||||
if ( iptr >= priv->nbuf ) /* If data file is empty then return */
|
if ( iptr >= priv->nbuf ) /* If data file is empty then return */
|
||||||
return(retval);
|
return retval;
|
||||||
ibufadr = iptr/BYTE_BIT; /* current file data buffer address */
|
ibufadr = iptr/BYTE_BIT; /* current file data buffer address */
|
||||||
ibufbit = iptr%BYTE_BIT; /* current file data buffer bit */
|
ibufbit = iptr%BYTE_BIT; /* current file data buffer bit */
|
||||||
/* tmpdat = stream->buf[ibufadr] >> (BYTE_BIT-ibufbit-1); */
|
/* tmpdat = stream->buf[ibufadr] >> (BYTE_BIT-ibufbit-1); */
|
||||||
@ -235,7 +235,7 @@ static int bread(char *data, /* Output: Output data array */
|
|||||||
}
|
}
|
||||||
++retval;
|
++retval;
|
||||||
}
|
}
|
||||||
return(retval);
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define BITS_INT (sizeof(int)*8)
|
#define BITS_INT (sizeof(int)*8)
|
||||||
@ -266,7 +266,7 @@ static int get_bstm(int *data, /* Input: input data */
|
|||||||
mask >>= 1;
|
mask >>= 1;
|
||||||
}
|
}
|
||||||
*data = work;
|
*data = work;
|
||||||
return(retval);
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int GetVqInfo( tvqConfInfoSubBlock *cfg,
|
static int GetVqInfo( tvqConfInfoSubBlock *cfg,
|
||||||
|
@ -122,7 +122,7 @@ static int encode_lame(audio_encoder_t *encoder, uint8_t *dest, void *src, int l
|
|||||||
else
|
else
|
||||||
n = lame_encode_buffer_interleaved(lame,(short *)src, len/4, dest, max_size);
|
n = lame_encode_buffer_interleaved(lame,(short *)src, len/4, dest, max_size);
|
||||||
|
|
||||||
return (n < 0 ? 0 : n);
|
return n < 0 ? 0 : n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ int set_video_colors(sh_video_t *sh_video, const char *item, int value)
|
|||||||
if (vf) {
|
if (vf) {
|
||||||
int ret = vf->control(vf, VFCTRL_SET_EQUALIZER, &data);
|
int ret = vf->control(vf, VFCTRL_SET_EQUALIZER, &data);
|
||||||
if (ret == CONTROL_TRUE)
|
if (ret == CONTROL_TRUE)
|
||||||
return (1);
|
return 1;
|
||||||
}
|
}
|
||||||
/* try software control */
|
/* try software control */
|
||||||
const struct vd_functions *vd = sh_video->vd_driver;
|
const struct vd_functions *vd = sh_video->vd_driver;
|
||||||
@ -114,7 +114,7 @@ int get_video_colors(sh_video_t *sh_video, const char *item, int *value)
|
|||||||
int ret = vf->control(vf, VFCTRL_GET_EQUALIZER, &data);
|
int ret = vf->control(vf, VFCTRL_GET_EQUALIZER, &data);
|
||||||
if (ret == CONTROL_TRUE) {
|
if (ret == CONTROL_TRUE) {
|
||||||
*value = data.value;
|
*value = data.value;
|
||||||
return (1);
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* try software control */
|
/* try software control */
|
||||||
@ -133,7 +133,7 @@ int set_rectangle(sh_video_t *sh_video, int param, int value)
|
|||||||
if (vf) {
|
if (vf) {
|
||||||
int ret = vf->control(vf, VFCTRL_CHANGE_RECTANGLE, data);
|
int ret = vf->control(vf, VFCTRL_CHANGE_RECTANGLE, data);
|
||||||
if (ret)
|
if (ret)
|
||||||
return (1);
|
return 1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -7,66 +7,66 @@ const char *vo_format_name(int format)
|
|||||||
static char unknown_format[20];
|
static char unknown_format[20];
|
||||||
switch(format)
|
switch(format)
|
||||||
{
|
{
|
||||||
case IMGFMT_RGB1: return("RGB 1-bit");
|
case IMGFMT_RGB1: return "RGB 1-bit";
|
||||||
case IMGFMT_RGB4: return("RGB 4-bit");
|
case IMGFMT_RGB4: return "RGB 4-bit";
|
||||||
case IMGFMT_RG4B: return("RGB 4-bit per byte");
|
case IMGFMT_RG4B: return "RGB 4-bit per byte";
|
||||||
case IMGFMT_RGB8: return("RGB 8-bit");
|
case IMGFMT_RGB8: return "RGB 8-bit";
|
||||||
case IMGFMT_RGB15: return("RGB 15-bit");
|
case IMGFMT_RGB15: return "RGB 15-bit";
|
||||||
case IMGFMT_RGB16: return("RGB 16-bit");
|
case IMGFMT_RGB16: return "RGB 16-bit";
|
||||||
case IMGFMT_RGB24: return("RGB 24-bit");
|
case IMGFMT_RGB24: return "RGB 24-bit";
|
||||||
// case IMGFMT_RGB32: return("RGB 32-bit");
|
// case IMGFMT_RGB32: return "RGB 32-bit";
|
||||||
case IMGFMT_BGR1: return("BGR 1-bit");
|
case IMGFMT_BGR1: return "BGR 1-bit";
|
||||||
case IMGFMT_BGR4: return("BGR 4-bit");
|
case IMGFMT_BGR4: return "BGR 4-bit";
|
||||||
case IMGFMT_BG4B: return("BGR 4-bit per byte");
|
case IMGFMT_BG4B: return "BGR 4-bit per byte";
|
||||||
case IMGFMT_BGR8: return("BGR 8-bit");
|
case IMGFMT_BGR8: return "BGR 8-bit";
|
||||||
case IMGFMT_BGR15: return("BGR 15-bit");
|
case IMGFMT_BGR15: return "BGR 15-bit";
|
||||||
case IMGFMT_BGR16: return("BGR 16-bit");
|
case IMGFMT_BGR16: return "BGR 16-bit";
|
||||||
case IMGFMT_BGR24: return("BGR 24-bit");
|
case IMGFMT_BGR24: return "BGR 24-bit";
|
||||||
// case IMGFMT_BGR32: return("BGR 32-bit");
|
// case IMGFMT_BGR32: return "BGR 32-bit";
|
||||||
case IMGFMT_ABGR: return("ABGR");
|
case IMGFMT_ABGR: return "ABGR";
|
||||||
case IMGFMT_BGRA: return("BGRA");
|
case IMGFMT_BGRA: return "BGRA";
|
||||||
case IMGFMT_ARGB: return("ARGB");
|
case IMGFMT_ARGB: return "ARGB";
|
||||||
case IMGFMT_RGBA: return("RGBA");
|
case IMGFMT_RGBA: return "RGBA";
|
||||||
case IMGFMT_YVU9: return("Planar YVU9");
|
case IMGFMT_YVU9: return "Planar YVU9";
|
||||||
case IMGFMT_IF09: return("Planar IF09");
|
case IMGFMT_IF09: return "Planar IF09";
|
||||||
case IMGFMT_YV12: return("Planar YV12");
|
case IMGFMT_YV12: return "Planar YV12";
|
||||||
case IMGFMT_I420: return("Planar I420");
|
case IMGFMT_I420: return "Planar I420";
|
||||||
case IMGFMT_IYUV: return("Planar IYUV");
|
case IMGFMT_IYUV: return "Planar IYUV";
|
||||||
case IMGFMT_CLPL: return("Planar CLPL");
|
case IMGFMT_CLPL: return "Planar CLPL";
|
||||||
case IMGFMT_Y800: return("Planar Y800");
|
case IMGFMT_Y800: return "Planar Y800";
|
||||||
case IMGFMT_Y8: return("Planar Y8");
|
case IMGFMT_Y8: return "Planar Y8";
|
||||||
case IMGFMT_444P: return("Planar 444P");
|
case IMGFMT_444P: return "Planar 444P";
|
||||||
case IMGFMT_422P: return("Planar 422P");
|
case IMGFMT_422P: return "Planar 422P";
|
||||||
case IMGFMT_411P: return("Planar 411P");
|
case IMGFMT_411P: return "Planar 411P";
|
||||||
case IMGFMT_NV12: return("Planar NV12");
|
case IMGFMT_NV12: return "Planar NV12";
|
||||||
case IMGFMT_NV21: return("Planar NV21");
|
case IMGFMT_NV21: return "Planar NV21";
|
||||||
case IMGFMT_HM12: return("Planar NV12 Macroblock");
|
case IMGFMT_HM12: return "Planar NV12 Macroblock";
|
||||||
case IMGFMT_IUYV: return("Packed IUYV");
|
case IMGFMT_IUYV: return "Packed IUYV";
|
||||||
case IMGFMT_IY41: return("Packed IY41");
|
case IMGFMT_IY41: return "Packed IY41";
|
||||||
case IMGFMT_IYU1: return("Packed IYU1");
|
case IMGFMT_IYU1: return "Packed IYU1";
|
||||||
case IMGFMT_IYU2: return("Packed IYU2");
|
case IMGFMT_IYU2: return "Packed IYU2";
|
||||||
case IMGFMT_UYVY: return("Packed UYVY");
|
case IMGFMT_UYVY: return "Packed UYVY";
|
||||||
case IMGFMT_UYNV: return("Packed UYNV");
|
case IMGFMT_UYNV: return "Packed UYNV";
|
||||||
case IMGFMT_cyuv: return("Packed CYUV");
|
case IMGFMT_cyuv: return "Packed CYUV";
|
||||||
case IMGFMT_Y422: return("Packed Y422");
|
case IMGFMT_Y422: return "Packed Y422";
|
||||||
case IMGFMT_YUY2: return("Packed YUY2");
|
case IMGFMT_YUY2: return "Packed YUY2";
|
||||||
case IMGFMT_YUNV: return("Packed YUNV");
|
case IMGFMT_YUNV: return "Packed YUNV";
|
||||||
case IMGFMT_YVYU: return("Packed YVYU");
|
case IMGFMT_YVYU: return "Packed YVYU";
|
||||||
case IMGFMT_Y41P: return("Packed Y41P");
|
case IMGFMT_Y41P: return "Packed Y41P";
|
||||||
case IMGFMT_Y211: return("Packed Y211");
|
case IMGFMT_Y211: return "Packed Y211";
|
||||||
case IMGFMT_Y41T: return("Packed Y41T");
|
case IMGFMT_Y41T: return "Packed Y41T";
|
||||||
case IMGFMT_Y42T: return("Packed Y42T");
|
case IMGFMT_Y42T: return "Packed Y42T";
|
||||||
case IMGFMT_V422: return("Packed V422");
|
case IMGFMT_V422: return "Packed V422";
|
||||||
case IMGFMT_V655: return("Packed V655");
|
case IMGFMT_V655: return "Packed V655";
|
||||||
case IMGFMT_CLJR: return("Packed CLJR");
|
case IMGFMT_CLJR: return "Packed CLJR";
|
||||||
case IMGFMT_YUVP: return("Packed YUVP");
|
case IMGFMT_YUVP: return "Packed YUVP";
|
||||||
case IMGFMT_UYVP: return("Packed UYVP");
|
case IMGFMT_UYVP: return "Packed UYVP";
|
||||||
case IMGFMT_MPEGPES: return("Mpeg PES");
|
case IMGFMT_MPEGPES: return "Mpeg PES";
|
||||||
case IMGFMT_ZRMJPEGNI: return("Zoran MJPEG non-interlaced");
|
case IMGFMT_ZRMJPEGNI: return "Zoran MJPEG non-interlaced";
|
||||||
case IMGFMT_ZRMJPEGIT: return("Zoran MJPEG top field first");
|
case IMGFMT_ZRMJPEGIT: return "Zoran MJPEG top field first";
|
||||||
case IMGFMT_ZRMJPEGIB: return("Zoran MJPEG bottom field first");
|
case IMGFMT_ZRMJPEGIB: return "Zoran MJPEG bottom field first";
|
||||||
case IMGFMT_XVMC_MOCO_MPEG2: return("MPEG1/2 Motion Compensation");
|
case IMGFMT_XVMC_MOCO_MPEG2: return "MPEG1/2 Motion Compensation";
|
||||||
case IMGFMT_XVMC_IDCT_MPEG2: return("MPEG1/2 Motion Compensation and IDCT");
|
case IMGFMT_XVMC_IDCT_MPEG2: return "MPEG1/2 Motion Compensation and IDCT";
|
||||||
}
|
}
|
||||||
snprintf(unknown_format,20,"Unknown 0x%04x",format);
|
snprintf(unknown_format,20,"Unknown 0x%04x",format);
|
||||||
return unknown_format;
|
return unknown_format;
|
||||||
|
@ -21,8 +21,8 @@
|
|||||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef RTJPEGN_H
|
#ifndef MPLAYER_RTJPEGN_H
|
||||||
#define RTJPEGN_H
|
#define MPLAYER_RTJPEGN_H
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
@ -58,4 +58,4 @@ extern void RTjpeg_yuvrgb16(__u8 *buf, __u8 *rgb, int stride);
|
|||||||
extern void RTjpeg_yuvrgb24(__u8 *buf, __u8 *rgb, int stride);
|
extern void RTjpeg_yuvrgb24(__u8 *buf, __u8 *rgb, int stride);
|
||||||
extern void RTjpeg_yuvrgb32(__u8 *buf, __u8 *rgb, int stride);
|
extern void RTjpeg_yuvrgb32(__u8 *buf, __u8 *rgb, int stride);
|
||||||
|
|
||||||
#endif /* RTJPEGN_H */
|
#endif /* MPLAYER_RTJPEGN_H */
|
||||||
|
@ -211,7 +211,7 @@ static int init(sh_video_t *sh){
|
|||||||
|
|
||||||
ctx = sh->context = malloc(sizeof(vd_ffmpeg_ctx));
|
ctx = sh->context = malloc(sizeof(vd_ffmpeg_ctx));
|
||||||
if (!ctx)
|
if (!ctx)
|
||||||
return(0);
|
return 0;
|
||||||
memset(ctx, 0, sizeof(vd_ffmpeg_ctx));
|
memset(ctx, 0, sizeof(vd_ffmpeg_ctx));
|
||||||
|
|
||||||
lavc_codec = (AVCodec *)avcodec_find_decoder_by_name(sh->codec->dll);
|
lavc_codec = (AVCodec *)avcodec_find_decoder_by_name(sh->codec->dll);
|
||||||
|
@ -196,7 +196,7 @@ static int init(sh_video_t *sh){
|
|||||||
prev=FindNextComponent(NULL,&desc);
|
prev=FindNextComponent(NULL,&desc);
|
||||||
if(!prev){
|
if(!prev){
|
||||||
mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Cannot find requested component\n");
|
mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Cannot find requested component\n");
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
mp_msg(MSGT_DECVIDEO,MSGL_DBG2,"Found it! ID = %p\n",prev);
|
mp_msg(MSGT_DECVIDEO,MSGL_DBG2,"Found it! ID = %p\n",prev);
|
||||||
|
|
||||||
@ -278,7 +278,7 @@ static int init(sh_video_t *sh){
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Unknown requested csp\n");
|
mp_msg(MSGT_DECVIDEO,MSGL_ERR,"Unknown requested csp\n");
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
mp_msg(MSGT_DECVIDEO,MSGL_DBG2,"imgfmt: %s qt_imgfmt: %.4s\n", vo_format_name(imgfmt), (char *)&qt_imgfmt);
|
mp_msg(MSGT_DECVIDEO,MSGL_DBG2,"imgfmt: %s qt_imgfmt: %.4s\n", vo_format_name(imgfmt), (char *)&qt_imgfmt);
|
||||||
sh->context = (void *)qt_imgfmt;
|
sh->context = (void *)qt_imgfmt;
|
||||||
|
@ -427,5 +427,5 @@ static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){
|
|||||||
(sh->disp_w != transform_out[3] || sh->disp_h != transform_out[4]))
|
(sh->disp_w != transform_out[3] || sh->disp_h != transform_out[4]))
|
||||||
initialized = 0;
|
initialized = 0;
|
||||||
|
|
||||||
return (result?NULL:mpi);
|
return result ? NULL : mpi;
|
||||||
}
|
}
|
||||||
|
@ -211,7 +211,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to dlopen %s while %s\n", filename, error);
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to dlopen %s while %s\n", filename, error);
|
||||||
else
|
else
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to dlopen %s\n", filename);
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to dlopen %s\n", filename);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
what_the = dlsym(priv->file_handler, "What_The");
|
what_the = dlsym(priv->file_handler, "What_The");
|
||||||
@ -219,7 +219,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to init %s while %s\n", filename, error);
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: failed to init %s while %s\n", filename, error);
|
||||||
dlclose(priv->file_handler);
|
dlclose(priv->file_handler);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
mod_hdr = what_the();
|
mod_hdr = what_the();
|
||||||
@ -227,7 +227,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: initializer function failed in %s\n", filename);
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: initializer function failed in %s\n", filename);
|
||||||
dlclose(priv->file_handler);
|
dlclose(priv->file_handler);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_V, "=== XAnim Codec ===\n");
|
mp_msg(MSGT_DECVIDEO, MSGL_V, "=== XAnim Codec ===\n");
|
||||||
@ -245,7 +245,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: not supported api revision (%d) in %s\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: not supported api revision (%d) in %s\n",
|
||||||
mod_hdr->api_rev, filename);
|
mod_hdr->api_rev, filename);
|
||||||
dlclose(priv->file_handler);
|
dlclose(priv->file_handler);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
func = mod_hdr->funcs;
|
func = mod_hdr->funcs;
|
||||||
@ -253,7 +253,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: function table error in %s\n", filename);
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: function table error in %s\n", filename);
|
||||||
dlclose(priv->file_handler);
|
dlclose(priv->file_handler);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "Exported functions by codec: [functable: %p entries: %d]\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "Exported functions by codec: [functable: %p entries: %d]\n",
|
||||||
@ -281,7 +281,7 @@ static int xacodec_load(sh_video_t *sh, char *filename)
|
|||||||
priv->dec_func = (void *)func[i].dec_func;
|
priv->dec_func = (void *)func[i].dec_func;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return(1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int xacodec_query(sh_video_t *sh, XA_CODEC_HDR *codec_hdr)
|
static int xacodec_query(sh_video_t *sh, XA_CODEC_HDR *codec_hdr)
|
||||||
@ -295,7 +295,7 @@ static int xacodec_query(sh_video_t *sh, XA_CODEC_HDR *codec_hdr)
|
|||||||
{
|
{
|
||||||
codec_hdr->decoder = priv->dec_func;
|
codec_hdr->decoder = priv->dec_func;
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "We got decoder's address at init! %p\n", codec_hdr->decoder);
|
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "We got decoder's address at init! %p\n", codec_hdr->decoder);
|
||||||
return(1);
|
return 1;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -306,16 +306,16 @@ static int xacodec_query(sh_video_t *sh, XA_CODEC_HDR *codec_hdr)
|
|||||||
priv->dec_func = (void *)codec_hdr->decoder;
|
priv->dec_func = (void *)codec_hdr->decoder;
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "Codec is supported: found decoder for %s at %p\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "Codec is supported: found decoder for %s at %p\n",
|
||||||
codec_hdr->description, codec_hdr->decoder);
|
codec_hdr->description, codec_hdr->decoder);
|
||||||
return(1);
|
return 1;
|
||||||
case CODEC_UNSUPPORTED:
|
case CODEC_UNSUPPORTED:
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "Codec (%s) is unsupported by dll\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "Codec (%s) is unsupported by dll\n",
|
||||||
codec_hdr->description);
|
codec_hdr->description);
|
||||||
return(0);
|
return 0;
|
||||||
case CODEC_UNKNOWN:
|
case CODEC_UNKNOWN:
|
||||||
default:
|
default:
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "Codec (%s) is unknown by dll\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "Codec (%s) is unknown by dll\n",
|
||||||
codec_hdr->description);
|
codec_hdr->description);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -475,7 +475,7 @@ void *YUV2x2_Map_Func(unsigned int image_type, unsigned int dith_type)
|
|||||||
{
|
{
|
||||||
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "YUV2x2_Map_Func('image_type: %d', 'dith_type: %d')",
|
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "YUV2x2_Map_Func('image_type: %d', 'dith_type: %d')",
|
||||||
image_type, dith_type);
|
image_type, dith_type);
|
||||||
return((void*)XA_YUV_2x2_clr);
|
return (void*)XA_YUV_2x2_clr;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------- whole YUV frame converters ------------------------- */
|
/* -------------------- whole YUV frame converters ------------------------- */
|
||||||
@ -581,7 +581,7 @@ void XA_YUV1611_Convert(unsigned char *image_p, unsigned int imagex, unsigned in
|
|||||||
void *XA_YUV1611_Func(unsigned int image_type)
|
void *XA_YUV1611_Func(unsigned int image_type)
|
||||||
{
|
{
|
||||||
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "XA_YUV1611_Func('image_type: %d')", image_type);
|
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "XA_YUV1611_Func('image_type: %d')", image_type);
|
||||||
return((void *)XA_YUV1611_Convert);
|
return (void *)XA_YUV1611_Convert;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------- YUV 2x2 1x1 1x1 (4:2:0 aka YV12) [3ivX,H263] ------------ */
|
/* --------------- YUV 2x2 1x1 1x1 (4:2:0 aka YV12) [3ivX,H263] ------------ */
|
||||||
@ -619,7 +619,7 @@ void XA_YUV221111_Convert(unsigned char *image_p, unsigned int imagex, unsigned
|
|||||||
void *XA_YUV221111_Func(unsigned int image_type)
|
void *XA_YUV221111_Func(unsigned int image_type)
|
||||||
{
|
{
|
||||||
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "XA_YUV221111_Func('image_type: %d')\n",image_type);
|
mp_dbg(MSGT_DECVIDEO,MSGL_DBG2, "XA_YUV221111_Func('image_type: %d')\n",image_type);
|
||||||
return((void *)XA_YUV221111_Convert);
|
return (void *)XA_YUV221111_Convert;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* *** EOF XANIM *** */
|
/* *** EOF XANIM *** */
|
||||||
@ -657,7 +657,7 @@ static int init(sh_video_t *sh)
|
|||||||
|
|
||||||
snprintf(dll, 1024, "%s/%s", def_path, sh->codec->dll);
|
snprintf(dll, 1024, "%s/%s", def_path, sh->codec->dll);
|
||||||
if (xacodec_load(sh, dll) == 0)
|
if (xacodec_load(sh, dll) == 0)
|
||||||
return(0);
|
return 0;
|
||||||
|
|
||||||
codec_hdr.xapi_rev = XAVID_API_REV;
|
codec_hdr.xapi_rev = XAVID_API_REV;
|
||||||
codec_hdr.anim_hdr = malloc(4096);
|
codec_hdr.anim_hdr = malloc(4096);
|
||||||
@ -690,13 +690,13 @@ static int init(sh_video_t *sh)
|
|||||||
default:
|
default:
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: not supported image out format (%s)\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: not supported image out format (%s)\n",
|
||||||
vo_format_name(sh->codec->outfmt[sh->outfmtidx]));
|
vo_format_name(sh->codec->outfmt[sh->outfmtidx]));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_INFO, "xacodec: querying for input %dx%d %dbit [fourcc: %4x] (%s)...\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_INFO, "xacodec: querying for input %dx%d %dbit [fourcc: %4x] (%s)...\n",
|
||||||
codec_hdr.x, codec_hdr.y, codec_hdr.depth, codec_hdr.compression, codec_hdr.description);
|
codec_hdr.x, codec_hdr.y, codec_hdr.depth, codec_hdr.compression, codec_hdr.description);
|
||||||
|
|
||||||
if (xacodec_query(sh, &codec_hdr) == 0)
|
if (xacodec_query(sh, &codec_hdr) == 0)
|
||||||
return(0);
|
return 0;
|
||||||
|
|
||||||
// free(codec_hdr.anim_hdr);
|
// free(codec_hdr.anim_hdr);
|
||||||
|
|
||||||
@ -705,7 +705,7 @@ static int init(sh_video_t *sh)
|
|||||||
{
|
{
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: memory allocation error: %s\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "xacodec: memory allocation error: %s\n",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
priv->decinfo->cmd = 0;
|
priv->decinfo->cmd = 0;
|
||||||
priv->decinfo->skip_flag = 0;
|
priv->decinfo->skip_flag = 0;
|
||||||
@ -721,7 +721,7 @@ static int init(sh_video_t *sh)
|
|||||||
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "decinfo->extra, filled by codec: %p [%s]\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_DBG2, "decinfo->extra, filled by codec: %p [%s]\n",
|
||||||
&priv->decinfo->extra, (char *)priv->decinfo->extra);
|
&priv->decinfo->extra, (char *)priv->decinfo->extra);
|
||||||
|
|
||||||
return(1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// uninit driver
|
// uninit driver
|
||||||
|
@ -86,7 +86,7 @@ static float stats2aspect(xvid_dec_stats_t *stats);
|
|||||||
|
|
||||||
static int control(sh_video_t *sh,int cmd,void* arg,...)
|
static int control(sh_video_t *sh,int cmd,void* arg,...)
|
||||||
{
|
{
|
||||||
return(CONTROL_UNKNOWN);
|
return CONTROL_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*============================================================================
|
/*============================================================================
|
||||||
@ -144,7 +144,7 @@ static int init(sh_video_t *sh)
|
|||||||
default:
|
default:
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Unsupported out_fmt: 0x%X\n",
|
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Unsupported out_fmt: 0x%X\n",
|
||||||
sh->codec->outfmt[sh->outfmtidx]);
|
sh->codec->outfmt[sh->outfmtidx]);
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Gather some information about the host library */
|
/* Gather some information about the host library */
|
||||||
@ -160,7 +160,7 @@ static int init(sh_video_t *sh)
|
|||||||
|
|
||||||
/* Initialize the xvidcore library */
|
/* Initialize the xvidcore library */
|
||||||
if(xvid_global(NULL, XVID_GBL_INIT, &xvid_ini, NULL))
|
if(xvid_global(NULL, XVID_GBL_INIT, &xvid_ini, NULL))
|
||||||
return(0);
|
return 0;
|
||||||
|
|
||||||
/* We use 0 width and height so xvidcore will resize its buffers
|
/* We use 0 width and height so xvidcore will resize its buffers
|
||||||
* if required. That allows this vd plugin to do resize on first
|
* if required. That allows this vd plugin to do resize on first
|
||||||
@ -171,7 +171,7 @@ static int init(sh_video_t *sh)
|
|||||||
/* Get a decoder instance */
|
/* Get a decoder instance */
|
||||||
if(xvid_decore(0, XVID_DEC_CREATE, &dec_p, NULL)<0) {
|
if(xvid_decore(0, XVID_DEC_CREATE, &dec_p, NULL)<0) {
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "XviD init failed\n");
|
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "XviD init failed\n");
|
||||||
return(0);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
p = malloc(sizeof(priv_t));
|
p = malloc(sizeof(priv_t));
|
||||||
@ -192,7 +192,7 @@ static int init(sh_video_t *sh)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*============================================================================
|
/*============================================================================
|
||||||
@ -221,7 +221,7 @@ static mp_image_t* decode(sh_video_t *sh, void* data, int len, int flags)
|
|||||||
|
|
||||||
|
|
||||||
if(!data || len <= 0)
|
if(!data || len <= 0)
|
||||||
return(NULL);
|
return NULL;
|
||||||
|
|
||||||
memset(&dec,0,sizeof(xvid_dec_frame_t));
|
memset(&dec,0,sizeof(xvid_dec_frame_t));
|
||||||
memset(&stats, 0, sizeof(xvid_dec_stats_t));
|
memset(&stats, 0, sizeof(xvid_dec_stats_t));
|
||||||
@ -272,7 +272,7 @@ static mp_image_t* decode(sh_video_t *sh, void* data, int len, int flags)
|
|||||||
consumed = xvid_decore(p->hdl, XVID_DEC_DECODE, &dec, &stats);
|
consumed = xvid_decore(p->hdl, XVID_DEC_DECODE, &dec, &stats);
|
||||||
if (consumed < 0) {
|
if (consumed < 0) {
|
||||||
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Decoding error\n");
|
mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Decoding error\n");
|
||||||
return(NULL);
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Found a VOL information stats, if VO plugin is not initialized
|
/* Found a VOL information stats, if VO plugin is not initialized
|
||||||
@ -280,7 +280,7 @@ static mp_image_t* decode(sh_video_t *sh, void* data, int len, int flags)
|
|||||||
if (stats.type == XVID_TYPE_VOL && !p->vo_initialized) {
|
if (stats.type == XVID_TYPE_VOL && !p->vo_initialized) {
|
||||||
sh->aspect = stats2aspect(&stats);
|
sh->aspect = stats2aspect(&stats);
|
||||||
if(!mpcodecs_config_vo(sh, stats.data.vol.width, stats.data.vol.height, IMGFMT_YV12))
|
if(!mpcodecs_config_vo(sh, stats.data.vol.width, stats.data.vol.height, IMGFMT_YV12))
|
||||||
return(NULL);
|
return NULL;
|
||||||
|
|
||||||
/* Don't take this path twice */
|
/* Don't take this path twice */
|
||||||
p->vo_initialized = !p->vo_initialized;
|
p->vo_initialized = !p->vo_initialized;
|
||||||
@ -309,7 +309,7 @@ static mp_image_t* decode(sh_video_t *sh, void* data, int len, int flags)
|
|||||||
|
|
||||||
/* If we got out the decoding loop because the buffer was empty and there was nothing
|
/* If we got out the decoding loop because the buffer was empty and there was nothing
|
||||||
* to output yet, then just return NULL */
|
* to output yet, then just return NULL */
|
||||||
return((stats.type == XVID_TYPE_NOTHING)? NULL: mpi);
|
return (stats.type == XVID_TYPE_NOTHING) ? NULL : mpi;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
@ -368,10 +368,10 @@ static float stats2aspect(xvid_dec_stats_t *stats)
|
|||||||
dar = ((float)stats->data.vol.width*wpar);
|
dar = ((float)stats->data.vol.width*wpar);
|
||||||
dar /= ((float)stats->data.vol.height*hpar);
|
dar /= ((float)stats->data.vol.height*hpar);
|
||||||
|
|
||||||
return(dar);
|
return dar;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(0.0f);
|
return 0.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user