Command line video player
Go to file
atmos4 d0f6333b98 cosmetix, merge streaming vars extern declarations into cfg-common.h, where they IMHO belong.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6672 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-07-08 07:20:37 +00:00
DOCS Update about gcc 3.0.4. The problem is not Red Hat specific. 2002-07-07 22:55:46 +00:00
Gui - add icon (nice, but very ugly hakk:) 2002-07-05 23:47:00 +00:00
TOOLS Jürgen Hammelmann: I put a new option "-mpgonly" to the script, for those, who only want to 2002-06-22 23:49:50 +00:00
TVout
debian for 0.90 release 2002-07-03 21:42:38 +00:00
drivers linux-2.5.x support patch by Sytse Wielinga <s.b.wieling at student.utwente.nl> 2002-06-28 16:35:37 +00:00
etc some cleanup, buggy->crashing, better info/comments 2002-06-28 09:33:38 +00:00
input Fix after the patch of Dominik Mierzejewski. Try the user's input.conf 2002-06-24 12:17:23 +00:00
liba52 various openbsd and general warning fixes - patch by Björn Sandell <biorn@dce.chalmers.se> 2002-05-12 02:18:52 +00:00
libao2 cVS: --------------------------------------------------------------------- 2002-07-03 21:43:28 +00:00
libdha oops forgot to commit, part of Björn Sandells libdha obsd ppc fixes. 2002-07-04 01:10:53 +00:00
libmpcodecs yuv handling simplified (using new mpi fields) 2002-07-07 16:25:36 +00:00
libmpdemux Add missing authentication for asf streaming. 2002-07-08 04:11:23 +00:00
libmpeg2 obsoleted, use vd_libmpeg2.c 2002-04-18 14:45:43 +00:00
libvo interlacing support - Klaus Stengel <ks1@inter-ject.de> 2002-07-06 15:20:34 +00:00
linux date: 2002/06/16 09:10:00; author: nickols_k; state: Exp; lines: +17 -13 2002-06-21 02:20:30 +00:00
loader yvu9 and if09 support. fixed i420,iyuv handling 2002-06-23 16:03:08 +00:00
mp3lib Cygwin stdcall mismatch fix. 2002-05-24 01:56:01 +00:00
postproc more scaling algos 2002-07-04 13:08:37 +00:00
vidix removed genfb and nvidia drivers 2002-07-05 15:38:56 +00:00
.cvsignore added some debian stuff 2002-05-15 20:28:59 +00:00
Makefile Oh my god, what did I do - I spellchecked the Makefile! 2002-06-29 00:16:32 +00:00
README few fixes 2002-05-31 21:39:12 +00:00
asxparser.c Portability fix with realloc 2002-04-23 20:06:00 +00:00
asxparser.h
bswap.h
cfg-common.h cosmetix, merge streaming vars extern declarations into cfg-common.h, where they IMHO belong. 2002-07-08 07:20:37 +00:00
cfg-mencoder.h cosmetix, merge streaming vars extern declarations into cfg-common.h, where they IMHO belong. 2002-07-08 07:20:37 +00:00
cfg-mplayer-def.h
cfg-mplayer.h cosmetix, merge streaming vars extern declarations into cfg-common.h, where they IMHO belong. 2002-07-08 07:20:37 +00:00
cfgparser.c mp_msg level fix 2002-05-02 10:43:27 +00:00
cfgparser.h
codec-cfg.c new global codec flag: align16 2002-06-25 22:26:34 +00:00
codec-cfg.h new global codec flag: align16 2002-06-25 22:26:34 +00:00
configure detectin of __restrict keyword - patch by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 2002-07-06 15:20:10 +00:00
cpudetect.c more cpudetect cosmetics 2002-05-20 01:00:51 +00:00
cpudetect.h
cputable.h
darwinfixlib.sh Darwin needs to run ranlib on any static lib before linking, we do this in this script just before the final linking. 2002-05-03 19:23:15 +00:00
divx4_vbr.c we don't need dl nor stat functions - why to include tehir headers... 2002-03-23 19:14:13 +00:00
divx4_vbr.h
dll_init.c yvu9 and if09 support 2002-06-23 16:01:35 +00:00
dll_init.h warning & newline fixes by Dominik Mierzejewski <dominik@rangers.eu.org> 2002-06-07 22:43:29 +00:00
fibmap_mplayer.c
fifo.c
find_sub.c new osd code, use osd objs to follow changes and do minimal updates 2002-04-15 19:17:12 +00:00
get_path.c
help_diff.sh This script has no bash specific stuff, it's all standard bourne shell, so execute with sh. 2002-06-09 14:48:16 +00:00
help_mp-cs.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-de.h sync 2002-07-04 12:04:55 +00:00
help_mp-dk.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-el.h Translated by: Ioannis Panteleakis <pioann@csd.auth.gr> 2002-06-04 20:09:43 +00:00
help_mp-en.h typo 2002-07-06 08:01:12 +00:00
help_mp-es.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-fr.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-hu.h - add icon (nice, but very ugly hakk:) 2002-07-05 23:47:00 +00:00
help_mp-it.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-ko.h 100l too 2002-06-03 21:58:53 +00:00
help_mp-nl.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-no.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-pl.h sync 2002-07-06 08:20:07 +00:00
help_mp-pt_BR.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-ro.h
help_mp-ru.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-sk.h add VCD support for GUI 2002-06-03 15:06:32 +00:00
help_mp-uk.h translated by Volodymyr M. Lisivka <lvm@mystery.lviv.net> 2002-06-12 20:18:12 +00:00
lirc_mp.c
lirc_mp.h
mangle.h OpenBSD, NetBSD portability patches by 2002-04-27 22:42:27 +00:00
me-opt-reg.c
mencoder.c -frames 0 fix, multifile frames support by tibcu 2002-06-28 17:13:18 +00:00
mixer.c add mute support ( step 1 ) and fixed panscan bugs (1000l for me) 2002-06-06 07:13:57 +00:00
mixer.h add mute support ( step 1 ) and fixed panscan bugs (1000l for me) 2002-06-06 07:13:57 +00:00
mmx.h
mmx_defs.h warning & newline fixes by Dominik Mierzejewski <dominik@rangers.eu.org> 2002-06-07 22:43:29 +00:00
mp-opt-reg.c Initial support for dxr2. Based on patch from Tobias Diedrich <ranma@gmx.at>. 2002-05-13 13:15:40 +00:00
mp_msg-mencoder.c gui vs. mencoder conflict workaround 2002-05-03 22:05:46 +00:00
mp_msg.c Extend maximum mp_msg message size, some translations need it or help message will be cutted. 2002-06-05 02:24:35 +00:00
mp_msg.h msg/i18n fixes and some printf->mp_msg 2002-06-03 23:23:03 +00:00
mplayer.c add equalizer support and fix some small bug... 2002-07-03 18:57:52 +00:00
mplayer.h add equalizer support and fix some small bug... 2002-07-03 18:57:52 +00:00
my_profile.c
my_profile.h warning & newline fixes by Dominik Mierzejewski <dominik@rangers.eu.org> 2002-06-07 22:43:29 +00:00
playtree.c Portability fix with realloc 2002-04-23 20:06:00 +00:00
playtree.h
playtreeparser.c 10L don't add a base path to the urls 2002-07-07 04:07:57 +00:00
playtreeparser.h
spudec.c Suppress garbage at the end of some subtitles. 2002-06-17 19:11:22 +00:00
spudec.h Improvment for spu subtitles. 2002-05-17 23:47:27 +00:00
subreader.c subrip sometimes uses pipe as newline separator - patch by MOLNAR Andor <dolphy@inf.elte.hu> 2002-07-06 15:19:08 +00:00
subreader.h added dump subtitles to .srt 2002-05-27 17:20:55 +00:00
version.sh Fix for darwins date 2002-05-03 19:17:19 +00:00
vobsub.c applied 64bit patch from Ulrich Hecht <uli at suse dot de> 2002-05-23 15:27:49 +00:00
vobsub.h Improvment for spu subtitles. 2002-05-17 23:47:27 +00:00
xacodec.c yvu9 and if09 support 2002-06-23 16:01:35 +00:00
xacodec.h

README

Welcome to MPlayer, the Unix movie player. MPlayer can play most standard video
formats out of the box and almost all others with the help of external codecs.
MPlayer currently works best from the command line, but there is a GUI with
skin support in the alpha development stage.

This document is for getting you started in a few minutes.  It cannot answer
all of your questions.  If you have problems, please read the documentation in
DOCS/documentation.html.  It is extensive and should answer most of your 
questions. Also read the manpage to learn how to use MPlayer.

To compile MPlayer with X11 support, you need to have the XFree86 development
packages installed, for the GUI you also need the GTK development packages.

Before you start...
Unless you know what are you doing, consult DOCS/video.html to see which driver
to use with your video card to get the best video quality and performance.
Most cards require special drivers not included with standard X11, to drive
the 2-D video acceleration features (YUV, scaling etc) of your card!

A quick and incomplete list of recommendations:
- ATI cards: get the GATOS drivers for X11/Xv or use vidix
- Matrox G200/G4x0/G550: compile and use mga_vid for Linux, use vidix for BSD
- 3dfx Voodoo3/Banshee: get XFree86 4.2.0+ for Xv or use the tdfxfb driver
- nVidia cards: get the X11 driver from www.nvidia.com for Xv support
Without having accelerated video, even a 800MHz P3 may be slow to play DVD!

___________________________________
STEP1: Installing FFmpeg libavcodec
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If you are using an official release, skip this step, since official releases
always include libavcodec. To verify this check if the libavcodec subdirectory
is empty or contains the sources!

The FFmpeg project provides libavcodec, a very portable MPEG4/DivX codec with
excellent speed and quality.  It is the preferred codec of MPlayer for playing
mpeg4 and divx video.  You have to get libavcodec directly from the FFmpeg CVS
server. Use the following commands in a suitable directory outside the MPlayer
source directory:

cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login
cvs -z9 -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg/libavcodec

When asked for a password, you can just hit enter.

Now, replace the empty libavcodec directory with the FFmpeg libavcodec source
by removing the libavcodec subdirectory in the MPlayer source tree and then
copying (symbolic linking does not suffice!) the freshly downloaded FFmpeg
libavcodec directory back into the MPlayer source tree.


______________________________
STEP2: Installing Win32 Codecs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

While MPlayer and libavcodec has built-in support for the most common audio
and video formats, some others are playable only with the Win32 DLLs
or the XAnim binary plugins. Few examples: WMV video, Divx/WMA audio, Indeo.
This step is not mandatory, but recommended for getting MPlayer to play more
different file types!

Grab the win32 codecs package from the download page

  http://www.mplayerhq.hu/homepage/dload.html

unpack it and put the contents in a directory where MPlayer will find them.
The default directory is /usr/lib/win32/ but you can change that to something
else by using the '--with-win32libdir=DIR' option when you run './configure' .

__________________________
STEP3: Configuring MPlayer
~~~~~~~~~~~~~~~~~~~~~~~~~~

MPlayer has a lot of options that get selected in this phase. Run

  ./configure

to configure MPlayer with the default options.  The options you installed above
should be autodetected, except GUI support, which has to be enabled separately,
run

  ./configure --enable-gui

if you want to use the GUI.

If something does not work as expected, try

  ./configure --help

to see the available options and select what you need.

The ./configure script prints a summary of enabled and disabled options.
If you have something installed that ./configure fails to detect, check
the file configure.log for errors and reasons for the failure. Repeat this
step until you are satisfied with the enabled feature set.

________________________
STEP4: Compiling MPlayer
~~~~~~~~~~~~~~~~~~~~~~~~

Now you can start the compilation by typing

  make

You can install MPlayer with

  make install

provided that you have write permission in the installation directory.

If all went well, you can run MPlayer by typing 'mplayer'
You should get a summary of the most common options and keys (help screen).

If you get 'unable to load shared library' or similar errors, then run
'ldd ./mplayer' to check which libraries fail and go back to STEP 3 to fix it.
Sometimes just running 'ldconfig' is enough.

NOTE: If you run Debian you can configure, compile and build a proper deb
package with only one command:

  fakeroot debian/rules binary

____________________________________________
STEP5: Installing the onscreen display fonts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

To enable OSD (onscreen status display) and ASCII/TEXT subtitles you need some
fonts. Get them from our homepage:

http://www.mplayerhq.hu/homepage/dload.html

Unpack the archive and choose one of the available font sizes.  Then copy the
font files of the corresponding size into /usr/local/share/mplayer/font/
(or whatever you set with './configure --datadir=DIR').

____________________________
STEP6: Installing a GUI skin
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Please remember that the GUI is still in the alpha development stage and not
completely finished yet. Features like playlist, preferences and equalizer
do not work at all. Expect them for the 1.0 release
Basic stuff like file selection and seeking works, though.

If you want to use the GUI you need to download a skin, since MPlayer does not
come with a skin by default. Choose one from the download page

  http://www.mplayerhq.hu/homepage/dload.html

unpack it in /usr/local/share/mplayer/Skin/. MPlayer will use the skin in 
the default/ subdirectory (/usr/local/share/mplayer/Skin/default/*) unless
told otherwise via the '-skin' switch. You should therefore rename your
skin subdirectory, make a suitable symbolic link or set the skin name in
the file mplayer.conf by 'skin=skinname'.

__________________
STEP7: Let's play!
~~~~~~~~~~~~~~~~~~

That's it for the moment.  To start playing movies, open a command line and try

  mplayer <moviefile>

or for the GUI:

  gmplayer <moviefile>
  (just 'gmplayer' is enough to use the GUI fileselector)

To play VCD track or DVD title, try:

  mplayer -vcd 2 -cdrom-device /dev/hdc
  mplayer -dvd 1 -alang en -slang hu -dvd-device /dev/hdd

See 'mplayer -help' and 'man mplayer' for further options.

'mplayer -vo help' will show you the available video output drivers. Experiment
with the '-vo' switch to see which one gives you the best performance!
If you get very jerky playback or no sound, experiment with -ao (see -ao help)
Note that jerky playback is caused by buggy audio drivers or too slow cpu/vga.
With a good audio and video driver combination, one can play DVDs and 720x576
DivX files smoothly on a Celeron 366. For slower systems, you need -framedrop.

Questions you may have are probably answered in the rest of the documentation.
The place to start reading is DOCS/faq.html and DOCS/documentation.html.