mirror of
https://github.com/mpv-player/mpv
synced 2024-12-15 19:35:49 +00:00
Command line video player
45877387a0
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@596 b3059339-0415-0410-9bf9-f77b7e298cf2 |
||
---|---|---|
debian | ||
DOCS | ||
drivers | ||
liba52 | ||
libmpeg2 | ||
libvo | ||
linux | ||
loader | ||
mp3lib | ||
TOOLS | ||
TVout | ||
xa | ||
.cvsignore | ||
alaw.c | ||
asfheader.c | ||
aviheader.c | ||
aviparse.c | ||
aviprint.c | ||
aviwrite.c | ||
cfg-mplayer-def.h | ||
cfg-mplayer.h | ||
cfgparser.c | ||
cfgparser.h | ||
codec-cfg.c | ||
codec-cfg.h | ||
codecctrl.c | ||
configure | ||
dec_audio.c | ||
demux_asf.c | ||
demux_avi.c | ||
demux_mpg.c | ||
demuxer.c | ||
demuxer.h | ||
dll_init.c | ||
dvdauth.c | ||
dvdauth.h | ||
fifo.c | ||
find_sub.c | ||
help_avp.h | ||
help_mp.h | ||
lirc_mp.c | ||
lirc_mp.h | ||
Makefile | ||
Makefile.No-DS | ||
mixer.c | ||
mixer.h | ||
mplayer.c | ||
mplayerHQ.c | ||
parse_es.c | ||
setup.sh | ||
spudec.c | ||
spudec.h | ||
stheader.h | ||
stream.c | ||
stream.h | ||
subreader.c | ||
subreader.h | ||
tvision.c | ||
vcd_read.h | ||
version.sh | ||
videodev.h |
MPlayer v0.17-pre "IdegCounter" (C) 2000-2001 Arpad Gereoffy (A'rpi/ESP-team) =============================== * See the file AUTHORS for the complete list * http://mplayer.sourceforge.net About: ~~~~~~ MPlayer is a movie player for LINUX. It plays most mpeg, avi and asf files, supported by many native and win32 DLL codecs. You can watch VCD, DVD and even DivX movies too. The another big feature of mplayer is the wide range of supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, but you can use SDL (and this way all drivers of SDL) and some lowlevel card-specific drivers (for Matrox/3dfx/SiS) too! Most of them supports software or hardware scaling, so you can enjoy movies in fullscreen. And what about the nice big antialiased shaded subtitles (.sub files) and OSD? History: ~~~~~~~~ Yes. Yet another movie player for linux. What is the special with this? It works, at least for me :) I've tried lots of players under linux (mtv,xmps,dvdview,livid/oms,VideoLAN, xine,xanim,avifile,xmmp) but they all have some problem. Mostly with special files or with audio/video sync. Most of them is unable to play both mpeg1, mpeg2 and avi (DivX) files. Many players have image quality or speed problems too. So I've decided to write/modify one... - mpg12play v0.1-v0.3: The first try, hacked together in a half hour! I've used libmpeg3 from www.heroinewarrior.com up to the version 0.3, but there were image quality and speed problems with it. - mpg12play v0.5-v0.87: Mpeg codec replaced with DVDview by Dirk Farin, it was a great stuff, but it was slow and was written in C++ (I hate C++!!!) - mpg12play v0.9-v0.95pre5: Mpeg codec was libmpeg2 (mpeg2dec) by Aaron Holtzman & Michel Lespinasse. It's great, optimized very fast C code with perfect image quality and 100% mpeg standard conformance. - MPlayer v0.3-v0.9: It was a pack of two programs: mpg12playv0.95pre6 and my new simple AVI player 'avip' based on avifile's Win32 DLL loader. - MPlayer v0.10: The mpeg and avi player in a single binary! - MPlayer v0.11: Added .asf file support, and OpenDivX (see www.projectmayo.com) en/decoding. - MPlayer v0.17 "The IdegCounter" The release version of the 0.11pre after 4 months of heavy development! Try it, and be amazed! Thousands of new features added... and of course old code was improved too, bugs removed etc. As you see, I didn't write any codecs, just some players. But I spent a lot of time finding the best way to parse bad damaged input files (both mpg and avi) and to do perfect A-V sync with seeking ability. My player is rock solid playing damaged mpeg files (useful for some VCDs), and it plays bad AVI files which are unplayable with the famous windows media player. Even AVI files without index chunk are playable! As you see, stability and quality are the most important things for me, speed has lower priority, but is still very important. What about the GUI? ~~~~~~~~~~~~~~~~~~~ I'm not a GUI programmer. I hate GUIs, I like the pure black 80x25 console. So the player has only keyboard control from the controlling console/xterm now. But there is a GUI development for the player, coordinated by Pontscho/Fresh! It's still under development, but it will be merged and released soon. BTW he needs some nice skins, if you are a good graphician, contact him!!! Supported input formats: ~~~~~~~~~~~~~~~~~~~~~~~~ - VCD (Video CD) directly from CD-ROM or from CDRwin's .bin image file - DVD, directly from your DVD disk, using optional libcss for decryption - MPEG 1/2 System Stream (PS/PES/VOB) and Elementary Stream (ES) file formats - RIFF AVI file format - ASF 1.0 file format Supported audio & video codecs: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *** See DOCS/CODECS for the complete list! *** The most important video codecs: - mpeg1 (VCD) and mpeg2 (DVD) video - DivX, OpenDivX and other MPEG4 variants - Windows Media Video 7 (WMV1) used in .wmv files - Intel Indeo codecs (3.1,3.2,4.1,5.0) - MJPEG, ASV2 and other hardware formats The most important audio codecs: - mpeg layer 2, and layer 3 (MP3) audio - AC3 dolby audio - alaw, msgsm, pcm and other simple old audio formats Supported video output devices: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ General: - x11: X11 with SHM extension - xv: X11 using overlays with the Xvideo extension (hardware YUV & scaling) - gl: OpenGL renderer, works only with Utah-GLX! (no DRI or nVidia drivers) - dga: X11 DGA extension - fsdga:X11 DGA extension with fullscreen scaling (only 24/32bpp and MPEG!) - fbdev:Output to general framebuffers - svga: Output to SVGAlib - sdl: SDL >= v1.1.7 driver (supports software scaling, and versions >=1.1.8 even support Xvideo, thus hardware rendering) Card specific: - mga: Matrox G200/G400 hardware YUV overlay via the mga_vid device - xmga: Matrox G200/G400 overlay (mga_vid) in X11 window (Xv emulation on X 3.3.x !) - syncfb: Matrox G400 YUV support on framebuffer (not tested, maybe broken) - 3dfx: Voodoo2/3 hardware YUV (/dev/3dfx) support (not yet tested, maybe broken) Special: - png: PNG files output (use -z switch to set compression) - pgm: PGM files output (for testing purposes) - md5: MD5sum output (for mpeg conformance tests) - odivx:OpenDivX AVI File writer (use -br to set encoding bitrate) - null: Null output (for speed tests/benchmarking) NOTE: check DOCS/VIDEOCARDS ! Supported audio output devices: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - OSS driver - ALSA driver with OSS emulation (NOT recommended, causes annoying delays) - ESD with the esddsp utility (not tested, not recommended, see ALSA) NOTE: check DOCS/SOUNDCARDS for details! Speed: ~~~~~~ Most of time-critical parts are optimized for MMX/MMXext/SSE/3DNow!. You can improve rendering speed by setting up MTRR registers, see doc in MTRR. Some *old* benchmark results can be found in the doc file SPEED. Usage: ~~~~~~ mplayer [options] [-vo driver] [path/]filename Options: see `mplayer -h' for options see `mplayer -vo help' for list of available output drivers Keys: <- or -> seek backward/forward 10 seconds up or down seek backward/forward 1 minute p or SPACE pause movie (press any key to continue) q or ^C stop playing and quit program o toggle OSD : none / seek / seek+timer / and * decrease/increase volume m toggle using master/pcm channel for volume setting Examples: mplayer -vo x11 /mnt/Films/Contact/contact2.mpg mplayer -afm 3 /mnt/DVDtrailers/alien4.vob mplayer -vcd 2 /dev/cdrom mplayer -dvd /dev/dvd /mnt/dvd/matrix.vob mplayer -alsa -abs 65536 -delay -0.4 -nobps ~/movies/test.avi Note: in order to use Matrox YUV driver (-vo mga or xmga), first you'll have to load the driver: insmod drivers/mga_vid.o , or to make it automatic insert the following line at the end of /etc/modules.conf: alias char-major-178 mga_vid and run 'depmod -a' . License: ~~~~~~~~ Since MPlayer incorporates a lot of code from other projects, this isn't decided yet. We're going for GPL (will be pretty hard, though). TV output: ~~~~~~~~~~ If you have a Matrox G400 Dual-Head card, you can watch movies on TV, using TV-out feature of the second head. You must have matroxfb support enabled in your kernel (2.4.x kernels). You don't need X11 for this! Tested only with PAL TV! cd TVout ./modules ./cloning or ./independ ./TV-704x528 (or another TV* script) Sending bugreports: ~~~~~~~~~~~~~~~~~~~ First please read all the docs in this package, most of the problems are described somewhere. At least read the Troubleshooting section! We don't like answering questions which are already answered in this readme or other docs. You should try the latest development version (from CVS) too, maybe your bug is already fixed, but the new version hasn't been released. If you couldn't solve the problem, then send a quality bugreport via E-Mail to the MPlayer-users list : mplayer-users@lists.sourceforge.net *NEVER* send attached AVIs, MPEGs, or any big files to this list or private!!! Upload them to ftp://thot.banki.hu/incoming/MPlayer/ , and inform the list about your upload. Please include these: - your kernel version number ('uname -a') - linux distribution and glibc version (example: Slackware 7.1 + glibc 2.1.3) - gcc and binutils version ('gcc -v' and 'as --version') - your X11 version (example: X 4.0.2 + DRI snapshot2001jan12) - video card vendor/model (example: Matrox G400 DH MAX AGP) - sound card model+driver (example: Creative SBLive! with OSS (kernel) ) - CPU vendor and type (example: Intel Celeron2-566 at 850MHz) Also include the required logs (as attachment, may be compressed zip/gz/bz2) depending the problem type (see bellow at Troubleshooting section). Do not send level-0 logs, always use the mplayer option '-v' when making log: ./configure &>configure.log make &>make.log mplayer -v test.avi &>play.log If we ask you for the file, then you have two choices: - upload the file to ftp://thot.banki.hu/incoming (at least a few megabytes) - send the exact URL of the file, and we'll download it soon. Please do not ask for features already listed in the TODO! Troubleshooting: ~~~~~~~~~~~~~~~~ 1. Please read the docs first... 2. If you have compiling problems: - if you are an experienced programmer, please try to fix it, and send us the patch - if gcc reports problems around inttypes.h, try to copy DOCS/inttypes.h to the directory where the error occured. (or upgrade glibc to 2.1/newer) - if gcc reports problems around video_out_gl.c, try disabling OpenGL support: ./configure --disable-gl (you have broken OpenGL headers/libs) - if you are a user, send us a bugreport (see above), including these: - output of ./configure - output of make - config.h and all of config.mak files Note: many users reported that SSE was not detected while running on P3. Current stable 2.2.x kernels does NOT support SSE, so you can't use it without patches or using the 2.4.x series. (or try latest 2.2.19 or newer) 3. If you have a problem with the player, please run it with -v option, and send the output of it, with a detailed description of the problem. - can't play AVI files: check that codec .DLL and .ACM files are installed to /usr/lib/win32/ and are all lowercase (divxc32.dll instead of DivXc32.DLL) 4. If you have a file-specific problem (can't play a special file, crashes with it or similar) then please run with -v -v -v (debug level 3). Send us the output and the problem description via email bugreport. We may ask you to upload the file. - if it segfaults with an AVI file with MP3 audio, try with -afm 1 or -afm 4 - if it's still bad, try with -nosound 5. If you have problem with display driver, please first check the list above, many of them isn't yet capable to AVI playing, and some of them are untested and/or unfinished. 6. If you have speed problems (too slow playing), then please first check that: - you don't use OpenGL driver while have software-only opengl (Utah-GLX disabled, or not yet installed, conflicting libs installed, or your hardware not supported etc...) - you have set up MTRR registers properly (many new cards are really slow without setting up MTRR registers. it's NOT done by X 3.3.x! Also, there are older K6-2's, which lack MTRR support /stepping=0/). Check DOCS/MTRR ! - you have a fast machine (don't report that your 386 can't play DivX) - try with Null output (-vo null) and check CPU usage (first % value) 7. sound-related problems: - maybe your card doesn't support 48kHz playback and the movie requires it. - try MPlayer with the -noalsa option - compile MPlayer with --disable-select - delayed audio with some AVI files: try with -bps or -nobps option! - if you experienced delayed audio, try to compensate with -delay or -abs. you can specify audio card's buffer size in bytes with -abs option, or specify audio delay in seconds (positive/negative float) with -delay for example: mplayer -alsa -delay -0.75 test.avi mplayer -abs 65536 -delay 0.3 test.mpg - to play AVI files with VBR MP3 audio use the -mc 0 option! - no sound at all: check that you have working OSS driver (/dev/dsp), and it isn't used by another program (for example esd, xmms etc.) - use OSS. If the problem persists, use ALSA ;) 8. unsupported codecs (AVI files): Check DOCS/CODECS Contact information: ~~~~~~~~~~~~~~~~~~~~ Homepage: http://mplayer.sourceforge.net Mailing lists: ~~~~~~~~~~~~~~ There are some public mailing lists on MPlayer. Subscribing can be achieved on the following addresses: - MPlayer users list: (send your ideas, bugreports, feature requests here) http://lists.sourceforge.net/lists/listinfo/mplayer-users - MPlayer announce: (information about new releases or big changes in CVS) http://lists.sourceforge.net/lists/listinfo/mplayer-announce - MPlayer & Matrox G200/G400/G450 users: (about TV-out, mga_vid, syncfb, Xv) http://lists.sourceforge.net/lists/listinfo/mplayer-matrox - MPlayer CVS-log: (announce about _every_ CVS commit) http://lists.sourceforge.net/lists/listinfo/mplayer-cvslog Standard Disclaimer: ~~~~~~~~~~~~~~~~~~~~ Use only at your own risk! There may be errors and inaccuracies that could damage your system or your eye. Proceed with caution, and although this is highly unlikely, we don't take any responsibility for that!