# HG changeset patch # User diego # Date 1044835200 0 # Node ID 1b344471369427710ed57f1cea20adfdcae71fa8 # Parent 007a1bdce1f4250275a8c90bc74d1b579c4881ce Move English files to en/ subdirectory. diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/bugreports.html --- a/DOCS/bugreports.html Sun Feb 09 21:35:27 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,289 +0,0 @@ - - - - - Bug reporting - MPlayer - The Movie Player for Linux - - - - - - - -

Appendix B - How to report bugs

- -

Good bug reports are a very valuable contribution to the development of any - software project. But just like writing good software, good problem reports - involve some work. Please realize that most developers are extremely busy and - receive obscene amounts of email. So while your feedback is crucial in - improving MPlayer and very much appreciated, please understand that you - have to provide all of the information we request and follow the - instructions in this document closely.

- - -

B.1 How to fix bugs

- -

If you feel have the necessary skills you are invited to have a go at fixing - the bug yourself. Or maybe you already did that? Please read - this short document to find out how to get - your code included in MPlayer. The people on the - mplayer-dev-eng - mailing list will assist you if you have questions.

- - -

B.2 How to report bugs

- -

First of all please try the latest CVS version of MPlayer as your bug - might already be fixed there. Development moves extremely fast, most problems - in official releases are reported within days or even hours, so please use - only CVS to report bugs. CVS instructions can be found at the bottom of - this page or in the - README. If this did not help please refer to the - list of known bugs and the - rest of the documentation. If your problem is not known or not solvable by our - instructions, then please report the bug.

- -

Please do not send bug reports privately to individual developers. This is - community work and thus there might be several people interested in it. - Sometimes other users already experienced your troubles and know how to - circumvent a problem even if it is a bug in MPlayer code.

- -

Please describe your problem in as much detail as possible. Do a little - detective work to narrow down the circumstances under which the problem - occurs. Does the bug only show up in certain situations? Is it specific to - certain files or file types? Does it occur with only one codec or is it codec - independent? Can you reproduce it with all output drivers? The more - information you provide the better are our chances at fixing your problem. - Please do not forget to also include the valuable information requested below, - we will be unable to properly diagnose your problem otherwise.

- -

An excellent and well written guide to asking questions in public forums is - How To Ask Questions The Smart Way - by Eric S. Raymond. There is another - called - How to Report Bugs Effectively - by Simon Tatham. If - you follow these guidelines you should be able to get help. But please - understand that we all follow the mailing lists voluntarily in our free time. - We are very busy and cannot guarantee that you will get a solution for your - problem or even an answer.

- - -

B.3 Where to report bugs

- -

Subscribe to the mplayer-users mailing list:
-     http://mplayerhq.hu/mailman/listinfo/mplayer-users
- and send your bug report to:
-     mplayer-users@mplayerhq.hu

- -

The language of this list is English. Please follow the standard - Netiquette Guidelines and - do not send HTML mail to any of our mailing lists. You will only get - ignored or banned. If you do not know what HTML mail is or why it is evil, - read this fine document. It - explains all the details and has instructions for turning HTML off. Also note - that we will not individually CC (carbon-copy) people so it is a good idea to - subscribe to actually receive your answer.

- - -

B.4 What to report

- -

You may need to include log, configuration or sample files in your bug - report. If some of them are quite big then it is better to upload them to our - FTP server in a compressed - format (gzip and bzip2 preferred) and include only the path and file name in - your bug report. Our mailing lists have a message size limit of 80k, if you - have something bigger you have to compress or upload it.

- - -

B.4.1 System Information

- - - - -

B.4.2 Hardware and drivers

- - - - -

B.4.3 Configure problems

- -

If you get errors while running ./configure, or autodetection - of something fails, read configure.log. You may find the answer - there, for example multiple versions of the same library mixed on your system, - or you forgot to install the development package (those with the -dev suffix). If you think there is a bug, include configure.log in your bug - report.

- - -

B.4.4 Compilation problems

- -Please include these files: - - - -Only if compilation fails below one of these directories, include these files: - - - - -

B.4.5 Playback problems

- -

Please include the output of MPlayer at verbosity level 1, but - remember to not truncate the output when you paste it into your mail. - The developers need all of the messages to properly diagnose a problem. You - can direct the output into a file like this:

- -

    mplayer -v [options] [filename] > mplayer.log 2>&1

- -

If your problem is specific to one or more files, then please upload the - offender(s) to:

- -

    ftp://mplayerhq.hu/MPlayer/incoming/

- -

Also upload a small text file having the same base name as your file - with a .txt extension. Describe the problem you are having with the - particular file there and include your email address as well as the output - of MPlayer at verbosity level 1. Usually the first 1-5 MB of a file are - enough to reproduce the problem, but to be sure we ask you to:

- -

    dd if=yourfile of=smallfile bs=1024k count=5

- -

It will take the first five megabytes of 'your-file' and - write it to 'small-file'. Then try again on this small file - and if the bug still shows up your sample is sufficient for us. Please - do not ever send such files via mail! Upload it, and send - only the path/filename of the file on the FTP-server. If the file is - accessible on the net, then sending the exact URL is - sufficient.

- - -

B.4.6 Crashes

- -

You have to run MPlayer inside gdb and send us the complete - output or if you have a core dump of the crash you can extract useful - information from the Core file. Here's how:

- - -

B.4.6.1 How to conserve information about a reproducible crash

- -Recompile MPlayer with debugging code enabled: - -

    ./configure --enable-debug=3
-     make

- -and then run MPlayer within gdb using: - -

    gdb ./mplayer

- -You are now within gdb. Type: - -

    run -v [options-to-mplayer] filename

- -and reproduce your crash. As soon as you did it, gdb will -return you to the command line prompt where you have to enter - -

    bt
-     disass $pc-32 $pc+32
-     info all-registers

- - -

B.4.6.2 How to extract meaningful information from a core dump

- -

Please create the following command file:

- -

bt
- disass $pc-32 $pc+32
- info all-registers

- -

Then simply execute the following on your command line:

- -

    gdb mplayer --core=core -batch --command=command_file > mplayer.bug

- - -

B.5 I know what I am doing...

- -

If you created a proper bug report following the steps above and you are - confident it is a bug in MPlayer, not a compiler problem or broken - file, you have already read the documentation and you could not find a - solution, your sound drivers are OK, then you might want to subscribe to the - mplayer-advusers list and send your bug report there to get a better and - faster answer.

- Please be advised that if you post newbie questions or questions answered - in the manual there, you will be ignored or flamed instead of getting an - appropriate answer.
- So do not flame us and subscribe to -advusers only if you really know - what you are doing and feel like being an advanced MPlayer user or - developer. If you meet these criteria it should not be difficult to find - out how to subscribe...

- - - diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/cd-dvd.html --- a/DOCS/cd-dvd.html Sun Feb 09 21:35:27 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,266 +0,0 @@ - - - - - CD, DVD, VCD - MPlayer - The Movie Player for Linux - - - - - - - -

4.1 CD/DVD drives

- -

Linux documentation excerpt:

- -

Modern CD-ROM drives can attain very high head speeds, yet some CD-ROM drives - are capable of running at reduced speeds. There are several reasons that might - make you consider changing the speed of a CD-ROM drive:

- - - -

You can reduce the speed of IDE CD-ROM drives with hdparm or a - program called setcd. It works like this:

- -

    hdparm -E [speed] [cdrom device]

- -

    setcd -x [speed] [cdrom device]

- -

You can also try

- -

    echo current_speed:4 > /proc/ide/[cdrom device]/settings

- -

but you will need root privileges. The following command may also help:

- -

    echo file_readahead:2000000 > /proc/ide/[cdrom device]/settings

- -

This sets prefetched file reading to 2MB, which helps with scratched CD-ROMs. - If you set it to too high, the drive will continuously spin up and down, and - will dramatically decrease the performance. - It is recommended that you also tune your CD-ROM drive with - hdparm:

- -

    hdparm -d1 -a8 -u1 (cdrom device)

- -

This enables DMA access, read-ahead, and IRQ unmasking (read the - hdparm man page for a detailed explanation).

- -

Please refer to "/proc/ide/[cdrom device]/settings" for - fine-tuning your CD-ROM.

- -

SCSI drives do not have a uniform way of setting these parameters (Do you - know one? Tell us!) There is a tool that works for - Plextor SCSI drives.

- -

FreeBSD:

- -

    Speed: cdcontrol [-f device] speed [speed]

-

    DMA: sysctl hw.ata.atapi_dma=1

- - -

4.2 DVD playback

- -

For the complete list of available options, please read the man page. - The Syntax for a standard Digital Versatile Disc (DVD) is as follows:

- -

mplayer -dvd <track> [-dvd-device <device>]

- -

Example: mplayer -dvd 1 -dvd-device /dev/hdc

- -

The default DVD device is /dev/dvd. If your setup differs, - make a symlink or specify the correct device on the command line with the - -dvd-device option.

- -

New-style DVD support (mpdvdkit2)

- -

MPlayer uses libdvdread and libdvdcss for - DVD decryption and playback. These two libraries are contained in the - libmpdvdkit2/ subdirectory of the MPlayer source tree, you - do not have to install them separately. We opted for this solution because - we had to fix a libdvdread bug and apply a patch which adds - cracked CSS keys caching support to libdvdcss. This results - in a large speed increase because the keys do not have to be cracked every time - before playing.

- -

MPlayer can also use system-wide libdvdread and - libdvdcss libraries, but this solution is not recommended, - as it can result in bugs, library incompatibilities and slower speed.

- -

DVD Navigation support (dvdnav)

- -

Support for DVD navigation via dvdnav was being worked on, but - it was never finished properly and it is currently unmaintained. Who knows, it - might even compile.

- -

Old-style DVD support - OPTIONAL

- -

Useful if you want to play encoded VOBs from hard disk. Compile and - install libcss 0.0.1 (not newer) for this (If MPlayer fails to - detect it, use the -csslib /path/to/libcss.so option). To use it, - you need to be root, use a suid root MPlayer binary or let MPlayer call the - suid-root fibmap_mplayer wrapper program.

- -

DVD structure

- -

DVD disks have 2048 bytes per sector with ECC/CRC. They usually have an UDF - filesystem on a single track, containing various files (small .IFO and .BUK - files and big (1GB) .VOB files). They are real files and can be copied/played - from the mounted filesystem of an unencrypted DVD.

- -

The .IFO files contain the movie navigation information (chapter/title/angle - map, language table, etc) and are needed to read and interpret the .VOB - content (movie). The .BUK files are backups of them. They use sectors - everywhere, so you need to use raw addressing of sectors of the disc to - implement DVD navigation or decrypt the content.

- -

The whole old-style DVD support with libcss therefore needs a mounted DVD - filesystem and raw sector-based access to the device. Unfortunately you must - (under Linux) be root to get the sector address of a file. You have the - following choices:

- - - -

Sometimes /dev/dvd cannot be read by users, so the libdvdread - authors implemented an emulation layer which transfers sector addresses to - filenames+offsets, to emulate raw access on top of a mounted filesystem - or even on a hard disk.

- -

libdvdread even accepts the mountpoint instead of the device name for raw - access and checks /proc/mounts to get the device name. It was - developed for Solaris, where device names are dynamically allocated.

- -

The default DVD device is /dev/dvd. If your setup differs, - make a symlink, or specify the correct device on the command line with the - -dvd-device option.

- -

DVD authentication

- -

The authentication and decryption method of the new-style DVD support is done - using a patched libdvdcss (see above). The method can be specified through the - environment variable DVDCSS_METHOD, which can be set to - key, disk or title.

- -

If nothing is specified it tries the following methods - (default: key, title request):

- -
    -
  1. bus key: This key is negotiated during authentication (a long mix - of ioctls and various key exchanges, crypto stuff) and is used to encrypt - the title and disk keys before sending them over the unprotected bus - (to prevent eavesdropping). The bus key is needed to get and predecrypt the - crypted disk key.
  2. -
  3. cached key: MPlayer looks for already cracked - title keys which are stored in the ~/.mplayer/DVDKeys directory - (fast ;).
  4. -
  5. key: If no cached key is available, MPlayer tries to - decrypt the disk key with a set of included player keys.
  6. -
  7. disk: If the key method fails (e.g. no included player keys), - MPlayer will crack the disk key using a brute force algorithm. - This process is CPU intensive and requires 64 MB of memory (16M 32Bit - entries hash table) to store temporary data. This method should always - work (slow).
  8. -
  9. title request: With the disk key MPlayer requests the crypted title - keys, which are inside hidden sectors using ioctl(). - The region protection of RPC-2 drives is performed in this step and may - fail on such drives. If it succeeds, the title keys will be decrypted with - the bus and disk key.
  10. -
  11. title: This method is used if the title request failed and does - not rely on any key exchange with the DVD drive. It uses a crypto attack to - guess the title key directly (by finding a repeating pattern in the - decrypted VOB content and guessing that the plain text corresponding to the - first encrypted bytes is a continuation of that pattern). - The method is also known as "known plaintext attack" or "DeCSSPlus". - In rare cases this may fail because there is not enough encrypted data on - the disk to perform a statistical attack or because the key changes in the - middle of a title. This method is the only way to decrypt a DVD stored on a - hard disk or a DVD with the wrong region on an RPC2 drive (slow).
  12. -
- -

RPC-1 DVD drives only protect region settings through software. - RPC-2 drives have a hardware protection that allows 5 changes only. It might - be needed/recommended to upgrade the firmware to RPC-1 if you have a RPC-2 DVD - drive. Firmware upgrades can be found on this - firmware page. If there is - no firmware upgrade available for your device, use the - regionset - tool to set the region code of your DVD drive (under Linux). - Warning: You can only set the region 5 times.

- - -

4.3 VCD playback

- -

For the complete list of available options, please read the man page. - The Syntax for a standard Video CD (VCD) is as follows:

- -

mplayer -vcd <track> [-cdrom-device <device>]

- -

Example: mplayer -vcd 2 -cdrom-device /dev/hdc

- -

The default VCD device is /dev/cdrom. If your setup differs, - make a symlink or specify the correct device on the command line with the - -cdrom-device option.

- -

Note: At least Plextor and some Toshiba SCSI CD-ROM drives have - horrible performance reading VCDs. This is because the the CDROMREADRAW ioctl - is not fully implemented for these drives. If you have some knowledge of SCSI - programming, please help us implement generic - SCSI support for VCDs.

- -

In the meantime you can extract data from VCDs with - readvcd - and play the resulting file with MPlayer.

- -

VCD structure

- -

VCD disks consist of one or more tracks:

- - - -

About .DAT files:

- -

The ~600 MB file visible on the first track of the mounted VCD is not a real - file! It is a so called ISO gateway, created to allow Windows to handle such - tracks (Windows does not allow raw device access to applications at all). - Under Linux you cannot copy or play such files (they contain garbage). Under - Windows it is possible as its iso9660 driver emulates the raw reading of - tracks in this file. To play a .DAT file you need the kernel driver which can - be found in the Linux version of PowerDVD. It has a modified iso9660 - filesystem (vcdfs/isofs-2.4.X.o) driver, which is able to emulate - the raw tracks through this shadow .DAT file. If you mount the disc using - their driver, you can copy and even play .DAT files with mplayer. But it - will not work with the standard iso9660 driver of the Linux kernel! - Use the -vcd option instead. Alternatives for VCD copying are - the new cdfs kernel - driver (not part of the official kernel) that shows CD sessions - as image files and cdrdao, a - bit-by-bit CD grabbing/copying application.

- - - diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/codecs-in.html --- a/DOCS/codecs-in.html Sun Feb 09 21:35:27 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,185 +0,0 @@ - - - - Codec Status Table - MPlayer - The Movie Player for Linux - - - - - - - - - - - - - - -
-

 

- -

Status of codecs support

-
-

Video codecs
Audio codecs

-
- Video codecs:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Working video codecs
codec namefourcccodecfileoutcomments
%i%F%d%Y%c
New / Untested codecs
codec namefourcccodecfileproblem
%i%F%d%c
Codecs with problems
codec namefourcccodecfileproblem
%i%F%d%c
Not yet working codecs:
codec namefourcccodecfileproblem
%i%F%d%c
- -
Audio codecs:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Working audio codecs
codec nameformatcodecfilecomments
%i%f%d%c
New / Untested codecs
codec nameformatcodecfileproblem
%i%f%d%c
Codecs with problems
codec nameformatcodecfileproblem
%i%f%d%c
Not yet working codecs
codec nameformatcodecfileproblem
%i%f%d%c
-
- - diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/codecs.html --- a/DOCS/codecs.html Sun Feb 09 21:35:27 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,539 +0,0 @@ - - - - - Codecs - MPlayer - The Movie Player for Linux - - - - - - - -

2.2 Supported codecs

- - -

2.2.1 Video codecs

- -

See the - codec status table - for the complete, daily generated list. Quite a few codecs are available for - download from our homepage. Grab them from our - codecs page.

- -

The most important ones above all:

- - -

If you have a Win32 codec not listed here which is not supported yet, please - read the codec importing HOWTO and help us add support - for it.

- - -

2.2.1.1 DivX4/DivX5

- -

This section contains information about the DivX4 and DivX5 codecs of - Project Mayo. Their first available - alpha version was OpenDivX 4.0 alpha 47 and 48. Support for this was included - in MPlayer in the past, and built by default. We also used its - postprocessing code to optionally enhance visual quality of MPEG1/2 movies. - Now we use our own, for all file types.

- -

The new generation of this codec is called DivX4 and can even decode - movies made with the infamous DivX codec! In addition it is much faster than - the native Win32 DivX DLLs but slower than libavcodec. Hence its usage as a - decoder is DISCOURAGED. However, it is useful for encoding. One - disadvantage of this codec is that it is not available under an Open Source - license.

- -

DivX4Linux works in two modes:

- -
-
-vc odivx
-
Uses the codec in OpenDivX fashion. In this case it - produces YV12 images in its own buffer, and MPlayer does colorspace - conversion via libvo. (Fast, recommended!)
- -
-vc divx4
-
Uses the colorspace conversion of the codec. - In this mode you can use YUY2/UYVY, too. (SLOW)
-
- -

The -vc odivx method is usually faster, due to the fact that it - transfers image data in YV12 (planar YUV 4:2:0) format, thus requiring much - less bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the - -vc divx4 method. For RGB modes the speed is the same, differing - at best according to your current color depth.

- -

Note: If your -vo driver supports direct rendering, then - -vc divx4 may be faster or even the fastest solution.

- -

The Divx4/5 binary codec library can be downloaded from - avifile or - divx.com. - Unpack it, run ./install.sh as root and do not forget adding - /usr/local/lib to your /etc/ld.so.conf and running - ldconfig.

- -

Get the CVS version of the OLD OpenDivx core library like this:

- -
    -
  1. cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login
  2. -
  3. cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore
  4. -
  5. This core library is split into a decore and encore library that have to - be compiled separately. For the decore Library, simply type -
    -    cd divxcore/decore/build/linux
    -    make
    -    cp libdivxdecore.so /usr/local/lib 
    -    ln -s /usr/local/lib/libdivxdecore.so /usr/local/lib/libdivxdecore.so.0 
    -    cp ../../src/decore.h /usr/local/include
    -    
    -
  6. -
  7. Alas, for the encore library there is no Linux Makefile available, and the - MMX optimized code only works on Windows. You can still compile it, though, - by using this - Makefile. -
    -    cd ../../../encore/build
    -    mkdir linux
    -    cd linux
    -    cp path/Makefile .
    -    make
    -    cp libdivxencore.so /usr/local/lib
    -    ln -s /usr/local/lib/libdivxdecore.so /usr/local/lib/libdivxdecore.so.0
    -    cp ../../src/encore.h /usr/local/include
    -    
    -
  8. -
- -

MPlayer autodetects DivX4/DivX5 if it is properly installed, just - compile as usual. If it does not detect it, you did not install or configure - it correctly.

- - -

2.2.1.2 FFmpeg DivX/libavcodec

- -

FFmpeg contains an - open source codec package, which is capable of decoding streams - encoded with - H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/HuffYUV - video, or WMA (Windows Media Audio) audio codecs. Not only some of - them can be encoded with, but it also offers higher speed than the Win32 - codecs or the DivX.com DivX4/5 library!

- -

It contains a lot of nice codecs, especially important are the MPEG4 - variants: - DivX3, DivX4, DivX5, Windows Media Video 7 (WMV1). Also a very - interesting one is the WMA decoder.

- -

If you use an MPlayer release you have libavcodec right in the - package, just build as usual. If you use MPlayer from CVS you have to - extract libavcodec from the FFmpeg CVS tree as FFmpeg releases don't - work with MPlayer. In order to achieve this do:

- -
    -
  1. cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login
  2. -
  3. cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg
  4. -
  5. Move the libavcodec directory from the FFmpeg sources to the - root of the MPlayer CVS tree. It should look like this: -

        main/libavcodec

    - Symlinking is not enough, you have to copy or move it!
  6. -
  7. Compile. Configure should detect problems before compilation.
  8. -
- -

Note: MPlayer from CVS does contain a libavcodec - subdirectory, but it does not contain the source for libavcodec! - You must follow the steps above to obtain the source for this library.

- -

With FFmpeg and my Matrox G400, I can view even the highest resolution DivX - movies without dropped frames on my K6/2 500.

- - -

2.2.1.3 XAnim codecs

- -

FOREWORD

-

- Be advised that the XAnim binary codecs are packaged with a piece of text - claiming to be a legally binding software license which, besides other - restrictions, forbids the user to use the codecs in conjunction with any - program other than XAnim. However, the XAnim author has yet to bring legal - action against anyone for codec-related issues. -

- -

INSTALLATION AND USAGE

-

MPlayer is capable of employing the XAnim codecs for decoding. Follow - the instructions to enable them:

- -
    -
  1. Download the codecs you wish to use from the - XAnim site. The 3ivx codec - is not there, but at the 3ivx site.
  2. -
  3. OR download the codecs pack from our - codecs page. -
  4. -
  5. Use the --with-xanimlibdir option to tell configure where - to find the XAnim codecs. By default, it looks for them at - /usr/local/lib/xanim/mods, /usr/lib/xanim/mods and /usr/lib/xanim. - Alternatively you can set the environment variable XANIM_MOD_DIR to - the directory of the XAnim codecs.
  6. -
  7. Rename/symlink the files, cutting out the architecture stuff, so they will - have filenames like these: vid_cvid.xa, vid_h263.xa, vid_iv50.xa.
  8. -
- -

XAnim is video codec family xanim, so you may want to use the -vfm xanim - option to tell MPlayer to use them if possible.

- -

Tested codecs include: Indeo 3.2, 4.1, 5.0, CVID, - 3ivX, h263.

- - -

2.2.1.4 VIVO video

- -

MPlayer can play Vivo (1.0 and 2.0) videos. The most suitable codec - for 1.0 files is FFmpeg's H263 decoder, you can use it with the -vc - ffh263 option. For 2.0 files, use the Win32 DLL through the - -vc vivo option. If you do not supply command line options - MPlayer selects the best codec automatically.

- - -

2.2.1.5 MPEG 1/2 video

- -

MPEG1 and MPEG2 are decoded by the multiplatform native libmpeg2 - library, whose source code is included in MPlayer. We handle buggy - MPEG 1/2 video files by catching Signal 11 (Segmentation fault), - and quickly reinitializing the codec, continuing exactly from where the - failure occurred. This recovery technique has no measurable speed penalty.

- - -

2.2.1.6 MS Video1

- -

This is a very old and very bad codec from Microsoft. In the past it was - decoded with the msvidc32.dll Win32 codec, now we have our own - open source implementation (by Mike - Melanson).

- - -

2.2.1.7 Cinepak CVID

- -

MPlayer uses its own open source, multiplatform Cinepak decoder (by - Dr. Tim Ferguson), by default. - It supports YUV outputs, so that hardware scaling is possible if the video - output driver permits it.

- - -

2.2.1.8 RealVideo

- -MPlayer supports decoding all versions of RealVideo: - - - -

It is recommended to download and install RealPlayer8 or RealONE, because - MPlayer can use their libraries to decode files with RealVideo 2.0 - - 4.0 video. The MPlayer configure script should detect the - RealPlayer libraries in the standard locations of a full installation. If it - does not, tell configure where to look with the - --with-reallibdir option.

- -

Note: RealPlayer libraries currently only work with Linux, FreeBSD, - NetBSD and Cygwin on the x86 and Alpha platforms.

- - -

2.2.1.9 XViD

- -

XViD is a forked development of - the OpenDivX codec. It happened when ProjectMayo changed OpenDivX to closed - source DivX4 (now DivX5), and the non-ProjectMayo people working on OpenDivX - got angry, then started XViD. So both projects have the same origin.

- -

ADVANTAGES

- - - -

DISADVANTAGES

- - - -

INSTALLING XVID CVS

- -

XViD is currently available only from CVS. Here are the - download and installation instructions:

- -
    -
  1. cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login
  2. -
  3. cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore
  4. -
  5. cd xvidcore/build/generic
  6. -
  7. Edit the Makefile for your architecture (probably - Makefile.linuxx86) to fit your needs.
  8. -
  9. make -f Makefile.linuxx86
  10. -
  11. Copy the divx4.h and xvid.h header files from - xvidcore/src/ to /usr/local/include/.
  12. -
  13. Get encore2.h and decore.h from the DivX4Linux - package, and copy them to /usr/local/include/.
  14. -
  15. Recompile MPlayer with --with-xvidcore=/path/to/libxvidcore.a.
  16. -
- - -

2.2.1.10 Sorenson

- -

Sorenson is a video codec family developed by Sorenson Media and - licensed to Apple who distribute it with their QuickTime Player. We are - currently able to decode all versions of Sorenson video files with the - following decoders:

- - - -

COMPILING MPLAYER WITH QUICKTIME LIBRARIES SUPPORT

- -

NOTE: currently only 32bit Intel platforms are supported.

- -
    -
  1. download MPlayer CVS
  2. -
  3. compile MPlayer with:
    - $ ./configure --enable-qtx-codecs
  4. -
  5. download QuickTime DLL pack from - http://www.mplayerhq.hu/MPlayer/releases/codecs/
  6. -
  7. extract QuickTime DLL pack to your Win32 codecs directory (default: - /usr/lib/win32)
  8. -
- - -

2.2.2 Audio codecs

- -

The most important audio codecs above all:

- - - - -

2.2.2.1 Software AC3 decoding

- -

This is the default decoder used for files with AC3 audio.

- -

The AC3 decoder can create audio output mixes for 2, 4, or 6 speakers. When - configured for 6 speakers, this decoder provides separate output of all the - AC3 channels to the sound driver, allowing for full "surround sound" - experience without the external AC3 decoder required to use the hwac3 - codec.

- -

Use the -channels option to select the number of output - channels. Use -channels 2 for a stereo downmix. For a 4 - channel downmix (Left Front, Right Front, Left Surround and Right Surround - outputs), use -channels 4. In this case, any center channel will - be mixed equally to the front channels. -channels 6 will output - all the AC3 channels as they are encoded - in the order Left, Right, Left - Surround, Right Surround, Center and LFE.

- -

The default number of output channels is 2.

- -

To use more than 2 output channels, you will need to use OSS, and have a - sound card that supports the appropriate number of output channels via the - SNDCTL_DSP_CHANNELS ioctl. An example of a suitable driver is emu10k1 (used - by Soundblaster Live! cards) from August 2001 or newer (ALSA CVS is also - supposed to work).

- - -

2.2.2.2 Hardware AC3 decoding

- -

You need an AC3 capable sound card, with digital out (SP/DIF). The card's - driver must properly support the AFMT_AC3 format (C-Media does). Connect - your AC3 decoder to the SP/DIF output, and use the -ac hwac3 - option. It is experimental but known to work with C-Media cards, - Soundblaster Live! using ALSA (but not OSS) drivers and DXR3/Hollywood+ MPEG - decoder cards.

- - -

2.2.2.3 libmad support

- -

libmad is a multiplatform MPEG - audio decoding library. It does not handle broken files well, and it - sometimes has problems with seeking.

- -

To enable support, compile with the --enable-mad configure - option.

- - -

2.2.2.4 VIVO audio

- -

The audio codec used in VIVO files depends on whether it is a VIVO/1.0 or - VIVO/2.0 file. VIVO/1.0 files have g.723 audio, and VIVO/2.0 files - have Vivo Siren audio. Both are supported.

- -

2.2.2.5 RealAudio

- -MPlayer supports decoding nearly all versions of RealAudio: - - - -

On how to install RealPlayer libraries, see the - RealVideo section.

- - -

2.2.2.6 QDesign codecs

- -

QDesign audio streams (fourcc: QDMC, QDM2) are found in MOV/QT - files. Both versions of this codec can be decoded with QuickTime libraries. - For installation instructions please see the Sorenson - video codec section.

- - -

2.2.2.7 Qualcomm codec

- -

Qualcomm audio stream (fourcc: Qclp) is found in MOV/QT files. - It can be decoded with QuickTime libraries. For installation instructions - please see the Sorenson video codec section.

- - -

2.2.3 Win32 codec importing HOWTO

- - -

2.2.3.1 VFW codecs

- -

VFW (Video for Windows) is the old Video API for Windows. Its codecs have - the .DLL or (rarely) .DRV extension. - If MPlayer fails at playing your AVI with this kind of message:

- -

    UNKNOWN video codec: HFYU (0x55594648)

- -

It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU = - HuffYUV codec, DIV3 = DivX Low Motion, etc...). Now that you know this, you - have to find out which DLL Windows loads in order to play this file. In our - case, the system.ini contains this information in a line that - reads:

- -

    VIDC.HFYU=huffyuv.dll

- -

So you need the huffyuv.dll file. Note that the audio codecs are - specified by the MSACM prefix:

- -

    msacm.l3acm=L3codeca.acm

- - -

This is the MP3 codec. Now that you have all the necessary information - (fourcc, codec file, sample AVI), submit your codec support request by mail, - and upload these files to the FTP site:

- -

    ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/

- -

Note: On Windows NT/2000/XP search for this info in the registry, e.g. search for - "VIDC.HFYU". To find out how to do this, look at the old DirectShow method below.

- -

2.2.3.2 DirectShow codecs

- -

DirectShow is the newer Video API, which is even worse than its predecessor. - Things are harder with DirectShow, since

- - - -

New Method: Using Microsoft GraphEdit (fast)

- -
    -
  1. Get GraphEdit from either DirectX SDK or - Doom9.
  2. -
  3. Start graphedit.exe.
  4. -
  5. From the menu select Graph -> Insert Filters.
  6. -
  7. Expand item DirectShow Filters.
  8. -
  9. Select the right codec name and expand item.
  10. -
  11. In the entry DisplayName look at the text in winged brackets - after the backslash and write it down (five dash-delimited blocks, the - GUID).
  12. -
  13. The codec binary is the file specified in the Filename - entry.
  14. -
- -

Note: If there is no Filename entry and DisplayName - contains something like device:dmo, then it is a DMO-Codec.

- -

Old Method: Take a deep breath and start searching the registry...

- -
    -
  1. Start regedit.
  2. -
  3. Press Ctrl-f, disable the first two checkboxes, and enable - the third. Type in the fourcc of the codec (e.g. TM20).
  4. -
  5. You should see a field which contains the path and the filename - (e.g. C:\WINDOWS\SYSTEM\TM20DEC.AX).
  6. -
  7. Now that you have the file, we need the GUID. Try searching again, but - now search for the codec's name, not the fourcc. Its name can be acquired - when Media Player is playing the file, by checking File -> Properties - -> Advanced. - If not, you are out of luck. Try guessing (e.g. search for TrueMotion).
  8. -
  9. If the GUID is found you should see a FriendlyName and a CLSID - field. Write down the 16 byte CLSID, this is the GUID we need.
  10. -
- -

Note: If searching fails, try enabling all the checkboxes. You may have - false hits, but you may get lucky...

- -

Now that you have all the necessary information (fourcc, GUID, codec file, - sample AVI), submit your codec support request by mail, and upload these files - to the FTP site:

- -

    ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/

- - - diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/documentation.html --- a/DOCS/documentation.html Sun Feb 09 21:35:27 2003 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2061 +0,0 @@ - - - - - Documentation - MPlayer - The Movie Player for Linux - - - - - - -

MPlayer - The Movie Player for LINUX

- -

© 2000-2003 Arpad Gereoffy (A'rpi/ESP-team)
- http://www.mplayerhq.hu

- -

[ English ] - [ Hungarian ] - [ German ] - [ French ] - [ Polish ] - [ Italian ] - [ Chinese ]

- -
- -

Table of Contents

- -
- - - -
- - - -

0. How to read this documentation

- -

If you are a first-time installer: be sure to read everything from here to - the end of the Installation section, and follow the links you will find. If - you have any other questions, return to the Table of Contents and - search for the topic, read the FAQ, or try grepping - through the files.

- -

The main rule of this documentation: if it's not documented, it - does not exist. If I don't say you encode audio from TV tuner, you - can't. A healthy quantity of combining ability is welcomed, though. - Good luck. You'll need it :) And for another good advice, let me quote - Chris Phillips from the - mplayer-users - mailing list:

- -
- I said a while ago that there is such a difference between a newbie and - a dumbass. No matter what you actually know about a system (linux, cars, - girls :D) you should ALWAYS be able to take a step back and be objective, - otherwise, you're just dumb IMHO. A girl i live with assumed the vacuum - cleaner was broken because it didn't suck things up. never thought to change - the bag, becasue she'd never done it before... now that's just stupid, not a - case of simply not knowing what to do... Simply not being that familiar with - your surroundings is no excuse for a) laziness and b) ignorance. So many - people seem to see the word "error" and then stop... few seem to actually - read the words on the OTHER side of the colon. -
- - - -

1. Introduction

- - -

MPlayer is a movie player for LINUX (runs on many other Unices, and - non-x86 CPUs, see the ports section). It plays most - MPEG, VOB, AVI, OGG/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, - FILM, RoQ, PVA files, supported by many native, XAnim, RealPlayer, and - Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, - 3ivx, RealMedia, and DivX movies too (and you don't need - the avifile - library at all!). Another big feature of MPlayer is the wide range of - supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, - AAlib, DirectFB, but you can also use GGI and SDL (and this way all their - drivers) and some lowlevel card-specific drivers (for Matrox, 3Dfx and Radeon, - Mach64, Permedia3) too! Most - of them supports software or hardware scaling, so you can enjoy movies in - fullscreen. MPlayer supports displaying through some hardware MPEG - decoder boards, such as the DVB and - DXR3/Hollywood+. And what about the nice big antialiased - shaded subtitles (10 supported types) with European/ISO 8859-1,2 - (Hungarian, English, Czech, etc), Cyrillic, Korean fonts, and the onscreen - display (OSD)?

- -

The 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, and - you can temporarily rebuild their indexes with the -idx option, or - permanently with MEncoder, thus enabling seeking! - As you see, stability and quality are the most important things, - but the speed is also amazing.

- -

MEncoder (MPlayer's Movie Encoder) is a simple movie encoder, - designed to encode MPlayer-playable movies - (AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA) to other - MPlayer-playable formats (see below). It can encode with various codecs, like - DivX4 (1 or 2 passes), libavcodec, - PCM/MP3/VBR MP3 audio. Also has powerful plugin system - for video manipulation.

- -

MEncoder features

- - - -

Planned features

- - - -

MPlayer and MEncoder can be distributed under the terms of the GNU General - Public License Version 2.

- - -

1.1 History

- -

This began a year ago... - I (A'rpi) have 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...

- - - - -

1.2 Installation

- -

In this chapter I'll try to guide you through the compiling and - configuring process of MPlayer. It's not easy, but it won't necessarily - be hard. If you experience a different behavior than what I explain, please - search through this documentation and you'll find your answers. If you - see links, please follow them and read carefully what they contain. It - will take some time, but it DOES worth it.

- -

You need a fairly recent system. On Linux, 2.4.x kernels are recommended.

- -

Software requirements:

- - - -

Codecs:

- - - -

Video Cards

- -

There are generally two kind of video cards. One kind (the newer cards) has - hardware scaling and YUV acceleration support, the other cards don't.

- -

YUV cards

- -

They can display and scale (zoom) the picture to any size that fits in - their memory, with small CPU usage (even when zooming), thus - fullscreen playing is nice and very fast.

- - - -

Non-YUV cards

- -

Fullscreen playing can be achieved by either enabling software scaling - (use the -zoom or -vop scale - option, but I warn you: this is slow), or switching to a small resolution - video mode, for example 352x288. If you don't have YUV acceleration, the - latter method is recommended. Video mode switching can be enabled by - using the -vm option and it works with the following drivers:

- - - -

Some cards:

- - - - -

Sound cards:

- - - -

Features:

- - - -

Then build MPlayer:

- -
-    ./configure
-    make
-    make install
-
- -

At this point, MPlayer is ready to use. The directory - $PREFIX/etc/mplayer contains the codecs.conf - file, which is used to tell the program all the codecs and their - capabilities. This file should always be kept up to date together with the - main binary.
- Check if you have codecs.conf in your home directory - (~/.mplayer/codecs.conf) left from old MPlayer versions, and remove it.

- -

Debian users can build a .deb package for themselves, - it's very simple. Just exec fakeroot debian/rules binary in - MPlayer's root directory. See - Debian packaging for detailed - instructions.

- -

Always browse the output of ./configure, and the - configure.log file, they contain information about what will be - built, and what will not. You may also want to view config.h and - config.mak files.
- If you have some libraries installed, but not detected by - ./configure, then check if you also have the proper header files - (usually the -dev packages) and their version matches. The - configure.log file usually tells you what is missing.

- -

Though not mandatory, the fonts should be installed in order to gain OSD, - and subtitle functionality. The recommended method is installing a TTF - font file and telling MPlayer to use it. See the - Subtitles and OSD section for details.

- - - -

1.3 What about the GUI?

- -

The GUI needs GTK 1.2.x (it isn't fully GTK, but the panels are). The skins - are stored in PNG format, so gtk, libpng (and their devel stuff, usually - called gtk-dev and libpng-dev) has to be installed. - You can build it by specifying --enable-gui during - ./configure. Then, to turn on GUI mode, you either

- - -

Currently you can't use the -gui option on the command line, - due to technical reasons.

- -

As MPlayer doesn't have a skin included, you have to download them if - you want to use the GUI. See the - download page. - They should be extracted to the usual system-wide directory - ($PREFIX/share/mplayer/Skin), or to - $HOME/.mplayer/Skin. MPlayer by default looks in these - directories for a directory named default, but you can use the - -skin newskin option, or the skin=newskin config - file directive to use the skin in */Skin/newskin directory.

- - -

1.4 Subtitles and OSD

- -

- MPlayer can display subtitles along with movie files. Currently the following - formats are supported:

- - -

MPlayer can dump the previously listed subtitle formats (except - the three first) into the following destination formats, with the given - options:

- - - -

The command line options differ slightly for the different formats:

- -

VobSub subtitles

- -

VobSub subtitles consist of a big (some megabytes) .SUB file, and optional - .IDX and/or .IFO files.
- Usage: If you have files like sample.sub, - sample.ifo (optional), sample.idx - you have to pass - MPlayer the -vobsub sample [-vobsubid <id>] options (full - path optional). The -vobsubid option is like -sid - for DVDs, you can choose between subtitle tracks (languages) with it. In case - that -vobsubid is omitted, MPlayer will try to use the languages - given by the -slang option and fall back to the - langidx item in the .IDX file to set the subtitle language. If - that fails, there will be no subtitles.

- -

Other subtitles

- -

The other formats consist of a single text file containing timing, - placement and text information.
- Usage: If you have a file like sample.txt, you have to pass the - option -sub sample.txt (full path optional).

- -

Adjusting subtitle timing and placement:

- -
-
-subdelay <sec>
-
Delays subtitles by <sec> seconds. Can be negative.
- -
-subfps <rate>
-
Specify frame/sec rate of subtitle file (float number)
- -
-subpos <0 - 100>
-
Specify the position of subtitles.
-
- -

If you experience a growing delay between the movie and the subtitles when - using a MicroDVD subtitle file, most likely the frame rate of the movie and - the subtitle file are different.
Please note that the MicroDVD subtitle - format uses absolute frame numbers for its timing, and therefore the - -subfps option cannot be used with this format. As - MPlayer has no way to guess the frame rate of the subtitle file, you - have to manually convert the frame rate. There is a little perl script in the - contrib directory of the MPlayer FTP site to do this conversion - for you.

- -

MPlayer will try to guess the subtitle files you want to use when playing a - movie. If, like in most cases, subtitle and movie files have the same name and - are in the same place, you do not need to set the subtitle options. Just play - the movie, MPlayer will handle the subtitles automatically.

- -

About DVD subtitles, read the DVD section.

- - -

1.4.1 MPlayer's own subtitle format (MPsub)

- -

MPlayer introduces a new subtitle format called MPsub. It was - designed by Gabucino. Basically its main feature is being - dynamically time-based (although it has frame-based mode too). Example - (from - DOCS/tech/mpsub.sub):

- -

# first number : wait this much after previous subtitle disappeared
- # second number : display the current subtitle for this many seconds
-
- 15 3
- A long long, time ago...
-
- 0 3
- in a galaxy far away...
-
- 0 3
- Naboo was under an attack.

- -

So you see, the main goal was to make subtitle - editing/timing/joining/cutting easy. And, if you - say - get an SSA - subtitle but it's badly timed/delayed to your version of the movie, you - simply do a mplayer dummy.avi -sub source.ssa -dumpmpsub. - A dump.mpsub file will be created in the current directory, - which will contain the source subtitle's text, but in MPsub format. - Then you can freely add/subtract seconds to/from the subtitle.

- -

Subtitles are displayed with a technique called 'OSD', On Screen - Display. OSD is used to display current time, volume bar, seek bar - etc.

- -

1.4.2 Installing OSD and subtitles

- -

You need an MPlayer font package to be able to use OSD/SUB feature. - There are many ways to get it:

- - - -

If you chose non-TTF fonts, UNZIP the file you downloaded to ~/.mplayer or - $PREFIX/share/mplayer. Then rename or symlink one of the extracted directories to - font (like: ln -s ~/.mplayer/arial-24 - ~/.mplayer/font). Now you have to see a timer at the upper left corner - of the movie (switch it off with the "o" key).

- - -

OSD has 4 states: (switch with 'o')

- -

(subtitles are always enabled, for disabling them please read the man - page)

- - - -

You can change default behaviour by setting osdlevel= variable - in config file, or the -osdlevel command line option.

- - -

1.4.3 OSD menu

- -

MPlayer has a completely user definiable OSD Menu interface.

- -

NOTE: the Preferences menu is currently UNIMPLEMENTED!

- -

Installation

- -
    -
  1. compile MPlayer by passing the --enable-menu parameters to - ./configure
  2. -
  3. make sure you have an OSD font installed
  4. -
  5. copy etc/menu.conf to your .mplayer - directory
  6. -
  7. copy etc/input.conf to your .mplayer - directory, or to the system-wide MPlayer config dir (default: - /usr/local/etc/mplayer)
  8. -
  9. check and edit input.conf to enable menu movement - keys (it is described there).
  10. -
  11. start MPlayer by the following example:
    - $ mplayer -menu file.avi
  12. -
  13. push any menu key you defined
  14. -
- - -

1.5 RTC

- -There are three timing methods in MPlayer. - - - -Note: NEVER install a setuid root MPlayer binary on a multiuser system! -It's a clear way for everyone to become root. - - - -

2. Features

- - -

2.1 Supported formats

- - -

2.2 Supported codecs

- - -

2.3 Video & Audio output devices

- - -

2.4 TV input

- -

This section is about how to enable watching/grabbing from V4L compatible -TV tuner. See the man page for a description of TV options and keyboard -controls.

- -

2.4.1 Compilation

- -
    -
  1. First, you have to recompile. ./configure will autodetect - kernel headers of v4l stuff and the existence of /dev/video* - entries. If they exist, TV support will be built (see the output of - ./configure).
  2. -
  3. Make sure your tuner works with another TV software in Linux, for example - xawtv.
  4. -
- -

2.4.2 Usage tips

- -The full listing of the options is available on the manual page. Here -are just a few tips: - - - -

2.4.3 Examples

- -

Dummy output, to AAlib :)
-     mplayer -tv on:driver=dummy:width=640:height=480 -vo aa
-
- Input from standard V4L
-     mplayer -tv -on:driver=v4l:width=640:height=480 -vo xv
-
- - A more sophisticated example. This makes MEncoder capture the full - PAL image, crop the margins, and deinterlace the picture using - a linear blend algorithm. Audio is compressed with a constant - bitrate of 64kbps, using LAME codec. This setup is suitable for - capturing movies.
    mencoder -tv - on:driver=v4l:width=768:height=576 \
-     -ovc lavc -lavcopts - vcodec=mpeg4:vbitrate=900 \
    -oac - mp3lame -lameopts cbr:br=64 \
    -vop - pp=lb,crop=720:544:24:16 -o output.avi

- -
- This will additionally rescale the image to 384x288 and compresses - the video with the bitrate of 350kbps in high quality mode. The - vqmax option looses the quantizer and allows the video compressor to - actualy reach so low bitrate even at the expense of the - quality. This can be used for capturing long TV series, where the - video quality isn't so important.
- -     mencoder -tv on:driver=v4l:width=768:height=576 \
-     -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
-     -oac mp3lame -lameopts cbr:br=48 \
-     -vop scale=384:288,pp=tn/lb,crop=720:540:24:18 -sws 1 -o output.avi -

- - It's also possible to specify smaller image dimensions in the - -tv option and omit the software scaling but this - approach uses the maximum available information and is a little more - resistant to noise. The bt8x8 chips can do the pixel averaging only - in the horizontal direction due to a hardware limitation.

- - -

2.5 Edit Decision Lists (EDL)

- -

The edit decision list (EDL) system allows you to automatically skip or mute - sections of videos during playback, based on a movie specific EDL - configuration file.

- -

This is useful for those who may want to watch a film in "family-friendly" - mode. You can cut out any violence, profanity, Jar-Jar Binks .. from a movie - according to your own personal preferences. Aside from this, there are other - uses, like automatically skipping over commercials in video files you - watch.

- -

The EDL file format is pretty bare-bones. Once the EDL system has reached a - certain level of maturity, an XML-based file format will probably be - implemented (keeping backwards compatibility with previous EDL formats).

- -

The maximum number of EDL entries for the current incarnation of EDL is 1000. - If you happen to need more, change the #define MAX_EDL_ENTRIES - in the edl.h file.

- -

2.5.1 Using an EDL file

- -

Include the -edl <filename> flag when you run MPlayer, - with the name of the EDL file you want applied to the video.

- -

2.5.2 Making an EDL file

- -

The current EDL file format is:

- -[begin second] [end second] [action] - -

Where the seconds are floating-point numbers and the action is either - 0 for skip or 1 for mute. Example:

- -
-5.3   7.1    0
-15    16.7   1
-420   422    0
-
- -

This will skip from second 5.3 to second 7.1 of the video, then mute at - 15 seconds, unmute at 16.7 seconds and skip from second 420 to second - 422 of the video. These actions will be performed when the playback timer - reaches the times given in the file.

- -

To create an EDL file to work from, use the - -edlout <filename> flag. During playback, when you want to - mark the previous two seconds to skip over, hit i. A - corresponding entry will be written to the file for that time. You can then go - back and fine-tune the generated EDL file.

- - - -

3. Usage

- - -

3.1 Command line

- -

MPlayer utilizes a complex playtree. It consists of global options - written as first (for example mplayer -vfm 5), and options - written after filenames, that apply only to the given filename/URL/whatever - (for example mplayer -vfm 5 movie1.avi movie2.avi -vfm 4).
- You can group filenames/URLs together using { and }. It's useful with - option -loop: mplayer { 1.avi -loop 2 2.avi } -loop 3 - will play files in this order: 1 1 2 1 1 2 1 1 2
-

- - - - - - - - -
  file  mplayer [options] [path/]filename
filesmplayer [default options] [path/]filename1 [options for filename1] filename2 [options for filename2] ...
VCDmplayer [options] -vcd trackno [-cdrom-device /dev/cdrom]
DVDmplayer [options] -dvd titleno [-dvd-device /dev/dvd]
WWWmplayer [options] http://site.com/file.asf (playlists can be used, too)
RTSPmplayer [options] rtsp://server.example.com/streamName
- -

- Latest versions of MPlayer also accept VCD and DVD tracks in URL style, just like - xine does: mplayer dvd://1 or mplayer vcd://1

- -
-  mplayer -vo x11 /mnt/Films/Contact/contact2.mpg
-  mplayer -vcd 2
-  mplayer -afm 3 /mnt/DVDtrailers/alien4.vob
-  mplayer -dvd 1 -dvd-device /dev/hdc
-  mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi
-
- - -

3.2 Control

- -

MPlayer has a fully configurable, command driven, control layer which - lets you control MPlayer with keyboard, mouse, joystick or remote - control (using LIRC). See the man page for the complete list of keyboard - controls.

- - -

3.2.1 Controls configuration

- -

MPlayer allows you bind any key/button to any MPlayer command - using a simple config file. The syntax consist of a key name followed by a - command. The default config file location is - $HOME/.mplayer/input.conf but it can be overridden using the - -input conf option (relative path are relative to - $HOME/.mplayer). - -

Example:

- -
-##
-## MPlayer input control file
-##
-
-RIGHT seek +10
-LEFT seek -10
-- audio_delay 0.100
-+ audio_delay -0.100
-q quit
-> pt_step 1
-< pt_step -1
-ENTER pt_step 1 1
-
- - -

3.2.1.1 Key names

- -

You can have a full list by running mplayer -input keylist

- -

Keyboard:

- - - -

Mouse (only supported under X):

- - - -

Joystick (support must be enabled at compile time):

- - - - -

3.2.1.2 Commands

- -

You can have a full list of known commands by running "mplayer -input cmdlist"

- - - - -

3.2.2 Control from LIRC

- -

Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, - an (almost) arbitrary remote control and control your Linux box with it! - More about it at www.lirc.org.

- -

If you have installed the lirc-package, configure will autodetect it. If - everything went fine, MPlayer will print a message like "Setting up - lirc support..." on startup. If an error occurs it will tell you. If it - doesn't tell you anything about LIRC there's no support compiled in. That's - it :-)

- -

The application name for MPlayer is - oh wonder - mplayer. - You can use any mplayer commands and even pass more than one command by - separating them with \n. Don't forget to enable the repeat flag in .lircrc - when it make sense (seek, volume, etc). Here's an excerpt from my - .lircrc:

- -
-begin
-     button = VOLUME_PLUS
-     prog = mplayer
-     config = volume 1
-     repeat = 1
-end
-
-begin
-    button = VOLUME_MINUS
-    prog = mplayer
-    config = volume -1
-    repeat = 1
-end
-
-begin
-    button = CD_PLAY
-    prog = mplayer
-    config = pause
-end
-
-begin
-    button = CD_STOP
-    prog = mplayer
-    config = seek 0 1\npause
-end
-
- -

If you don't like the standard location for the lirc-config file (~/.lircrc) - use the -lircconf <filename> option to specify another file.

- - -

3.2.3 Slave mode

- -

The slave mode allow you to build simple frontend to MPlayer. When - enabled (with the -slave option) MPlayer will read - commands separated by new line (\n) from stdin.

- - -

3.3 Streaming from network or pipes

- -

MPlayer can play files from network, using the HTTP, MMS or RTSP/RTP - protocol.

- -

Playing goes by simply using adding the URL to the command line. - MPlayer also honors the http_proxy environment variable, and uses - proxy if available. Proxy usage can also be forced:

- -

mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf

- -

MPlayer can read from stdin (NOT named pipes). This can be for example - used to play from FTP:

- -

  wget ftp://micorsops.com/something.avi -O - | mplayer -

- -

Note: it's also recommended to enable CACHE when playback from network:

- -

  wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192 -

- - - -

4. FAQ section

- - - -

5. CD/DVD section

- - - -

6. Ports

- - -

6.1 Linux

- -

The main development platform is Linux on x86, although MPlayer works on many - other Linux ports.

- - -

6.1.1 Debian packaging

- -

To build a Debian package, run the following command in the MPlayer source - directory:

- -
-    fakeroot debian/rules binary
-
- -

As root you can then install the .deb package as usual:

- -
-    dpkg -i ../mplayer_<version>.deb
-
- -

Christian Marillat has been making unofficial Debian MPlayer, MEncoder and - font packages for a while, you can (apt-)get them from his - homepage. These packages are highly - unofficial, however, as Christian made and redistributed these packages when - MPlayer was still not fully GPLed and - binary redistribution was - not allowed. Christian ignored requests to stop redistributing his packages, - which caused bad blood with MPlayer developers. Binary redistribution is not - a problem anymore, but we do not support these packages!

- - -

6.1.2 RPM packaging

- -

Dominik Mierzejewski created and maintains official Red Hat RPM packages of - MPlayer. They are available from his - homepage. - Please read the instructions there and report problems to him, not us.

- -

There are other RPM versions (SuSE now includes MPlayer in their official - distribution, Mandrake packages are available from the - P.L.F) of MPlayer, but none of them is - officially supported.

- - -

6.1.3 ARM

- -

MPlayer works on Linux PDAs with ARM CPU e.g. Sharp Zaurus, Compaq Ipaq. - The easiest way to obtain MPlayer is to get it from one of the - Openzaurus package feeds. - If you want to compile it yourself, you should look at the - mplayer - and the - libavcodec - directory in the OpenZaurus distribution buildroot. These always have the - latest Makefile and patches used for building a CVS MPlayer with libavcodec. -
If you need a GUI frontend, you can use xmms-embedded.

- - -

6.2 *BSD

- -

MPlayer runs on FreeBSD, OpenBSD, NetBSD, BSD/OS and Darwin. There are - ports/pkgsrc/fink/etc versions of MPlayer available that are probably easier - to use than our raw sources.

- -

To build MPlayer you will need GNU make (gmake - native BSD make will not - work) and a recent version of binutils.

- -

If MPlayer complains about not finding /dev/cdrom or - /dev/dvd, create an appropiate symbolic link:
- ln -s /dev/(your_cdrom_device) /dev/cdrom.

- -

To use Win32 DLLs with MPlayer you will need to re-compile the kernel with - "option USER_LDT" (unless you run FreeBSD -CURRENT, where this - is the default).

- -

6.2.1 FreeBSD

- -

If your CPU has SSE, recompile your kernel with "options CPU_ENABLE_SSE" to - use it (FreeBSD-STABLE or kernel patches required).

- -

6.2.2 OpenBSD

- -

Due to limitations in different versions of gas (relocation vs MMX), you will - need to compile in two steps: First make sure that the non-native as is first - in your $PATH and do a gmake -k, then make sure that - the native version is used and do gmake.

- - -

6.3 Solaris

- -

MPlayer should work on Solaris 2.6 or newer.

- -

On UltraSPARCs, MPlayer takes advantage of their VIS - extensions (equivalent to MMX), currently only in libmpeg2, - libvo and libavcodec, but not in mp3lib. You can watch a VOB - file on a 400MHz CPU. You'll need - mLib installed.

- -

To build the package you will need GNU make (gmake, /opt/sfw/gmake), native - Solaris make will not work. Typical error you get when building with Solaris' - make instead of GNU make:

- -
-   % /usr/ccs/bin/make
-   make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
-
- -

On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter - if GNU C/C++ compiler is configured with or without the GNU assembler.

- -

On Solaris x86, you need the GNU assembler and the GNU C/C++ compiler, - configured to use the GNU assembler! The mplayer code on the x86 platform - makes heavy use of MMX, SSE and 3DNOW! instructions that cannot be compiled - using Sun's assembler /usr/ccs/bin/as.

- -

The configure script tries to find out, which assembler program is used by - your "gcc" command (in case the autodetection fails, use the - --as=/whereever/you/have/installed/gnu-as option to tell the - configure script where it can find GNU "as" on your system).

- -

Error message from configure on a Solaris x86 system using GCC - without GNU assembler:

- -
-   % configure
-   ...
-   Checking assembler (/usr/ccs/bin/as) ... , failed
-   Please upgrade(downgrade) binutils to 2.10.1...
-
- -

(Solution: Install and use a gcc configured with "--with-as=gas")

- -

Typical error you get when building with a GNU C compiler that does - not use GNU as:

- -
-   % gmake
-   ...
-   gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
-	-fomit-frame-pointer  -I/usr/local/include   -o mplayer.o mplayer.c
-   Assembler: mplayer.c
-   "(stdin)", line 3567 : Illegal mnemonic
-   "(stdin)", line 3567 : Syntax error
-   ... more "Illegal mnemonic" and "Syntax error" errors ...
-
- -

Due to bugs in Solaris 8, you may not be able to play DVD discs larger - than 4 GB:

- - - -

On Solaris with an UltraSPARC CPU, you can get some extra speed by - using the CPU's VIS instructions for certain time consuming operations. - VIS acceleration can be used in MPlayer by calling functions in Sun's - mediaLib.

- -

VIS accelerated operations from mediaLib are used for mpeg2 video - decoding and for color space conversion in the video output drivers.

- - -

6.4 Silicon Graphics / IRIX

- -

You can either try to install the GNU install program, and (if you did not - put it in your global path) then point to the location with:

- -
-  ./configure --install-path=PATH
-
- -

Or you can use the default install delivered with IRIX 6.5 in which case you - will have to edit the Makefile a littlebit by hand. Change the following two - lines:

- -
-  $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
-
-  $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
-
- -

to:

- -
-  $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
-
-  $(INSTALL) -m 644 codecs.conf $(CONFDIR)/
-
- -

And then do (from within the MPlayer source dir):

- -
-  cp DOCS/mplayer.1 . ; cp etc/codecs.conf .
-
- -

and then go on with building and installing.

- - -

6.5 QNX

- -

Works. You'll need to download SDL for QNX, and install it. Then run - MPlayer with -vo sdl:photon and -ao sdl:nto - options, and it should be fast.

- -

The -vo x11 output will be even slower than on Linux, since - QNX has only X emulation which is VERY slow. Use SDL.

- - -

6.6 Cygwin

- -

The Cygwin port is still in its infancy. Currently there is no support for - Win32 DLLs or OpenGL. SDL is known to distort sound and image or crash - on some systems. Patches are always welcome. - Best results are achieved with the native DirectX video output driver - (-vo directx) and the native Windows waveout audio driver - (-ao win32). You should also check out the - mplayer-cygwin - mailing list for help and latest information.

- -

You have to copy or symlink etc/cygwin_inttypes.h from the - MPlayer source directory to /usr/include/inttypes.h in order to - make MPlayer compile.

- -

To get native DirectX video, download - DirectX 7 header files, - extract them to /usr/include/ or /usr/local/include/ - and recompile. If the image is distorted, try turning off hardware - acceleration with -vo directx:noaccel.

- -

Instructions and files for making SDL run under Cygwin can be found on the - libsdl site.

- -

You can play VCDs by playing the .DAT or .MPG files - that Windows exposes on VCDs. It works like this (adjust for the drive letter - of your CD-ROM):

- -

mplayer d:/mpegav/avseq01.dat

- -

mplayer /cydrive/d/MPEG2/AVSEQ01.MPG

- -

DVDs also work, just set the DVD device correctly to whatever your CD-ROM - device is:

- -

mplayer -dvd <title> -dvd-device '\\.\d:'

- -

QuickTime DLLs have also been reported to work. Compile with - --enable-qtx-codecs and put the codecs into the - default Windows DLL location, C:\WINNT\system32 or - C:\Windows\system depending on your Windows version.

- - - -

7. Encoding with MEncoder

- - - -

Appendix A - Mailing lists

- -

There are some public mailing lists on MPlayer. Unless explicitly - stated otherwise the language of these lists is English. Please do - not send messages in other languages or HTML mail! Message size limit is 80k. - If you have something bigger put it up for download somewhere. Click the - links to subscribe. On the mailing lists, the same rules about writing - and quoting apply as on usenet. Please follow them, it makes the life of - those who read your mails a lot easier. If you do not know them please - read HOWTO edit messages or - (if you are in a hurry) - - Quoting HOWTO.

- - - -

Note: You can reach the searchable mailing list archives at - http://www.mplayerhq.hu/cgi-bin/htsearch. - - - -

Appendix B - How to report bugs

- - - -

Appendix C - Known bugs

- -

Special system/CPU-specific bugs/problems:

- - -

Various A-V sync and other audio problems:

- -General audio delay or jerky sound (exists with all or many files): - - -Audio delay/de-sync specific to one or a few files: - - -No sound at all: - - -No picture at all (just plain grey/green window): - - -

Video-out problems:

- -

First note: options -fs -vm and -zoom are just recommendations, not (yet) - supported by all drivers. So it isn't a bug if it doesn't work. - Only a few driver supports scaling/zooming, don't expect this from x11 or dga.

- -

OSD/sub flickering:
- - x11 driver: sorry, it can't be fixed now
- - xv driver: use -double option

- -

Green image using mga_vid (-vo mga / -vo xmga):
- - mga_vid misdetected your card's RAM amount, reload it using mga_ram_size option

- - - -

Appendix D - MPlayer skin format

- - - -

Appendix E - Developer Cries

- - - -

Appendix F - How to send patches

- - - - diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/bugreports.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/bugreports.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,289 @@ + + + + + Bug reporting - MPlayer - The Movie Player for Linux + + + + + + + +

Appendix B - How to report bugs

+ +

Good bug reports are a very valuable contribution to the development of any + software project. But just like writing good software, good problem reports + involve some work. Please realize that most developers are extremely busy and + receive obscene amounts of email. So while your feedback is crucial in + improving MPlayer and very much appreciated, please understand that you + have to provide all of the information we request and follow the + instructions in this document closely.

+ + +

B.1 How to fix bugs

+ +

If you feel have the necessary skills you are invited to have a go at fixing + the bug yourself. Or maybe you already did that? Please read + this short document to find out how to get + your code included in MPlayer. The people on the + mplayer-dev-eng + mailing list will assist you if you have questions.

+ + +

B.2 How to report bugs

+ +

First of all please try the latest CVS version of MPlayer as your bug + might already be fixed there. Development moves extremely fast, most problems + in official releases are reported within days or even hours, so please use + only CVS to report bugs. CVS instructions can be found at the bottom of + this page or in the + README. If this did not help please refer to the + list of known bugs and the + rest of the documentation. If your problem is not known or not solvable by our + instructions, then please report the bug.

+ +

Please do not send bug reports privately to individual developers. This is + community work and thus there might be several people interested in it. + Sometimes other users already experienced your troubles and know how to + circumvent a problem even if it is a bug in MPlayer code.

+ +

Please describe your problem in as much detail as possible. Do a little + detective work to narrow down the circumstances under which the problem + occurs. Does the bug only show up in certain situations? Is it specific to + certain files or file types? Does it occur with only one codec or is it codec + independent? Can you reproduce it with all output drivers? The more + information you provide the better are our chances at fixing your problem. + Please do not forget to also include the valuable information requested below, + we will be unable to properly diagnose your problem otherwise.

+ +

An excellent and well written guide to asking questions in public forums is + How To Ask Questions The Smart Way + by Eric S. Raymond. There is another + called + How to Report Bugs Effectively + by Simon Tatham. If + you follow these guidelines you should be able to get help. But please + understand that we all follow the mailing lists voluntarily in our free time. + We are very busy and cannot guarantee that you will get a solution for your + problem or even an answer.

+ + +

B.3 Where to report bugs

+ +

Subscribe to the mplayer-users mailing list:
+     http://mplayerhq.hu/mailman/listinfo/mplayer-users
+ and send your bug report to:
+     mplayer-users@mplayerhq.hu

+ +

The language of this list is English. Please follow the standard + Netiquette Guidelines and + do not send HTML mail to any of our mailing lists. You will only get + ignored or banned. If you do not know what HTML mail is or why it is evil, + read this fine document. It + explains all the details and has instructions for turning HTML off. Also note + that we will not individually CC (carbon-copy) people so it is a good idea to + subscribe to actually receive your answer.

+ + +

B.4 What to report

+ +

You may need to include log, configuration or sample files in your bug + report. If some of them are quite big then it is better to upload them to our + FTP server in a compressed + format (gzip and bzip2 preferred) and include only the path and file name in + your bug report. Our mailing lists have a message size limit of 80k, if you + have something bigger you have to compress or upload it.

+ + +

B.4.1 System Information

+ + + + +

B.4.2 Hardware and drivers

+ + + + +

B.4.3 Configure problems

+ +

If you get errors while running ./configure, or autodetection + of something fails, read configure.log. You may find the answer + there, for example multiple versions of the same library mixed on your system, + or you forgot to install the development package (those with the -dev suffix). If you think there is a bug, include configure.log in your bug + report.

+ + +

B.4.4 Compilation problems

+ +Please include these files: + + + +Only if compilation fails below one of these directories, include these files: + + + + +

B.4.5 Playback problems

+ +

Please include the output of MPlayer at verbosity level 1, but + remember to not truncate the output when you paste it into your mail. + The developers need all of the messages to properly diagnose a problem. You + can direct the output into a file like this:

+ +

    mplayer -v [options] [filename] > mplayer.log 2>&1

+ +

If your problem is specific to one or more files, then please upload the + offender(s) to:

+ +

    ftp://mplayerhq.hu/MPlayer/incoming/

+ +

Also upload a small text file having the same base name as your file + with a .txt extension. Describe the problem you are having with the + particular file there and include your email address as well as the output + of MPlayer at verbosity level 1. Usually the first 1-5 MB of a file are + enough to reproduce the problem, but to be sure we ask you to:

+ +

    dd if=yourfile of=smallfile bs=1024k count=5

+ +

It will take the first five megabytes of 'your-file' and + write it to 'small-file'. Then try again on this small file + and if the bug still shows up your sample is sufficient for us. Please + do not ever send such files via mail! Upload it, and send + only the path/filename of the file on the FTP-server. If the file is + accessible on the net, then sending the exact URL is + sufficient.

+ + +

B.4.6 Crashes

+ +

You have to run MPlayer inside gdb and send us the complete + output or if you have a core dump of the crash you can extract useful + information from the Core file. Here's how:

+ + +

B.4.6.1 How to conserve information about a reproducible crash

+ +Recompile MPlayer with debugging code enabled: + +

    ./configure --enable-debug=3
+     make

+ +and then run MPlayer within gdb using: + +

    gdb ./mplayer

+ +You are now within gdb. Type: + +

    run -v [options-to-mplayer] filename

+ +and reproduce your crash. As soon as you did it, gdb will +return you to the command line prompt where you have to enter + +

    bt
+     disass $pc-32 $pc+32
+     info all-registers

+ + +

B.4.6.2 How to extract meaningful information from a core dump

+ +

Please create the following command file:

+ +

bt
+ disass $pc-32 $pc+32
+ info all-registers

+ +

Then simply execute the following on your command line:

+ +

    gdb mplayer --core=core -batch --command=command_file > mplayer.bug

+ + +

B.5 I know what I am doing...

+ +

If you created a proper bug report following the steps above and you are + confident it is a bug in MPlayer, not a compiler problem or broken + file, you have already read the documentation and you could not find a + solution, your sound drivers are OK, then you might want to subscribe to the + mplayer-advusers list and send your bug report there to get a better and + faster answer.

+ Please be advised that if you post newbie questions or questions answered + in the manual there, you will be ignored or flamed instead of getting an + appropriate answer.
+ So do not flame us and subscribe to -advusers only if you really know + what you are doing and feel like being an advanced MPlayer user or + developer. If you meet these criteria it should not be difficult to find + out how to subscribe...

+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/cd-dvd.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/cd-dvd.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,266 @@ + + + + + CD, DVD, VCD - MPlayer - The Movie Player for Linux + + + + + + + +

4.1 CD/DVD drives

+ +

Linux documentation excerpt:

+ +

Modern CD-ROM drives can attain very high head speeds, yet some CD-ROM drives + are capable of running at reduced speeds. There are several reasons that might + make you consider changing the speed of a CD-ROM drive:

+ + + +

You can reduce the speed of IDE CD-ROM drives with hdparm or a + program called setcd. It works like this:

+ +

    hdparm -E [speed] [cdrom device]

+ +

    setcd -x [speed] [cdrom device]

+ +

You can also try

+ +

    echo current_speed:4 > /proc/ide/[cdrom device]/settings

+ +

but you will need root privileges. The following command may also help:

+ +

    echo file_readahead:2000000 > /proc/ide/[cdrom device]/settings

+ +

This sets prefetched file reading to 2MB, which helps with scratched CD-ROMs. + If you set it to too high, the drive will continuously spin up and down, and + will dramatically decrease the performance. + It is recommended that you also tune your CD-ROM drive with + hdparm:

+ +

    hdparm -d1 -a8 -u1 (cdrom device)

+ +

This enables DMA access, read-ahead, and IRQ unmasking (read the + hdparm man page for a detailed explanation).

+ +

Please refer to "/proc/ide/[cdrom device]/settings" for + fine-tuning your CD-ROM.

+ +

SCSI drives do not have a uniform way of setting these parameters (Do you + know one? Tell us!) There is a tool that works for + Plextor SCSI drives.

+ +

FreeBSD:

+ +

    Speed: cdcontrol [-f device] speed [speed]

+

    DMA: sysctl hw.ata.atapi_dma=1

+ + +

4.2 DVD playback

+ +

For the complete list of available options, please read the man page. + The Syntax for a standard Digital Versatile Disc (DVD) is as follows:

+ +

mplayer -dvd <track> [-dvd-device <device>]

+ +

Example: mplayer -dvd 1 -dvd-device /dev/hdc

+ +

The default DVD device is /dev/dvd. If your setup differs, + make a symlink or specify the correct device on the command line with the + -dvd-device option.

+ +

New-style DVD support (mpdvdkit2)

+ +

MPlayer uses libdvdread and libdvdcss for + DVD decryption and playback. These two libraries are contained in the + libmpdvdkit2/ subdirectory of the MPlayer source tree, you + do not have to install them separately. We opted for this solution because + we had to fix a libdvdread bug and apply a patch which adds + cracked CSS keys caching support to libdvdcss. This results + in a large speed increase because the keys do not have to be cracked every time + before playing.

+ +

MPlayer can also use system-wide libdvdread and + libdvdcss libraries, but this solution is not recommended, + as it can result in bugs, library incompatibilities and slower speed.

+ +

DVD Navigation support (dvdnav)

+ +

Support for DVD navigation via dvdnav was being worked on, but + it was never finished properly and it is currently unmaintained. Who knows, it + might even compile.

+ +

Old-style DVD support - OPTIONAL

+ +

Useful if you want to play encoded VOBs from hard disk. Compile and + install libcss 0.0.1 (not newer) for this (If MPlayer fails to + detect it, use the -csslib /path/to/libcss.so option). To use it, + you need to be root, use a suid root MPlayer binary or let MPlayer call the + suid-root fibmap_mplayer wrapper program.

+ +

DVD structure

+ +

DVD disks have 2048 bytes per sector with ECC/CRC. They usually have an UDF + filesystem on a single track, containing various files (small .IFO and .BUK + files and big (1GB) .VOB files). They are real files and can be copied/played + from the mounted filesystem of an unencrypted DVD.

+ +

The .IFO files contain the movie navigation information (chapter/title/angle + map, language table, etc) and are needed to read and interpret the .VOB + content (movie). The .BUK files are backups of them. They use sectors + everywhere, so you need to use raw addressing of sectors of the disc to + implement DVD navigation or decrypt the content.

+ +

The whole old-style DVD support with libcss therefore needs a mounted DVD + filesystem and raw sector-based access to the device. Unfortunately you must + (under Linux) be root to get the sector address of a file. You have the + following choices:

+ + + +

Sometimes /dev/dvd cannot be read by users, so the libdvdread + authors implemented an emulation layer which transfers sector addresses to + filenames+offsets, to emulate raw access on top of a mounted filesystem + or even on a hard disk.

+ +

libdvdread even accepts the mountpoint instead of the device name for raw + access and checks /proc/mounts to get the device name. It was + developed for Solaris, where device names are dynamically allocated.

+ +

The default DVD device is /dev/dvd. If your setup differs, + make a symlink, or specify the correct device on the command line with the + -dvd-device option.

+ +

DVD authentication

+ +

The authentication and decryption method of the new-style DVD support is done + using a patched libdvdcss (see above). The method can be specified through the + environment variable DVDCSS_METHOD, which can be set to + key, disk or title.

+ +

If nothing is specified it tries the following methods + (default: key, title request):

+ +
    +
  1. bus key: This key is negotiated during authentication (a long mix + of ioctls and various key exchanges, crypto stuff) and is used to encrypt + the title and disk keys before sending them over the unprotected bus + (to prevent eavesdropping). The bus key is needed to get and predecrypt the + crypted disk key.
  2. +
  3. cached key: MPlayer looks for already cracked + title keys which are stored in the ~/.mplayer/DVDKeys directory + (fast ;).
  4. +
  5. key: If no cached key is available, MPlayer tries to + decrypt the disk key with a set of included player keys.
  6. +
  7. disk: If the key method fails (e.g. no included player keys), + MPlayer will crack the disk key using a brute force algorithm. + This process is CPU intensive and requires 64 MB of memory (16M 32Bit + entries hash table) to store temporary data. This method should always + work (slow).
  8. +
  9. title request: With the disk key MPlayer requests the crypted title + keys, which are inside hidden sectors using ioctl(). + The region protection of RPC-2 drives is performed in this step and may + fail on such drives. If it succeeds, the title keys will be decrypted with + the bus and disk key.
  10. +
  11. title: This method is used if the title request failed and does + not rely on any key exchange with the DVD drive. It uses a crypto attack to + guess the title key directly (by finding a repeating pattern in the + decrypted VOB content and guessing that the plain text corresponding to the + first encrypted bytes is a continuation of that pattern). + The method is also known as "known plaintext attack" or "DeCSSPlus". + In rare cases this may fail because there is not enough encrypted data on + the disk to perform a statistical attack or because the key changes in the + middle of a title. This method is the only way to decrypt a DVD stored on a + hard disk or a DVD with the wrong region on an RPC2 drive (slow).
  12. +
+ +

RPC-1 DVD drives only protect region settings through software. + RPC-2 drives have a hardware protection that allows 5 changes only. It might + be needed/recommended to upgrade the firmware to RPC-1 if you have a RPC-2 DVD + drive. Firmware upgrades can be found on this + firmware page. If there is + no firmware upgrade available for your device, use the + regionset + tool to set the region code of your DVD drive (under Linux). + Warning: You can only set the region 5 times.

+ + +

4.3 VCD playback

+ +

For the complete list of available options, please read the man page. + The Syntax for a standard Video CD (VCD) is as follows:

+ +

mplayer -vcd <track> [-cdrom-device <device>]

+ +

Example: mplayer -vcd 2 -cdrom-device /dev/hdc

+ +

The default VCD device is /dev/cdrom. If your setup differs, + make a symlink or specify the correct device on the command line with the + -cdrom-device option.

+ +

Note: At least Plextor and some Toshiba SCSI CD-ROM drives have + horrible performance reading VCDs. This is because the the CDROMREADRAW ioctl + is not fully implemented for these drives. If you have some knowledge of SCSI + programming, please help us implement generic + SCSI support for VCDs.

+ +

In the meantime you can extract data from VCDs with + readvcd + and play the resulting file with MPlayer.

+ +

VCD structure

+ +

VCD disks consist of one or more tracks:

+ + + +

About .DAT files:

+ +

The ~600 MB file visible on the first track of the mounted VCD is not a real + file! It is a so called ISO gateway, created to allow Windows to handle such + tracks (Windows does not allow raw device access to applications at all). + Under Linux you cannot copy or play such files (they contain garbage). Under + Windows it is possible as its iso9660 driver emulates the raw reading of + tracks in this file. To play a .DAT file you need the kernel driver which can + be found in the Linux version of PowerDVD. It has a modified iso9660 + filesystem (vcdfs/isofs-2.4.X.o) driver, which is able to emulate + the raw tracks through this shadow .DAT file. If you mount the disc using + their driver, you can copy and even play .DAT files with mplayer. But it + will not work with the standard iso9660 driver of the Linux kernel! + Use the -vcd option instead. Alternatives for VCD copying are + the new cdfs kernel + driver (not part of the official kernel) that shows CD sessions + as image files and cdrdao, a + bit-by-bit CD grabbing/copying application.

+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/codecs-in.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/codecs-in.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,185 @@ + + + + Codec Status Table - MPlayer - The Movie Player for Linux + + + + + + + + + + + + + + +
+

 

+ +

Status of codecs support

+
+

Video codecs
Audio codecs

+
+ Video codecs:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Working video codecs
codec namefourcccodecfileoutcomments
%i%F%d%Y%c
New / Untested codecs
codec namefourcccodecfileproblem
%i%F%d%c
Codecs with problems
codec namefourcccodecfileproblem
%i%F%d%c
Not yet working codecs:
codec namefourcccodecfileproblem
%i%F%d%c
+ +
Audio codecs:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Working audio codecs
codec nameformatcodecfilecomments
%i%f%d%c
New / Untested codecs
codec nameformatcodecfileproblem
%i%f%d%c
Codecs with problems
codec nameformatcodecfileproblem
%i%f%d%c
Not yet working codecs
codec nameformatcodecfileproblem
%i%f%d%c
+
+ + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/codecs.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/codecs.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,539 @@ + + + + + Codecs - MPlayer - The Movie Player for Linux + + + + + + + +

2.2 Supported codecs

+ + +

2.2.1 Video codecs

+ +

See the + codec status table + for the complete, daily generated list. Quite a few codecs are available for + download from our homepage. Grab them from our + codecs page.

+ +

The most important ones above all:

+ + +

If you have a Win32 codec not listed here which is not supported yet, please + read the codec importing HOWTO and help us add support + for it.

+ + +

2.2.1.1 DivX4/DivX5

+ +

This section contains information about the DivX4 and DivX5 codecs of + Project Mayo. Their first available + alpha version was OpenDivX 4.0 alpha 47 and 48. Support for this was included + in MPlayer in the past, and built by default. We also used its + postprocessing code to optionally enhance visual quality of MPEG1/2 movies. + Now we use our own, for all file types.

+ +

The new generation of this codec is called DivX4 and can even decode + movies made with the infamous DivX codec! In addition it is much faster than + the native Win32 DivX DLLs but slower than libavcodec. Hence its usage as a + decoder is DISCOURAGED. However, it is useful for encoding. One + disadvantage of this codec is that it is not available under an Open Source + license.

+ +

DivX4Linux works in two modes:

+ +
+
-vc odivx
+
Uses the codec in OpenDivX fashion. In this case it + produces YV12 images in its own buffer, and MPlayer does colorspace + conversion via libvo. (Fast, recommended!)
+ +
-vc divx4
+
Uses the colorspace conversion of the codec. + In this mode you can use YUY2/UYVY, too. (SLOW)
+
+ +

The -vc odivx method is usually faster, due to the fact that it + transfers image data in YV12 (planar YUV 4:2:0) format, thus requiring much + less bandwidth on the bus. For packed YUV modes (YUY2, UYVY) use the + -vc divx4 method. For RGB modes the speed is the same, differing + at best according to your current color depth.

+ +

Note: If your -vo driver supports direct rendering, then + -vc divx4 may be faster or even the fastest solution.

+ +

The Divx4/5 binary codec library can be downloaded from + avifile or + divx.com. + Unpack it, run ./install.sh as root and do not forget adding + /usr/local/lib to your /etc/ld.so.conf and running + ldconfig.

+ +

Get the CVS version of the OLD OpenDivx core library like this:

+ +
    +
  1. cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login
  2. +
  3. cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore
  4. +
  5. This core library is split into a decore and encore library that have to + be compiled separately. For the decore Library, simply type +
    +    cd divxcore/decore/build/linux
    +    make
    +    cp libdivxdecore.so /usr/local/lib 
    +    ln -s /usr/local/lib/libdivxdecore.so /usr/local/lib/libdivxdecore.so.0 
    +    cp ../../src/decore.h /usr/local/include
    +    
    +
  6. +
  7. Alas, for the encore library there is no Linux Makefile available, and the + MMX optimized code only works on Windows. You can still compile it, though, + by using this + Makefile. +
    +    cd ../../../encore/build
    +    mkdir linux
    +    cd linux
    +    cp path/Makefile .
    +    make
    +    cp libdivxencore.so /usr/local/lib
    +    ln -s /usr/local/lib/libdivxdecore.so /usr/local/lib/libdivxdecore.so.0
    +    cp ../../src/encore.h /usr/local/include
    +    
    +
  8. +
+ +

MPlayer autodetects DivX4/DivX5 if it is properly installed, just + compile as usual. If it does not detect it, you did not install or configure + it correctly.

+ + +

2.2.1.2 FFmpeg DivX/libavcodec

+ +

FFmpeg contains an + open source codec package, which is capable of decoding streams + encoded with + H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/HuffYUV + video, or WMA (Windows Media Audio) audio codecs. Not only some of + them can be encoded with, but it also offers higher speed than the Win32 + codecs or the DivX.com DivX4/5 library!

+ +

It contains a lot of nice codecs, especially important are the MPEG4 + variants: + DivX3, DivX4, DivX5, Windows Media Video 7 (WMV1). Also a very + interesting one is the WMA decoder.

+ +

If you use an MPlayer release you have libavcodec right in the + package, just build as usual. If you use MPlayer from CVS you have to + extract libavcodec from the FFmpeg CVS tree as FFmpeg releases don't + work with MPlayer. In order to achieve this do:

+ +
    +
  1. cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login
  2. +
  3. cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg co ffmpeg
  4. +
  5. Move the libavcodec directory from the FFmpeg sources to the + root of the MPlayer CVS tree. It should look like this: +

        main/libavcodec

    + Symlinking is not enough, you have to copy or move it!
  6. +
  7. Compile. Configure should detect problems before compilation.
  8. +
+ +

Note: MPlayer from CVS does contain a libavcodec + subdirectory, but it does not contain the source for libavcodec! + You must follow the steps above to obtain the source for this library.

+ +

With FFmpeg and my Matrox G400, I can view even the highest resolution DivX + movies without dropped frames on my K6/2 500.

+ + +

2.2.1.3 XAnim codecs

+ +

FOREWORD

+

+ Be advised that the XAnim binary codecs are packaged with a piece of text + claiming to be a legally binding software license which, besides other + restrictions, forbids the user to use the codecs in conjunction with any + program other than XAnim. However, the XAnim author has yet to bring legal + action against anyone for codec-related issues. +

+ +

INSTALLATION AND USAGE

+

MPlayer is capable of employing the XAnim codecs for decoding. Follow + the instructions to enable them:

+ +
    +
  1. Download the codecs you wish to use from the + XAnim site. The 3ivx codec + is not there, but at the 3ivx site.
  2. +
  3. OR download the codecs pack from our + codecs page. +
  4. +
  5. Use the --with-xanimlibdir option to tell configure where + to find the XAnim codecs. By default, it looks for them at + /usr/local/lib/xanim/mods, /usr/lib/xanim/mods and /usr/lib/xanim. + Alternatively you can set the environment variable XANIM_MOD_DIR to + the directory of the XAnim codecs.
  6. +
  7. Rename/symlink the files, cutting out the architecture stuff, so they will + have filenames like these: vid_cvid.xa, vid_h263.xa, vid_iv50.xa.
  8. +
+ +

XAnim is video codec family xanim, so you may want to use the -vfm xanim + option to tell MPlayer to use them if possible.

+ +

Tested codecs include: Indeo 3.2, 4.1, 5.0, CVID, + 3ivX, h263.

+ + +

2.2.1.4 VIVO video

+ +

MPlayer can play Vivo (1.0 and 2.0) videos. The most suitable codec + for 1.0 files is FFmpeg's H263 decoder, you can use it with the -vc + ffh263 option. For 2.0 files, use the Win32 DLL through the + -vc vivo option. If you do not supply command line options + MPlayer selects the best codec automatically.

+ + +

2.2.1.5 MPEG 1/2 video

+ +

MPEG1 and MPEG2 are decoded by the multiplatform native libmpeg2 + library, whose source code is included in MPlayer. We handle buggy + MPEG 1/2 video files by catching Signal 11 (Segmentation fault), + and quickly reinitializing the codec, continuing exactly from where the + failure occurred. This recovery technique has no measurable speed penalty.

+ + +

2.2.1.6 MS Video1

+ +

This is a very old and very bad codec from Microsoft. In the past it was + decoded with the msvidc32.dll Win32 codec, now we have our own + open source implementation (by Mike + Melanson).

+ + +

2.2.1.7 Cinepak CVID

+ +

MPlayer uses its own open source, multiplatform Cinepak decoder (by + Dr. Tim Ferguson), by default. + It supports YUV outputs, so that hardware scaling is possible if the video + output driver permits it.

+ + +

2.2.1.8 RealVideo

+ +MPlayer supports decoding all versions of RealVideo: + + + +

It is recommended to download and install RealPlayer8 or RealONE, because + MPlayer can use their libraries to decode files with RealVideo 2.0 - + 4.0 video. The MPlayer configure script should detect the + RealPlayer libraries in the standard locations of a full installation. If it + does not, tell configure where to look with the + --with-reallibdir option.

+ +

Note: RealPlayer libraries currently only work with Linux, FreeBSD, + NetBSD and Cygwin on the x86 and Alpha platforms.

+ + +

2.2.1.9 XViD

+ +

XViD is a forked development of + the OpenDivX codec. It happened when ProjectMayo changed OpenDivX to closed + source DivX4 (now DivX5), and the non-ProjectMayo people working on OpenDivX + got angry, then started XViD. So both projects have the same origin.

+ +

ADVANTAGES

+ + + +

DISADVANTAGES

+ + + +

INSTALLING XVID CVS

+ +

XViD is currently available only from CVS. Here are the + download and installation instructions:

+ +
    +
  1. cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login
  2. +
  3. cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore
  4. +
  5. cd xvidcore/build/generic
  6. +
  7. Edit the Makefile for your architecture (probably + Makefile.linuxx86) to fit your needs.
  8. +
  9. make -f Makefile.linuxx86
  10. +
  11. Copy the divx4.h and xvid.h header files from + xvidcore/src/ to /usr/local/include/.
  12. +
  13. Get encore2.h and decore.h from the DivX4Linux + package, and copy them to /usr/local/include/.
  14. +
  15. Recompile MPlayer with --with-xvidcore=/path/to/libxvidcore.a.
  16. +
+ + +

2.2.1.10 Sorenson

+ +

Sorenson is a video codec family developed by Sorenson Media and + licensed to Apple who distribute it with their QuickTime Player. We are + currently able to decode all versions of Sorenson video files with the + following decoders:

+ + + +

COMPILING MPLAYER WITH QUICKTIME LIBRARIES SUPPORT

+ +

NOTE: currently only 32bit Intel platforms are supported.

+ +
    +
  1. download MPlayer CVS
  2. +
  3. compile MPlayer with:
    + $ ./configure --enable-qtx-codecs
  4. +
  5. download QuickTime DLL pack from + http://www.mplayerhq.hu/MPlayer/releases/codecs/
  6. +
  7. extract QuickTime DLL pack to your Win32 codecs directory (default: + /usr/lib/win32)
  8. +
+ + +

2.2.2 Audio codecs

+ +

The most important audio codecs above all:

+ + + + +

2.2.2.1 Software AC3 decoding

+ +

This is the default decoder used for files with AC3 audio.

+ +

The AC3 decoder can create audio output mixes for 2, 4, or 6 speakers. When + configured for 6 speakers, this decoder provides separate output of all the + AC3 channels to the sound driver, allowing for full "surround sound" + experience without the external AC3 decoder required to use the hwac3 + codec.

+ +

Use the -channels option to select the number of output + channels. Use -channels 2 for a stereo downmix. For a 4 + channel downmix (Left Front, Right Front, Left Surround and Right Surround + outputs), use -channels 4. In this case, any center channel will + be mixed equally to the front channels. -channels 6 will output + all the AC3 channels as they are encoded - in the order Left, Right, Left + Surround, Right Surround, Center and LFE.

+ +

The default number of output channels is 2.

+ +

To use more than 2 output channels, you will need to use OSS, and have a + sound card that supports the appropriate number of output channels via the + SNDCTL_DSP_CHANNELS ioctl. An example of a suitable driver is emu10k1 (used + by Soundblaster Live! cards) from August 2001 or newer (ALSA CVS is also + supposed to work).

+ + +

2.2.2.2 Hardware AC3 decoding

+ +

You need an AC3 capable sound card, with digital out (SP/DIF). The card's + driver must properly support the AFMT_AC3 format (C-Media does). Connect + your AC3 decoder to the SP/DIF output, and use the -ac hwac3 + option. It is experimental but known to work with C-Media cards, + Soundblaster Live! using ALSA (but not OSS) drivers and DXR3/Hollywood+ MPEG + decoder cards.

+ + +

2.2.2.3 libmad support

+ +

libmad is a multiplatform MPEG + audio decoding library. It does not handle broken files well, and it + sometimes has problems with seeking.

+ +

To enable support, compile with the --enable-mad configure + option.

+ + +

2.2.2.4 VIVO audio

+ +

The audio codec used in VIVO files depends on whether it is a VIVO/1.0 or + VIVO/2.0 file. VIVO/1.0 files have g.723 audio, and VIVO/2.0 files + have Vivo Siren audio. Both are supported.

+ +

2.2.2.5 RealAudio

+ +MPlayer supports decoding nearly all versions of RealAudio: + + + +

On how to install RealPlayer libraries, see the + RealVideo section.

+ + +

2.2.2.6 QDesign codecs

+ +

QDesign audio streams (fourcc: QDMC, QDM2) are found in MOV/QT + files. Both versions of this codec can be decoded with QuickTime libraries. + For installation instructions please see the Sorenson + video codec section.

+ + +

2.2.2.7 Qualcomm codec

+ +

Qualcomm audio stream (fourcc: Qclp) is found in MOV/QT files. + It can be decoded with QuickTime libraries. For installation instructions + please see the Sorenson video codec section.

+ + +

2.2.3 Win32 codec importing HOWTO

+ + +

2.2.3.1 VFW codecs

+ +

VFW (Video for Windows) is the old Video API for Windows. Its codecs have + the .DLL or (rarely) .DRV extension. + If MPlayer fails at playing your AVI with this kind of message:

+ +

    UNKNOWN video codec: HFYU (0x55594648)

+ +

It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU = + HuffYUV codec, DIV3 = DivX Low Motion, etc...). Now that you know this, you + have to find out which DLL Windows loads in order to play this file. In our + case, the system.ini contains this information in a line that + reads:

+ +

    VIDC.HFYU=huffyuv.dll

+ +

So you need the huffyuv.dll file. Note that the audio codecs are + specified by the MSACM prefix:

+ +

    msacm.l3acm=L3codeca.acm

+ + +

This is the MP3 codec. Now that you have all the necessary information + (fourcc, codec file, sample AVI), submit your codec support request by mail, + and upload these files to the FTP site:

+ +

    ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/

+ +

Note: On Windows NT/2000/XP search for this info in the registry, e.g. search for + "VIDC.HFYU". To find out how to do this, look at the old DirectShow method below.

+ +

2.2.3.2 DirectShow codecs

+ +

DirectShow is the newer Video API, which is even worse than its predecessor. + Things are harder with DirectShow, since

+ + + +

New Method: Using Microsoft GraphEdit (fast)

+ +
    +
  1. Get GraphEdit from either DirectX SDK or + Doom9.
  2. +
  3. Start graphedit.exe.
  4. +
  5. From the menu select Graph -> Insert Filters.
  6. +
  7. Expand item DirectShow Filters.
  8. +
  9. Select the right codec name and expand item.
  10. +
  11. In the entry DisplayName look at the text in winged brackets + after the backslash and write it down (five dash-delimited blocks, the + GUID).
  12. +
  13. The codec binary is the file specified in the Filename + entry.
  14. +
+ +

Note: If there is no Filename entry and DisplayName + contains something like device:dmo, then it is a DMO-Codec.

+ +

Old Method: Take a deep breath and start searching the registry...

+ +
    +
  1. Start regedit.
  2. +
  3. Press Ctrl-f, disable the first two checkboxes, and enable + the third. Type in the fourcc of the codec (e.g. TM20).
  4. +
  5. You should see a field which contains the path and the filename + (e.g. C:\WINDOWS\SYSTEM\TM20DEC.AX).
  6. +
  7. Now that you have the file, we need the GUID. Try searching again, but + now search for the codec's name, not the fourcc. Its name can be acquired + when Media Player is playing the file, by checking File -> Properties + -> Advanced. + If not, you are out of luck. Try guessing (e.g. search for TrueMotion).
  8. +
  9. If the GUID is found you should see a FriendlyName and a CLSID + field. Write down the 16 byte CLSID, this is the GUID we need.
  10. +
+ +

Note: If searching fails, try enabling all the checkboxes. You may have + false hits, but you may get lucky...

+ +

Now that you have all the necessary information (fourcc, GUID, codec file, + sample AVI), submit your codec support request by mail, and upload these files + to the FTP site:

+ +

    ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/

+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/documentation.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/documentation.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,2061 @@ + + + + + Documentation - MPlayer - The Movie Player for Linux + + + + + + +

MPlayer - The Movie Player for LINUX

+ +

© 2000-2003 Arpad Gereoffy (A'rpi/ESP-team)
+ http://www.mplayerhq.hu

+ +

[ English ] + [ Hungarian ] + [ German ] + [ French ] + [ Polish ] + [ Italian ] + [ Chinese ]

+ +
+ +

Table of Contents

+ +
+ + + +
+ + + +

0. How to read this documentation

+ +

If you are a first-time installer: be sure to read everything from here to + the end of the Installation section, and follow the links you will find. If + you have any other questions, return to the Table of Contents and + search for the topic, read the FAQ, or try grepping + through the files.

+ +

The main rule of this documentation: if it's not documented, it + does not exist. If I don't say you encode audio from TV tuner, you + can't. A healthy quantity of combining ability is welcomed, though. + Good luck. You'll need it :) And for another good advice, let me quote + Chris Phillips from the + mplayer-users + mailing list:

+ +
+ I said a while ago that there is such a difference between a newbie and + a dumbass. No matter what you actually know about a system (linux, cars, + girls :D) you should ALWAYS be able to take a step back and be objective, + otherwise, you're just dumb IMHO. A girl i live with assumed the vacuum + cleaner was broken because it didn't suck things up. never thought to change + the bag, becasue she'd never done it before... now that's just stupid, not a + case of simply not knowing what to do... Simply not being that familiar with + your surroundings is no excuse for a) laziness and b) ignorance. So many + people seem to see the word "error" and then stop... few seem to actually + read the words on the OTHER side of the colon. +
+ + + +

1. Introduction

+ + +

MPlayer is a movie player for LINUX (runs on many other Unices, and + non-x86 CPUs, see the ports section). It plays most + MPEG, VOB, AVI, OGG/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, + FILM, RoQ, PVA files, supported by many native, XAnim, RealPlayer, and + Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, + 3ivx, RealMedia, and DivX movies too (and you don't need + the avifile + library at all!). Another big feature of MPlayer is the wide range of + supported output drivers. It works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, + AAlib, DirectFB, but you can also use GGI and SDL (and this way all their + drivers) and some lowlevel card-specific drivers (for Matrox, 3Dfx and Radeon, + Mach64, Permedia3) too! Most + of them supports software or hardware scaling, so you can enjoy movies in + fullscreen. MPlayer supports displaying through some hardware MPEG + decoder boards, such as the DVB and + DXR3/Hollywood+. And what about the nice big antialiased + shaded subtitles (10 supported types) with European/ISO 8859-1,2 + (Hungarian, English, Czech, etc), Cyrillic, Korean fonts, and the onscreen + display (OSD)?

+ +

The 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, and + you can temporarily rebuild their indexes with the -idx option, or + permanently with MEncoder, thus enabling seeking! + As you see, stability and quality are the most important things, + but the speed is also amazing.

+ +

MEncoder (MPlayer's Movie Encoder) is a simple movie encoder, + designed to encode MPlayer-playable movies + (AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA) to other + MPlayer-playable formats (see below). It can encode with various codecs, like + DivX4 (1 or 2 passes), libavcodec, + PCM/MP3/VBR MP3 audio. Also has powerful plugin system + for video manipulation.

+ +

MEncoder features

+ + + +

Planned features

+ + + +

MPlayer and MEncoder can be distributed under the terms of the GNU General + Public License Version 2.

+ + +

1.1 History

+ +

This began a year ago... + I (A'rpi) have 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...

+ + + + +

1.2 Installation

+ +

In this chapter I'll try to guide you through the compiling and + configuring process of MPlayer. It's not easy, but it won't necessarily + be hard. If you experience a different behavior than what I explain, please + search through this documentation and you'll find your answers. If you + see links, please follow them and read carefully what they contain. It + will take some time, but it DOES worth it.

+ +

You need a fairly recent system. On Linux, 2.4.x kernels are recommended.

+ +

Software requirements:

+ + + +

Codecs:

+ + + +

Video Cards

+ +

There are generally two kind of video cards. One kind (the newer cards) has + hardware scaling and YUV acceleration support, the other cards don't.

+ +

YUV cards

+ +

They can display and scale (zoom) the picture to any size that fits in + their memory, with small CPU usage (even when zooming), thus + fullscreen playing is nice and very fast.

+ + + +

Non-YUV cards

+ +

Fullscreen playing can be achieved by either enabling software scaling + (use the -zoom or -vop scale + option, but I warn you: this is slow), or switching to a small resolution + video mode, for example 352x288. If you don't have YUV acceleration, the + latter method is recommended. Video mode switching can be enabled by + using the -vm option and it works with the following drivers:

+ + + +

Some cards:

+ + + + +

Sound cards:

+ + + +

Features:

+ + + +

Then build MPlayer:

+ +
+    ./configure
+    make
+    make install
+
+ +

At this point, MPlayer is ready to use. The directory + $PREFIX/etc/mplayer contains the codecs.conf + file, which is used to tell the program all the codecs and their + capabilities. This file should always be kept up to date together with the + main binary.
+ Check if you have codecs.conf in your home directory + (~/.mplayer/codecs.conf) left from old MPlayer versions, and remove it.

+ +

Debian users can build a .deb package for themselves, + it's very simple. Just exec fakeroot debian/rules binary in + MPlayer's root directory. See + Debian packaging for detailed + instructions.

+ +

Always browse the output of ./configure, and the + configure.log file, they contain information about what will be + built, and what will not. You may also want to view config.h and + config.mak files.
+ If you have some libraries installed, but not detected by + ./configure, then check if you also have the proper header files + (usually the -dev packages) and their version matches. The + configure.log file usually tells you what is missing.

+ +

Though not mandatory, the fonts should be installed in order to gain OSD, + and subtitle functionality. The recommended method is installing a TTF + font file and telling MPlayer to use it. See the + Subtitles and OSD section for details.

+ + + +

1.3 What about the GUI?

+ +

The GUI needs GTK 1.2.x (it isn't fully GTK, but the panels are). The skins + are stored in PNG format, so gtk, libpng (and their devel stuff, usually + called gtk-dev and libpng-dev) has to be installed. + You can build it by specifying --enable-gui during + ./configure. Then, to turn on GUI mode, you either

+ + +

Currently you can't use the -gui option on the command line, + due to technical reasons.

+ +

As MPlayer doesn't have a skin included, you have to download them if + you want to use the GUI. See the + download page. + They should be extracted to the usual system-wide directory + ($PREFIX/share/mplayer/Skin), or to + $HOME/.mplayer/Skin. MPlayer by default looks in these + directories for a directory named default, but you can use the + -skin newskin option, or the skin=newskin config + file directive to use the skin in */Skin/newskin directory.

+ + +

1.4 Subtitles and OSD

+ +

+ MPlayer can display subtitles along with movie files. Currently the following + formats are supported:

+ + +

MPlayer can dump the previously listed subtitle formats (except + the three first) into the following destination formats, with the given + options:

+ + + +

The command line options differ slightly for the different formats:

+ +

VobSub subtitles

+ +

VobSub subtitles consist of a big (some megabytes) .SUB file, and optional + .IDX and/or .IFO files.
+ Usage: If you have files like sample.sub, + sample.ifo (optional), sample.idx - you have to pass + MPlayer the -vobsub sample [-vobsubid <id>] options (full + path optional). The -vobsubid option is like -sid + for DVDs, you can choose between subtitle tracks (languages) with it. In case + that -vobsubid is omitted, MPlayer will try to use the languages + given by the -slang option and fall back to the + langidx item in the .IDX file to set the subtitle language. If + that fails, there will be no subtitles.

+ +

Other subtitles

+ +

The other formats consist of a single text file containing timing, + placement and text information.
+ Usage: If you have a file like sample.txt, you have to pass the + option -sub sample.txt (full path optional).

+ +

Adjusting subtitle timing and placement:

+ +
+
-subdelay <sec>
+
Delays subtitles by <sec> seconds. Can be negative.
+ +
-subfps <rate>
+
Specify frame/sec rate of subtitle file (float number)
+ +
-subpos <0 - 100>
+
Specify the position of subtitles.
+
+ +

If you experience a growing delay between the movie and the subtitles when + using a MicroDVD subtitle file, most likely the frame rate of the movie and + the subtitle file are different.
Please note that the MicroDVD subtitle + format uses absolute frame numbers for its timing, and therefore the + -subfps option cannot be used with this format. As + MPlayer has no way to guess the frame rate of the subtitle file, you + have to manually convert the frame rate. There is a little perl script in the + contrib directory of the MPlayer FTP site to do this conversion + for you.

+ +

MPlayer will try to guess the subtitle files you want to use when playing a + movie. If, like in most cases, subtitle and movie files have the same name and + are in the same place, you do not need to set the subtitle options. Just play + the movie, MPlayer will handle the subtitles automatically.

+ +

About DVD subtitles, read the DVD section.

+ + +

1.4.1 MPlayer's own subtitle format (MPsub)

+ +

MPlayer introduces a new subtitle format called MPsub. It was + designed by Gabucino. Basically its main feature is being + dynamically time-based (although it has frame-based mode too). Example + (from + DOCS/tech/mpsub.sub):

+ +

# first number : wait this much after previous subtitle disappeared
+ # second number : display the current subtitle for this many seconds
+
+ 15 3
+ A long long, time ago...
+
+ 0 3
+ in a galaxy far away...
+
+ 0 3
+ Naboo was under an attack.

+ +

So you see, the main goal was to make subtitle + editing/timing/joining/cutting easy. And, if you - say - get an SSA + subtitle but it's badly timed/delayed to your version of the movie, you + simply do a mplayer dummy.avi -sub source.ssa -dumpmpsub. + A dump.mpsub file will be created in the current directory, + which will contain the source subtitle's text, but in MPsub format. + Then you can freely add/subtract seconds to/from the subtitle.

+ +

Subtitles are displayed with a technique called 'OSD', On Screen + Display. OSD is used to display current time, volume bar, seek bar + etc.

+ +

1.4.2 Installing OSD and subtitles

+ +

You need an MPlayer font package to be able to use OSD/SUB feature. + There are many ways to get it:

+ + + +

If you chose non-TTF fonts, UNZIP the file you downloaded to ~/.mplayer or + $PREFIX/share/mplayer. Then rename or symlink one of the extracted directories to + font (like: ln -s ~/.mplayer/arial-24 + ~/.mplayer/font). Now you have to see a timer at the upper left corner + of the movie (switch it off with the "o" key).

+ + +

OSD has 4 states: (switch with 'o')

+ +

(subtitles are always enabled, for disabling them please read the man + page)

+ + + +

You can change default behaviour by setting osdlevel= variable + in config file, or the -osdlevel command line option.

+ + +

1.4.3 OSD menu

+ +

MPlayer has a completely user definiable OSD Menu interface.

+ +

NOTE: the Preferences menu is currently UNIMPLEMENTED!

+ +

Installation

+ +
    +
  1. compile MPlayer by passing the --enable-menu parameters to + ./configure
  2. +
  3. make sure you have an OSD font installed
  4. +
  5. copy etc/menu.conf to your .mplayer + directory
  6. +
  7. copy etc/input.conf to your .mplayer + directory, or to the system-wide MPlayer config dir (default: + /usr/local/etc/mplayer)
  8. +
  9. check and edit input.conf to enable menu movement + keys (it is described there).
  10. +
  11. start MPlayer by the following example:
    + $ mplayer -menu file.avi
  12. +
  13. push any menu key you defined
  14. +
+ + +

1.5 RTC

+ +There are three timing methods in MPlayer. + + + +Note: NEVER install a setuid root MPlayer binary on a multiuser system! +It's a clear way for everyone to become root. + + + +

2. Features

+ + +

2.1 Supported formats

+ + +

2.2 Supported codecs

+ + +

2.3 Video & Audio output devices

+ + +

2.4 TV input

+ +

This section is about how to enable watching/grabbing from V4L compatible +TV tuner. See the man page for a description of TV options and keyboard +controls.

+ +

2.4.1 Compilation

+ +
    +
  1. First, you have to recompile. ./configure will autodetect + kernel headers of v4l stuff and the existence of /dev/video* + entries. If they exist, TV support will be built (see the output of + ./configure).
  2. +
  3. Make sure your tuner works with another TV software in Linux, for example + xawtv.
  4. +
+ +

2.4.2 Usage tips

+ +The full listing of the options is available on the manual page. Here +are just a few tips: + + + +

2.4.3 Examples

+ +

Dummy output, to AAlib :)
+     mplayer -tv on:driver=dummy:width=640:height=480 -vo aa
+
+ Input from standard V4L
+     mplayer -tv +on:driver=v4l:width=640:height=480 -vo xv
+
+ + A more sophisticated example. This makes MEncoder capture the full + PAL image, crop the margins, and deinterlace the picture using + a linear blend algorithm. Audio is compressed with a constant + bitrate of 64kbps, using LAME codec. This setup is suitable for + capturing movies.
    mencoder -tv + on:driver=v4l:width=768:height=576 \
+     -ovc lavc -lavcopts + vcodec=mpeg4:vbitrate=900 \
    -oac + mp3lame -lameopts cbr:br=64 \
    -vop + pp=lb,crop=720:544:24:16 -o output.avi

+ +
+ This will additionally rescale the image to 384x288 and compresses + the video with the bitrate of 350kbps in high quality mode. The + vqmax option looses the quantizer and allows the video compressor to + actualy reach so low bitrate even at the expense of the + quality. This can be used for capturing long TV series, where the + video quality isn't so important.
+ +     mencoder -tv on:driver=v4l:width=768:height=576 \
+     -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
+     -oac mp3lame -lameopts cbr:br=48 \
+     -vop scale=384:288,pp=tn/lb,crop=720:540:24:18 -sws 1 -o output.avi +

+ + It's also possible to specify smaller image dimensions in the + -tv option and omit the software scaling but this + approach uses the maximum available information and is a little more + resistant to noise. The bt8x8 chips can do the pixel averaging only + in the horizontal direction due to a hardware limitation.

+ + +

2.5 Edit Decision Lists (EDL)

+ +

The edit decision list (EDL) system allows you to automatically skip or mute + sections of videos during playback, based on a movie specific EDL + configuration file.

+ +

This is useful for those who may want to watch a film in "family-friendly" + mode. You can cut out any violence, profanity, Jar-Jar Binks .. from a movie + according to your own personal preferences. Aside from this, there are other + uses, like automatically skipping over commercials in video files you + watch.

+ +

The EDL file format is pretty bare-bones. Once the EDL system has reached a + certain level of maturity, an XML-based file format will probably be + implemented (keeping backwards compatibility with previous EDL formats).

+ +

The maximum number of EDL entries for the current incarnation of EDL is 1000. + If you happen to need more, change the #define MAX_EDL_ENTRIES + in the edl.h file.

+ +

2.5.1 Using an EDL file

+ +

Include the -edl <filename> flag when you run MPlayer, + with the name of the EDL file you want applied to the video.

+ +

2.5.2 Making an EDL file

+ +

The current EDL file format is:

+ +[begin second] [end second] [action] + +

Where the seconds are floating-point numbers and the action is either + 0 for skip or 1 for mute. Example:

+ +
+5.3   7.1    0
+15    16.7   1
+420   422    0
+
+ +

This will skip from second 5.3 to second 7.1 of the video, then mute at + 15 seconds, unmute at 16.7 seconds and skip from second 420 to second + 422 of the video. These actions will be performed when the playback timer + reaches the times given in the file.

+ +

To create an EDL file to work from, use the + -edlout <filename> flag. During playback, when you want to + mark the previous two seconds to skip over, hit i. A + corresponding entry will be written to the file for that time. You can then go + back and fine-tune the generated EDL file.

+ + + +

3. Usage

+ + +

3.1 Command line

+ +

MPlayer utilizes a complex playtree. It consists of global options + written as first (for example mplayer -vfm 5), and options + written after filenames, that apply only to the given filename/URL/whatever + (for example mplayer -vfm 5 movie1.avi movie2.avi -vfm 4).
+ You can group filenames/URLs together using { and }. It's useful with + option -loop: mplayer { 1.avi -loop 2 2.avi } -loop 3 + will play files in this order: 1 1 2 1 1 2 1 1 2
+

+ + + + + + + + +
  file  mplayer [options] [path/]filename
filesmplayer [default options] [path/]filename1 [options for filename1] filename2 [options for filename2] ...
VCDmplayer [options] -vcd trackno [-cdrom-device /dev/cdrom]
DVDmplayer [options] -dvd titleno [-dvd-device /dev/dvd]
WWWmplayer [options] http://site.com/file.asf (playlists can be used, too)
RTSPmplayer [options] rtsp://server.example.com/streamName
+ +

+ Latest versions of MPlayer also accept VCD and DVD tracks in URL style, just like + xine does: mplayer dvd://1 or mplayer vcd://1

+ +
+  mplayer -vo x11 /mnt/Films/Contact/contact2.mpg
+  mplayer -vcd 2
+  mplayer -afm 3 /mnt/DVDtrailers/alien4.vob
+  mplayer -dvd 1 -dvd-device /dev/hdc
+  mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi
+
+ + +

3.2 Control

+ +

MPlayer has a fully configurable, command driven, control layer which + lets you control MPlayer with keyboard, mouse, joystick or remote + control (using LIRC). See the man page for the complete list of keyboard + controls.

+ + +

3.2.1 Controls configuration

+ +

MPlayer allows you bind any key/button to any MPlayer command + using a simple config file. The syntax consist of a key name followed by a + command. The default config file location is + $HOME/.mplayer/input.conf but it can be overridden using the + -input conf option (relative path are relative to + $HOME/.mplayer). + +

Example:

+ +
+##
+## MPlayer input control file
+##
+
+RIGHT seek +10
+LEFT seek -10
+- audio_delay 0.100
++ audio_delay -0.100
+q quit
+> pt_step 1
+< pt_step -1
+ENTER pt_step 1 1
+
+ + +

3.2.1.1 Key names

+ +

You can have a full list by running mplayer -input keylist

+ +

Keyboard:

+ + + +

Mouse (only supported under X):

+ + + +

Joystick (support must be enabled at compile time):

+ + + + +

3.2.1.2 Commands

+ +

You can have a full list of known commands by running "mplayer -input cmdlist"

+ + + + +

3.2.2 Control from LIRC

+ +

Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, + an (almost) arbitrary remote control and control your Linux box with it! + More about it at www.lirc.org.

+ +

If you have installed the lirc-package, configure will autodetect it. If + everything went fine, MPlayer will print a message like "Setting up + lirc support..." on startup. If an error occurs it will tell you. If it + doesn't tell you anything about LIRC there's no support compiled in. That's + it :-)

+ +

The application name for MPlayer is - oh wonder - mplayer. + You can use any mplayer commands and even pass more than one command by + separating them with \n. Don't forget to enable the repeat flag in .lircrc + when it make sense (seek, volume, etc). Here's an excerpt from my + .lircrc:

+ +
+begin
+     button = VOLUME_PLUS
+     prog = mplayer
+     config = volume 1
+     repeat = 1
+end
+
+begin
+    button = VOLUME_MINUS
+    prog = mplayer
+    config = volume -1
+    repeat = 1
+end
+
+begin
+    button = CD_PLAY
+    prog = mplayer
+    config = pause
+end
+
+begin
+    button = CD_STOP
+    prog = mplayer
+    config = seek 0 1\npause
+end
+
+ +

If you don't like the standard location for the lirc-config file (~/.lircrc) + use the -lircconf <filename> option to specify another file.

+ + +

3.2.3 Slave mode

+ +

The slave mode allow you to build simple frontend to MPlayer. When + enabled (with the -slave option) MPlayer will read + commands separated by new line (\n) from stdin.

+ + +

3.3 Streaming from network or pipes

+ +

MPlayer can play files from network, using the HTTP, MMS or RTSP/RTP + protocol.

+ +

Playing goes by simply using adding the URL to the command line. + MPlayer also honors the http_proxy environment variable, and uses + proxy if available. Proxy usage can also be forced:

+ +

mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf

+ +

MPlayer can read from stdin (NOT named pipes). This can be for example + used to play from FTP:

+ +

  wget ftp://micorsops.com/something.avi -O - | mplayer -

+ +

Note: it's also recommended to enable CACHE when playback from network:

+ +

  wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192 -

+ + + +

4. FAQ section

+ + + +

5. CD/DVD section

+ + + +

6. Ports

+ + +

6.1 Linux

+ +

The main development platform is Linux on x86, although MPlayer works on many + other Linux ports.

+ + +

6.1.1 Debian packaging

+ +

To build a Debian package, run the following command in the MPlayer source + directory:

+ +
+    fakeroot debian/rules binary
+
+ +

As root you can then install the .deb package as usual:

+ +
+    dpkg -i ../mplayer_<version>.deb
+
+ +

Christian Marillat has been making unofficial Debian MPlayer, MEncoder and + font packages for a while, you can (apt-)get them from his + homepage. These packages are highly + unofficial, however, as Christian made and redistributed these packages when + MPlayer was still not fully GPLed and + binary redistribution was + not allowed. Christian ignored requests to stop redistributing his packages, + which caused bad blood with MPlayer developers. Binary redistribution is not + a problem anymore, but we do not support these packages!

+ + +

6.1.2 RPM packaging

+ +

Dominik Mierzejewski created and maintains official Red Hat RPM packages of + MPlayer. They are available from his + homepage. + Please read the instructions there and report problems to him, not us.

+ +

There are other RPM versions (SuSE now includes MPlayer in their official + distribution, Mandrake packages are available from the + P.L.F) of MPlayer, but none of them is + officially supported.

+ + +

6.1.3 ARM

+ +

MPlayer works on Linux PDAs with ARM CPU e.g. Sharp Zaurus, Compaq Ipaq. + The easiest way to obtain MPlayer is to get it from one of the + Openzaurus package feeds. + If you want to compile it yourself, you should look at the + mplayer + and the + libavcodec + directory in the OpenZaurus distribution buildroot. These always have the + latest Makefile and patches used for building a CVS MPlayer with libavcodec. +
If you need a GUI frontend, you can use xmms-embedded.

+ + +

6.2 *BSD

+ +

MPlayer runs on FreeBSD, OpenBSD, NetBSD, BSD/OS and Darwin. There are + ports/pkgsrc/fink/etc versions of MPlayer available that are probably easier + to use than our raw sources.

+ +

To build MPlayer you will need GNU make (gmake - native BSD make will not + work) and a recent version of binutils.

+ +

If MPlayer complains about not finding /dev/cdrom or + /dev/dvd, create an appropiate symbolic link:
+ ln -s /dev/(your_cdrom_device) /dev/cdrom.

+ +

To use Win32 DLLs with MPlayer you will need to re-compile the kernel with + "option USER_LDT" (unless you run FreeBSD -CURRENT, where this + is the default).

+ +

6.2.1 FreeBSD

+ +

If your CPU has SSE, recompile your kernel with "options CPU_ENABLE_SSE" to + use it (FreeBSD-STABLE or kernel patches required).

+ +

6.2.2 OpenBSD

+ +

Due to limitations in different versions of gas (relocation vs MMX), you will + need to compile in two steps: First make sure that the non-native as is first + in your $PATH and do a gmake -k, then make sure that + the native version is used and do gmake.

+ + +

6.3 Solaris

+ +

MPlayer should work on Solaris 2.6 or newer.

+ +

On UltraSPARCs, MPlayer takes advantage of their VIS + extensions (equivalent to MMX), currently only in libmpeg2, + libvo and libavcodec, but not in mp3lib. You can watch a VOB + file on a 400MHz CPU. You'll need + mLib installed.

+ +

To build the package you will need GNU make (gmake, /opt/sfw/gmake), native + Solaris make will not work. Typical error you get when building with Solaris' + make instead of GNU make:

+ +
+   % /usr/ccs/bin/make
+   make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
+
+ +

On Solaris SPARC, you need the GNU C/C++ Compiler; it does not matter + if GNU C/C++ compiler is configured with or without the GNU assembler.

+ +

On Solaris x86, you need the GNU assembler and the GNU C/C++ compiler, + configured to use the GNU assembler! The mplayer code on the x86 platform + makes heavy use of MMX, SSE and 3DNOW! instructions that cannot be compiled + using Sun's assembler /usr/ccs/bin/as.

+ +

The configure script tries to find out, which assembler program is used by + your "gcc" command (in case the autodetection fails, use the + --as=/whereever/you/have/installed/gnu-as option to tell the + configure script where it can find GNU "as" on your system).

+ +

Error message from configure on a Solaris x86 system using GCC + without GNU assembler:

+ +
+   % configure
+   ...
+   Checking assembler (/usr/ccs/bin/as) ... , failed
+   Please upgrade(downgrade) binutils to 2.10.1...
+
+ +

(Solution: Install and use a gcc configured with "--with-as=gas")

+ +

Typical error you get when building with a GNU C compiler that does + not use GNU as:

+ +
+   % gmake
+   ...
+   gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
+	-fomit-frame-pointer  -I/usr/local/include   -o mplayer.o mplayer.c
+   Assembler: mplayer.c
+   "(stdin)", line 3567 : Illegal mnemonic
+   "(stdin)", line 3567 : Syntax error
+   ... more "Illegal mnemonic" and "Syntax error" errors ...
+
+ +

Due to bugs in Solaris 8, you may not be able to play DVD discs larger + than 4 GB:

+ + + +

On Solaris with an UltraSPARC CPU, you can get some extra speed by + using the CPU's VIS instructions for certain time consuming operations. + VIS acceleration can be used in MPlayer by calling functions in Sun's + mediaLib.

+ +

VIS accelerated operations from mediaLib are used for mpeg2 video + decoding and for color space conversion in the video output drivers.

+ + +

6.4 Silicon Graphics / IRIX

+ +

You can either try to install the GNU install program, and (if you did not + put it in your global path) then point to the location with:

+ +
+  ./configure --install-path=PATH
+
+ +

Or you can use the default install delivered with IRIX 6.5 in which case you + will have to edit the Makefile a littlebit by hand. Change the following two + lines:

+ +
+  $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
+
+  $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
+
+ +

to:

+ +
+  $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
+
+  $(INSTALL) -m 644 codecs.conf $(CONFDIR)/
+
+ +

And then do (from within the MPlayer source dir):

+ +
+  cp DOCS/mplayer.1 . ; cp etc/codecs.conf .
+
+ +

and then go on with building and installing.

+ + +

6.5 QNX

+ +

Works. You'll need to download SDL for QNX, and install it. Then run + MPlayer with -vo sdl:photon and -ao sdl:nto + options, and it should be fast.

+ +

The -vo x11 output will be even slower than on Linux, since + QNX has only X emulation which is VERY slow. Use SDL.

+ + +

6.6 Cygwin

+ +

The Cygwin port is still in its infancy. Currently there is no support for + Win32 DLLs or OpenGL. SDL is known to distort sound and image or crash + on some systems. Patches are always welcome. + Best results are achieved with the native DirectX video output driver + (-vo directx) and the native Windows waveout audio driver + (-ao win32). You should also check out the + mplayer-cygwin + mailing list for help and latest information.

+ +

You have to copy or symlink etc/cygwin_inttypes.h from the + MPlayer source directory to /usr/include/inttypes.h in order to + make MPlayer compile.

+ +

To get native DirectX video, download + DirectX 7 header files, + extract them to /usr/include/ or /usr/local/include/ + and recompile. If the image is distorted, try turning off hardware + acceleration with -vo directx:noaccel.

+ +

Instructions and files for making SDL run under Cygwin can be found on the + libsdl site.

+ +

You can play VCDs by playing the .DAT or .MPG files + that Windows exposes on VCDs. It works like this (adjust for the drive letter + of your CD-ROM):

+ +

mplayer d:/mpegav/avseq01.dat

+ +

mplayer /cydrive/d/MPEG2/AVSEQ01.MPG

+ +

DVDs also work, just set the DVD device correctly to whatever your CD-ROM + device is:

+ +

mplayer -dvd <title> -dvd-device '\\.\d:'

+ +

QuickTime DLLs have also been reported to work. Compile with + --enable-qtx-codecs and put the codecs into the + default Windows DLL location, C:\WINNT\system32 or + C:\Windows\system depending on your Windows version.

+ + + +

7. Encoding with MEncoder

+ + + +

Appendix A - Mailing lists

+ +

There are some public mailing lists on MPlayer. Unless explicitly + stated otherwise the language of these lists is English. Please do + not send messages in other languages or HTML mail! Message size limit is 80k. + If you have something bigger put it up for download somewhere. Click the + links to subscribe. On the mailing lists, the same rules about writing + and quoting apply as on usenet. Please follow them, it makes the life of + those who read your mails a lot easier. If you do not know them please + read HOWTO edit messages or + (if you are in a hurry) + + Quoting HOWTO.

+ + + +

Note: You can reach the searchable mailing list archives at + http://www.mplayerhq.hu/cgi-bin/htsearch. + + + +

Appendix B - How to report bugs

+ + + +

Appendix C - Known bugs

+ +

Special system/CPU-specific bugs/problems:

+ + +

Various A-V sync and other audio problems:

+ +General audio delay or jerky sound (exists with all or many files): + + +Audio delay/de-sync specific to one or a few files: + + +No sound at all: + + +No picture at all (just plain grey/green window): + + +

Video-out problems:

+ +

First note: options -fs -vm and -zoom are just recommendations, not (yet) + supported by all drivers. So it isn't a bug if it doesn't work. + Only a few driver supports scaling/zooming, don't expect this from x11 or dga.

+ +

OSD/sub flickering:
+ - x11 driver: sorry, it can't be fixed now
+ - xv driver: use -double option

+ +

Green image using mga_vid (-vo mga / -vo xmga):
+ - mga_vid misdetected your card's RAM amount, reload it using mga_ram_size option

+ + + +

Appendix D - MPlayer skin format

+ + + +

Appendix E - Developer Cries

+ + + +

Appendix F - How to send patches

+ + + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/encoding.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/encoding.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,320 @@ + + + + + Encoding - MEncoder - The Movie Encoder for Linux + + + + + + + +

7. Encoding with MEncoder

+ +

For the complete list of available MEncoder options and examples, please see + the man page. For a series of hands-on examples and detailed guides on using + several encoding parameters, read the + encoding-tips that were collected from + several mailing list threads on + mplayer-users. + Search the archives + for a wealth of discussions about all aspects of and problems related to + encoding with MEncoder.

+ + +

7.1 Encoding 2 or 3-pass MPEG-4 ("DivX")

+ +

2-pass encoding: the name comes from the fact that this method + encodes the file twice. The first encoding (dubbed pass) + creates some temporary files (*.log) with a size of few megabytes, do not + delete them yet (you can delete the AVI). In the second pass, the 2-pass + output file is created, using the bitrate data from the temporary files. The + resulting file will have much better image quality. If this is the first time + you heard about this, you should consult some guides available on the + Net.

+ +

This example shows how to encode a DVD to a 2-pass MPEG-4 ("DIVX") AVI. Just + two commands are needed:
+     rm frameno.avi - remove this file, which + can come from a previous 3-pass encoding (it interferes with current + one)
+     mencoder -dvd 2 -ovc lavc -lavcopts + vcodec=mpeg4:vpass=1 -oac copy -o movie.avi
+     mencoder -dvd 2 -ovc lavc -lavcopts + vcodec=mpeg4:vpass=2 -oac copy -o movie.avi

+ +

3-pass encoding: this is an extension of 2-pass encoding, + where the audio encoding takes place in a separate pass. This method enables + estimation of recommended video bitrate in order to fit on a CD. Also, the + audio is encoded only once, unlike in 2-pass mode. The schematics:

+ +
    +
  1. Remove conflicting temporary file: +

    rm frameno.avi

  2. +
  3. First pass: +

    mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi

    +

    An audio-only avi file will be created, containing + only the requested audio stream. Don't forget -lameopts, + if you need to set it. If you were encoding a long movie, MEncoder + prints the recommended bitrate values for 650Mb, 700Mb, and 800Mb + destination sizes, after this pass finishes.

  4. +
  5. Second pass: +

    mencoder <file/DVD> -oac copy + -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<bitrate>

    +

    This is the first pass of video encoding. + Optionally specify the video bitrate MEncoder printed at the end of + the previous pass.

  6. +
  7. Third pass: +

    mencoder <file/DVD> -oac copy + -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<bitrate>

    +

    This is the second pass of video encoding. + Specify the same bitrate as in the previous pass unless you really know + what you are doing. In this pass, audio from frameno.avi + will be inserted into the destination file.. and it's all ready!

  8. +
+ +

Example for 3-pass encoding:

+ +

    rm frameno.avi - remove this file, + which can come from a previous 3-pass encoding (it interferes with current + one)
+     mencoder -dvd 2 -ovc frameno + -o frameno.avi -oac mp3lame -lameopts vbr=3
+     mencoder -dvd 2 -ovc lavc + -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi
+     mencoder -dvd 2 -ovc lavc + -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi

+ + +

7.2 Encoding to MPEG format

+ +

MEncoder can create MPEG (MPEG-PS) format output files. It's probably + useful only with libavcodec's mpeg1video codec, because players + - except MPlayer - expect MPEG1 video, and MPEG1 layer 2 (MP2) audio streams + in MPEG files.

+ +

This feature is not very useful right now, aside that it probably has + many bugs, but the more importantly because MEncoder currently cannot encode + MPEG1 layer 2 (MP2) audio, which all other players expect in MPEG files.

+ +

To change MEncoder's output file format, use the -of mpeg + option.

+ +

Example:
+   mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video + -oac copy <other options> media.avi -o output.mpg

+ + +

7.3 Rescaling movies

+ +

Often the need to resize movie images' size emerges. Its reasons can be + many: decreasing file size, network bandwidth, etc. Most people + even do rescaling when converting DVDs or SVCDs to DivX AVI. This is bad. + Instead of even you doing so, read the Preserving + aspect ratio section.

+ +

The scaling process is handled by the 'scale' video filter: + -vop scale=widht:height. Its quality can be set with the + -sws option. If it's not specified, MEncoder will use 0: + fast bilinear.

+ +

Usage:

+ +

    mencoder input.mpg -ovc lavc -lavcopts + vcodec=mpeg4 -vop scale=640:480 -oac copy -o + output.avi

+ + +

7.4 Stream copying

+ +

MEncoder can handle input streams in two ways: encode or + copy them. This section is about copying.

+ + + + +

7.5 Fixing AVIs with broken index or interleaving

+ +

Easiest thing. We simply copy the video and audio streams, and + MEncoder generates the index. Of course this cannot fix possible bugs + in the video and/or audio streams. It also fixes files with broken + interleaving, thus the -ni option won't be needed for them + anymore.

+ +

Command: mencoder -idx input.avi -ovc copy -oac copy -o output.avi

+ + +

7.5.1 Appending multiple AVI files

+ +

As a side-effect, the broken AVI fixer function enables MEncoder to append + 2 (or more) AVI files:

+ +

Command: cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o output.avi -

+ +

Note: This expects 1.avi and 2.avi to use the same codecs, resolution, + stream rate etc, and at least 1.avi must not be broken. You may need to fix + your input AVI files first, as described above.

+ + +

7.6 Encoding with the libavcodec codec family

+ +

libavcodec provides simple encoding to a + lot of interesting video and audio formats (currently its audio codecs are + unsupported). You can encode to the following codecs:

+ + + +

The first column contains the codec names that should be passed after the + vcodec config, like: -lavcopts vcodec=msmpeg4

+ +

An example, with MJPEG compression:
+     mencoder -dvd 2 -o title2.avi -ovc lavc + -lavcopts vcodec=mjpeg -oac copy

+ + +

7.7 Encoding from multiple input image files (JPEGs, PNGs or TGAs)

+ +

MEncoder is capable of creating movies from one or more JPEG, PNG or TGA + files. With simple framecopy it can create MJPEG (Motion JPEG), MPNG + (Motion PNG) or MTGA (Motion TGA) files.

+ +Explanation of the process: + +
    +
  1. MEncoder decodes the input image(s) with + libjpeg (when decoding PNGs, it will use libpng).
  2. + +
  3. MEncoder then feeds the decoded image to the chosen video compressor + (DivX4, Xvid, ffmpeg msmpeg4, etc...).
  4. +
+ +

Examples

+ +

The explanation of the -mf option can be found below in the + man page.

+ +

Creating a DivX4 file from all the JPEG files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25 -ovc divx4 + -o output.avi \*.jpg

+ +

Creating a DivX4 file from some JPEG files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25 + -ovc divx4 -o output.avi frame001.jpg,frame002.jpg

+ +

Creating a Motion JPEG (MJPEG) file from all the JPEG files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25 -ovc copy + -o output.avi \*.jpg

+ +

Creating an uncompressed file from all the PNG files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25:type=png -ovc rawrgb + -o output.avi \*.png

+ +

Note: Width must be integer multiple of 4, it's a limitation of the + RAW RGB AVI format.

+ +

Creating a Motion PNG (MPNG) file from all the PNG files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25:type=png -ovc copy + -o output.avi \*.png

+ +

Creating a Motion TGA (MTGA) file from all the TGA files in the current dir:
+   mencoder -mf on:w=800:h=600:fps=25:type=tga -ovc copy + -o output.avi \*.tga

+ + +

7.8 Extracting DVD subtitles to a Vobsub file

+ +

MEncoder is capable of extracting subtitles from a DVD into + Vobsub fomat files. They consist of a pair of files ending in + .idx and .sub and are usually packaged in a single + .rar archive. MPlayer can play these with the + -vobsub and -vobsubid options.

+ +

You specify the basename (i.e without the .idx or + .sub extension) of the output files with -vobsubout + and the index for this subtitle in the resulting files with + -vobsuboutindex.

+ +

If the input is not from a DVD you should use -ifo to + indicate the .ifo file needed to construct the resulting + .idx file.

+ +

If the input is not from a DVD and you do not have the .ifo + file you will need to use the -vobsubid option to let it know + what language id to put in the .idx file.

+ +

Each run will append the running subtitle if the .idx and + .sub files already exist. So you should remove any before + starting.

+ +

Examples

+ +

Copying two subtitles from a DVD while doing 3-pass encoding
+   rm subtitles.idx subtitles.sub
+   mencoder -dvd 1 -vobsubout subtitles -vobsuboutindex 0 + -sid 2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3
+   mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=1
+   mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=2 -vobsubout + subtitles -vobsuboutindex 1 -sid 5

+ +

Copying a french subtitle from an MPEG file
+   rm subtitles.idx subtitles.sub
+   mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles + -vobsuboutindex 0 -vobsuboutid fr -sid 1

+ + +

7.9 Preserving aspect ratio

+ +

DVDs and SVCDs (i.e. MPEG1/2) files contain an aspect ratio value, + which describes how should the player scale the video stream, so humans + won't have egg heads (ex.: 480x480 + 4:3 = 640x480). However when encoding + to AVI (DivX) files, you have be aware that AVI headers don't store this + value. Rescaling the movie is disgusting and time consuming, there + must be a better feature!

+ +

There is.

+ +

MPEG4 has an unique feature: the video stream can contain + its needed aspect ratio. Yes, just like MPEG1/2 files (DVD, SVCD). + Regretfully, there are no video players outside which support this + attribute. Except MPlayer.

+ +

This feature can be used only with libavcodec's mpeg4 + codec. Keep in mind: although MPlayer will correctly play the created file, + other players will use the wrong aspect ratio.

+ +

You seriously should crop the black bands over and below the movie image. + See the manpage about the usage of the cropdetect and + crop filters.

+ +

Usage:

+ +

$ mencoder sample-svcd.mpg -ovc lavc -lavcopts + vcodec=mpeg4:aspect=16.0/9.0 -vop crop=714:548:0:14 -oac copy -o output.avi

+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/faq.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/faq.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,803 @@ + + + + + FAQ - MPlayer - The Movie Player for Linux + + + + + + + + +

5. FAQ

+ + + + +

5.1 Compilation

+ +
+ +
Q: Compilation stops with an error message similar to this one: +
+    In file included from mplayer.c:34:
+    mw.h: In function `mplMainDraw':
+    mw.h:209: Internal compiler error in print_rtl_and_abort, at flow.c:6458
+    Please submit a full bug report,
+    with preprocessed source if appropriate.
+    
+
+
A: This is a known problem of gcc 3.0.4, upgrade to 3.1 to solve the + problem. How to install gcc is described in the + gcc 2.96 section.
+
 
+ +
Q: Configure ends with this text, and MPlayer won't compile!
+ "Your gcc does not support even i386 for '-march' and '-mcpu'." +
+
A: Your gcc isn't installed correctly, check the config.log + file for details.
+
 
+ +
Q: What does "No such file or directory" mean?
+
A: Probably there is no such file or directory.
+
 
+ +
Q: What's the problem with gcc 2.96?
+
A: We strongly discourage the use of gcc 2.96!
+ Read this document for + details about why Red Hat released gcc 2.96 and what the problems are all + about. If you still really really want to use it, be sure to get the latest + release and give the --disable-gcc-checking option to + configure. Remember that you are on your own from this point. Do not + report bugs, do not ask for help on the mailing lists. We will + not provide any support in case you run into problems.
+
 
+ +
Q: Great, I have gcc 3.0.1 from Red Hat/Mandrake, then I'm fine!
+
A: No, since there have been/are issues with these compilers as well. + To check the status of current compilers' MPlayer support, see the + Installation section.
+
 
+ +
Q: I tried to compile MPlayer, but I got this output: +
+    In file included from /usr/include/g++-v3/bits/std_cwchar.h:42,
+                     from /usr/include/g++-v3/bits/fpos.h:40,
+                     from /usr/include/g++-v3/bits/char_traits.h:40,
+                     from /usr/include/g++-v3/bits/std_string.h:41,
+                     from /usr/include/g++-v3/string:31,
+                     from libwin32.h:36,
+                     from DS_AudioDecoder.h:4,
+                     from DS_AudioDec.cpp:5:
+    /usr/include/wchar.h: In function Long long int wcstoq(const wchar_t*,
+       wchar_t**, int)':
+    /usr/include/wchar.h:514: cannot convert `const wchar_t* __restrict' to
+    `const
+    
+
+
A: Upgrade your glibc to the latest release. On Mandrake, use 2.2.4-8mdk.
+
 
+ +
Q: ... gcc 2.96 ... (Yes, some people are STILL flaming about gcc 2.96!)
+
A: Quoted from a + mail + A'rpi sent to the + mplayer-users + list (the word 'ideg' is described below): +
+

And we have idegs. And our idegcounter overflowed again and again.

+ +

Unfortunately MPlayer is out of our control. It's used by lamers, Linux + users who can't even use Windows, and never tried to compile a kernel. They + installed (with default options) Mandrake or Red Hat or SuSE, and without + RTFM'ing they send messages saying 'it doesn't work! help me! please! i'm + new to Linux! help! oh! help me!'. We can't stop them, but at least we try + to force them to RTFM and to read the messages of ./configure and MPlayer.

+ +

And you clever guys come and flame us with gcc 2.96 and binary packages. + Instead of helping users or making patches to help solve problems.

+ +

Half of our spare/free time is spent by answering silly mails here and + making newer tricks and checks to configure to avoid such mails.

+ +

And there is a balance. On the one side are you, clever guys, saying we + are very bad because we don't like buggy gcc 2.96, and on the other side + there are the 'new to Linux' guys who are showing us gcc 2.96 is buggy.

+ +

Conclusion: We can't be good. Half the people will always say we are bad.

+ +

Maybe we should close the project, make it closed source, commercial, and + provide install support for it. then we could leave current work, so + development could go faster, and we could earn lots of money with it and buy + a big house, etc etc. Do you really want it? It seems.

+
+
+
 
+ +
Q: SDL output doesn't work or compile. The problem is ...
+
A: It was tested to work with SDL 1.2.x and may run on SDL 1.1.7+. + It does not work with any previous version. So if you choose to use + such a version, you are on your own.
+
 
+ +
Q: I am still having trouble compiling with SDL support. gcc says + something about "undefined reference to `SDL_EnableKeyRepeat'". What + now?
+
A: Where did you install the SDL library? If you installed in /usr/local + (the default) then edit the top level config.mak and add + "-L/usr/local/lib" after "X_LIBS=". Now type make. You're done!
+
 
+ +
Q: It doesn't compile, and it misses uint64_t inttypes.h and similar + things ...
+
A: Copy etc/inttypes.h to the MPlayer directory + (cp etc/inttypes.h .) and try again ...
+
 
+ +
Q: I have Linux running on a Pentium III but ./configure + doesn't detect SSE ...
+
A: Only kernel versions 2.4.x support SSE (or try 2.2.19 or newer, but + be prepared for problems).
+
 
+ +
Q: I have a G200/G400, how do I compile/use the mga_vid driver?
+
A: Read the mga_vid documentation.
+
 
+ +
Q: Are there rpm/deb/... packages of MPlayer?
+
A: You can make a .deb package for yourself, check the + Debian packaging section. + There are links to official Red Hat RPM packages available on our + download page.
+
 
+ +
Q: During 'make', MPlayer complains about X11 libraries. I don't + understand, I DO have X installed!?
+
A: ... but you don't have the X development package installed. Or not + correctly. It's called XFree86-devel* under Red Hat, and xlibs-dev under + Debian. Also check if the /usr/X11 and /usr/include/X11 + symlinks exist (this can be a problem on Mandrake systems). They can be + created with these commands:
+     $ ln -sf /usr/X11R6 /usr/X11
+     $ ln -sf /usr/X11R6/include/X11 /usr/include/X11
+ Your distribution may differ from the + Filesystem Hierarchy Standard.
+
 
+ +
Q: I can't compile SVGAlib. I'm using kernel 2.3/2.4 ...
+
A: You have to edit SVGAlib's Makefile.cfg and comment + BACKGROUND = y out.
+
 
+ +
Q: I compiled MPlayer with libdvdcss/libdivxdecore support, but when + I try to start it, it says:
+ > error while loading shared libraries: lib*.so.0: cannot load + shared object file: No such file or directory
+ I checked up on the file and it IS there in /usr/local/lib ...
+
A: Add /usr/local/lib to /etc/ld.so.conf and run + ldconfig.
+
 
+ +
Q: Hmm, strange. When loading the mga_vid.o kernel module, I found this in + the logs:
+ Warning: loading mga_vid.o will taint the kernel: no license
+
A: The latest kernel modutils require a flag indicating the license + (mainly to avoid kernel hackers debugging closed source drivers). + Upgrade your kernel, modutils and MPlayer.
+
 
+ +
Q: When compiling MEncoder, it segfaults at linking!
+
A: This is a linker problem. Upgrading binutils should help (2.11.92.* + or newer should be good). Since it is not our fault, please do not + report!
+
 
+ +
Q: MPlayer dies with segmentation fault upon pthread check!
+
A: chmod 644 /usr/lib/libc.so
+
 
+ +
Q: I'd like to compile MPlayer on Minix!
+
A: Me too. :)
+ +
+ + +

5.2 General questions

+ +
+ +
Q: How do I create a proper patch for MPlayer?
+
A: We made a short document describing + all the necessary details. Please follow the instructions.
+
 
+ +
Q: How can I support MPlayer development?
+
A: We are more than happy to accept your hardware and software + donations. + They help us in continuously improving MPlayer.
+
 
+ +
Q: How can I become an MPlayer developer?
+
A: We always welcome coders and documenters. Read the + technical documentation to get a first grasp. Then you + should subscribe to the + mplayer-dev-eng + mailing list and start coding.
+
 
+ +
Q: Can I run multiple instances of MPlayer?
+
A: Yes. Some video out drivers like xv, dga or (x)mga are exclusive, some + are exclusive in combination with certain graphics boards and drivers. You + will not be able to run more than one instance of MPlayer with one of those + video out drivers. To a lesser degree this also applies to audio drivers. + Not all allow playback of multiple streams on the same device.
+
 
+ +
Q: There is a timer in the upper left corner. How can I get rid of it?
+
A: Press o and try the -osdlevel option.
+
 
+ +
Q: The -xy or -fs option doesn't work with the + x11 driver (-vo x11) ...
+
A: It does, but you have to explicitly specify software scaling (very + slow) with the -zoom option. You better use XF86VidMode + support: You must specify the -vm and the -fs + option, and you're done. Make sure you have the right modelines in your + XF86Config file, and try to make the DGA driver + and SDL's DGA driver work for you. + It's much faster. If SDL's DGA works, use that, it'll be even faster.
+
 
+ +
Q: What is the meaning of the numbers on the status line?
+
A: Example: + A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6% 0 4 49% + + Most of them are for debug purposes and will be removed at some point.
+
 
+ +
Q: What if I don't want them to appear?
+
A: Use the -quiet option and read the man page.
+
 
+ +
Q: Why is video_out cpu usage zero (0%) for some files?
+
A1: It's not zero, but it's called from the codec and thus cannot be + measured separately. You should try to play the file using + -vo null and then -vo ... and check the + difference to see the video_out speed.
+
A2: You are using Direct Rendering, + where the codec renders to the video memory itself. In this case, the + decoding percentage contains the display percentage, too.
+
 
+ +
Q: There are error messages about file not found + /usr/lib/win32/ ...
+
A: Download the Win32 codecs from our + codecs page + (avifile's codec package has a different DLL set) and install it.
+
 
+ +
Q: Are there any mailing lists on MPlayer?
+
A: Yes. See the bottom of the info page on + our homepage to + subscribe.
+
 
+ +
Q: I've found a nasty bug when I tried to play my favorite video! + Who should I inform?
+
A: Please read the bug reporting guidelines + and follow the instructions.
+
 
+ +
Q: I have problems playing files with the ... codec. Can I use them?
+
A: Check the + codec status, + if it doesn't contain your codec, read the + codec documentation, especially the + codec importing HOWTO and contact us.
+
 
+ +
Q: Umm, what is "IdegCounter"?
+
A: A combination of a Hungarian and an English word. "Ideg" in Hungarian + means the same as "nerve" in English, and is pronounced as something like + "ydaegh". It was first used to measure the nervousness of A'rpi, after some + (umm) "mysterious" disappearance of CVS code ;)
+
 
+ +
Q: And what is "Faszom(C)ounter"?
+
A: "Fasz" is a Hungarian word you don't want to know, the others are + connected to the perverted minds of the MPlayer developers.
+
 
+ +
Q: LIRC doesn't work, because ...
+
A: Are you sure you are using mplayer instead of + mplayer_lirc? Note that it was mplayer_lirc for a + long time, including the 0.60 release, but it was recently changed back to + mplayer.
+
 
+ +
Q: Subtitles are very nice, the most beautiful I've ever seen, but they + slow down playing! I know it's unlikely ...
+
A: After running ./configure, edit config.h and + replace #undef FAST_OSD with #define FAST_OSD. + Then recompile.
+
 
+ +
Q: The onscreen display (OSD) is flickering!
+
A: You use a vo driver with single buffering (x11,xv). With xv, + use the -double option. Also try -vop expand
+
 
+ +
Q: What exactly is this libavcodec thing?
+
A: See the libavcodec section.
+
 
+ +
Q: But configure tells me "Checking for libavcodec ... no"!
+
A: You need to get libavcodec from FFmpeg's CVS. Read the instructions in + the libavcodec section.
+
 
+ +
Q: Icewm's taskbar keeps covering the movie in fullscreen mode!
+
A: This shouldn't happen anymore, if it still does use the + -fstype layer option and report it to the + mplayer-users + mailing list.
+
 
+ +
Q: I can't access the GUI menu. I press right click, but I can't access + any menu items!
+
A: Are you using FVWM? Try the following:
+ Start -> Settings -> Configuration -> Base Configuration
+ Set "Use Applications position hints" to "Yes".
+
 
+ +
Q: How can I run MPlayer in the background?
+
A: Use: mplayer <options> <filename> < /dev/null &
+ +
+ + +

5.3 Playback problems

+ +
+ +
Q: I can play certain AVIs but I get no sound and this kind of error: +
+    Detected audio codec: [divx] afm:4 (DivX audio (WMA))
+    Requested audio codec family [divx] (afm=4) not available (enable it at
+    compile time!)
+    
+
+
A: Probably the audio uses a codec not natively supported by + MPlayer. Install the Win32 codec package as described in the README + or in the Installation section.
+
 
+ +
Q: ... works with avifile/aviplay but doesn't with MPlayer.
+
A: MPlayer is not avifile. + The only common thing between these players is the Win32 DLL loader. + The codecs (DLL) set, synchronization, demultiplexing etc is totally + different and shouldn't be compared. + If something works with aviplay it doesn't mean that MPlayer will + work and vice versa.
+
 
+ +
Q: Audio goes out of sync playing an AVI file.
+
A: Try the -bps or -nobps option. If it does not + improve, read this and upload the file to FTP.
+
 
+ +
Q: MPlayer exits with some error when using l3codeca.acm.
+
A: Check ldd /usr/local/bin/mplayer output. If it contains
+     libc.so.6 => /lib/libc.so.6 (0x4???????)
+ where "?" is any number then it's OK, the error is not here. If it is:
+     libc.so.6 => /lib/libc.so.6 (0x00??????)
+ then there is a problem with your kernel/libc. Maybe you are using some + security patches (for example Solar Designer's OpenWall patch) which + forces loading libraries to very low addresses. + Because l3codeca.acm is a non-relocatable DLL, it must be loaded to + 0x00400000, we can't change this. You should use a non-patched kernel, + or use MPlayer's -afm 1 option to disable using + l3codeca.acm.
+
 
+ +
Q: My computer plays M$ DivX AVIs with resolutions ~ 640x300 and stereo + mp3 sound too slow. When I use -nosound option, everything is OK (but + quiet).
+
A: Your machine is too slow or your soundcard driver is broken. Consult + the documentation to see if you can improve performance.
+
 
+ +
Q: MPlayer dies with "MPlayer interrupted by signal 4 in module: + decode_video".
+
A: Try running MPlayer on the machine you compiled on. Or recompile + with runtime CPU detection + (./configure --enable-runtime-cpudetection). Don't + use MPlayer on a CPU different from the one it was compiled on, + without using the feature mentioned just now.
+
 
+ +
Q: I have problems with [your window manager] and fullscreen + xv/xmga/sdl/x11 modes ...
+
A: Read the bug reporting guidelines and + send us a proper bug report.
+
 
+ +
Q: I got this playing MPEG files: Can't find codec for video format + 0x10000001!
+
A: You have an old version of codecs.conf at ~/.mplayer/. + Upgrade it from /etc/.
+ OR you have the vc= option or something similar in your + config file(s).
+
 
+ +
Q: When starting MPlayer under KDE I just get a black screen and nothing + happens. After about one minute the video starts playing.
+
A: The KDE arts sound daemon is blocking the sound device. Either wait + until the video starts or disable the arts-daemon in kontrol center. If you + want to use arts sound, specify audio output via our native arts audio + driver (-ao arts). If it fails or isn't compiled in, try SDL + (-ao sdl) and make sure your SDL can handle arts sound. Yet + another option is to start MPlayer with artsdsp.
+
 
+ +
Q: I have an AVI that produces a gray screen when played with + -vc odivx and a green one with -vc divx4.
+
A: It's not a DivX file, but an M$ MPEG4v3. Update your codecs.conf.
+
 
+ +
Q: When I play this movie I get video-audio desync and/or MPlayer crashes + with the following message:
+ DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!
+
A: This can have multiple reasons. +
+
 
+ +
Q: I have an MJPEG file which works with other players but displays only a + black image in MPlayer.
+
A: Disable the Windows DLL in codecs.conf, or use the + -vc ffmjpeg option (compile MPlayer with libavcodec for this + to work).
+
 
+ +
Q: When I try to grab from my tuner, it works, but colors are strange. + It's OK with other applications.
+
A: Your card probably misreports its colorspace capacity. Try with YUY2 + instead of default YV12 (see the TV input + documentation).
+
 
+ +
Q: When I start playing, I get this message but everything seems fine:
+ Linux RTC init: ioctl (rtc_pie_on): Permission denied
+
A: You need root privileges or a + specially set up kernel to use the new timing code. For details see the + RTC section of the documentation.
+
 
+ +
Q: I have A/V sync problems. Some of my AVIs play fine, but some play with + double speed!
+
A: You have a buggy sound card/driver. Most likely it's fixed at 44100Hz, + and you try to play a file which has 22050Hz audio. Try the resample audio + plugin.
+
 
+ +
Q: All the WMV (or other..) files I play create a green/gray window and + there is only sound! MPlayer prints:
+ Detected video codec: [null] drv:0 (NULL codec (no decoding))
+
A: Update your codecs.conf.
+
 
+ +
Q: I get very strange percentage values (way too big) while playing files + on my notebook.
+
A: It's an effect of the power management / power saving system of your + notebook (BIOS, not kernel). Plug the external power connector in + before you power on your notebook. You can also try whether + cpufreq (a SpeedStep interface + for Linux) helps you.
+
 
+ +
Q: The audio/video gets totally out of sync when I run MPlayer as root on + my notebook. It works normal when i run it as a user.
+
A: This is again a power management effect (see above). Plug the external + power connector in before you power on your notebook or use the + -nortc option.
+ +
+ + +

5.4 Video/audio driver problems (vo/ao)

+ +
+ +
Q: I have no sound when playing a video and get error messages similar to + this one: +
+    AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian)
+    audio_setup: Can't open audio device /dev/dsp: Device or resource busy
+    couldn't open/init audio device -> NOSOUND
+    Audio: no sound!!!
+    Start playing...
+    
+
+
A: Are you running KDE or GNOME with the ARTS or ESD sound daemon? Try + disabling the sound daemon or use the -ao arts or + -ao esd option to make MPlayer use ARTS or ESD.
+
 
+ +
Q: What about the DGA driver? I can't find it!
+
A: ./configure autodetects your DGA driver. If + -vo help doesn't show DGA, then there's a problem with your X + installation. Try ./configure --enable-dga and read the + documentation. Alternatively, try SDL's DGA + driver with the -vo sdl:dga option.
+
 
+ +
Q: OK, -vo help shows DGA driver, but it complains about + permissions. Help me!
+
A: It works only if running as root! It's a DGA limitation. + You should become root (su -), and try again. + Another solution is making MPlayer SUID root, but it's + not recommended!
+     chown root /usr/local/bin/mplayer
+     chmod 755 /usr/local/bin/mplayer
+     chmod +s /usr/local/bin/mplayer
+
+ Warning: security risk
+ This is a big security risk! Never do this on a server or + on a computer that you do not control completely because other users can + gain root privileges through SUID root MPlayer. You have been + warned. +
+
+
 
+ +
Q: When using Xvideo, my Voodoo 3/Banshee says:
+ X Error of failed request: BadAccess (attempt to access private + resource denied)
+   Major opcode of failed request: 147 (MIT-SHM)
+   Minor opcode of failed request: 1 (X_ShmAttach)
+   Serial number of failed request: 26
+   Current serial number in output stream:27
+
A: The "tdfx" driver in XFree86 4.0.2/4.0.3 had this bug. This was solved + by bugfix #621 of the + XFree86 4.1.0 CVS log. So upgrade to XFree86 4.1.0 or later. + Alternatively, either download (at least) DRI version 0.6 from the + DRI homepage, or use CVS DRI.
+
 
+ +
Q: OpenGL (-vo gl) output doesn't work (hang/black window/X11 + errors/...).
+
A: Your OpenGL driver doesn't support dynamic texture changes + (glTexSubImage). It's known not to work with nVidia's binary mess. + It's known to work with Utah-GLX/DRI and Matrox G400 cards. Also with + DRI and Radeon cards. It won't work with DRI and other cards. + it will not work with 3DFX cards because of the 256x256 texture size limit.
+
 
+ +
Q: I have an nVidia TNT/TNT2 card, and I have a band with strange colors, + right under the movie! Whose fault is this?
+
A: This is a bug of nVidia's binary X driver. These bugs appear ONLY with + the TNT/TNT2 cards, and we can't do anything about it. To fix the problem, + upgrade to the latest nVidia binary driver version. If still bad, complain + to nVidia!
+
 
+ +
Q: I have an nVidia XYZ card, and when I click on the GUI's display window + to toggle displaying the GUI panel, a black square appears where I clicked. + I have the newest driver.
+
A: Yes, nVidia corrected a previous bug (above), and introduced a new one. + Let's congratulate them. UPDATE: According to + nVidia, this has already + been fixed.
+
 
+ +
Q: When I use the GUI with SDL video output, a second video window is + created.
+
A: Known, don't use SDL for the GUI yet.
+
 
+ +
Q: Oh the world is cruel ...! SDL has only x11 target, but + not xv!
+
A: Try that x11 target again. Now try + -vo x11 -fs -zoom. See the difference? No?! OK, here comes the + enlightenment: SDL's x11 target uses xv when available, you + don't have to worry about it ... Note: you can force/disable Xv via SDL + using -forcexv and -noxv
+ +
+ + +

5.5 DVD playback

+ +
+ +
Q: What about DVD navigation?
+
A: Support for dvdnav in MPlayer is currently broken, normal playback + does work, though. If you want to have fancy menus, you will have to use + another player like xine or + Ogle. If you care + about DVD navigation, send a patch.
+
 
+ +
Q: While playing a DVD, I encountered this error:
+ mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion + nfo_length / sizeof(cell_adr_t) >= c_adt->nr_of_vobs' failed.
+
A: This is a known libdvdread 0.9.1/0.9.2 bug. Use libmpdvdkit2, + which is present in MPlayer source, and used by default.
+
 
+ +
Q: Can I compile libdvdread and libdvdcss on my sweet SPARC under + Solaris?
+
A: Who knows ... It's said to work, so please test it and send feedback. + Refer to the documentation of libdvdread and its homepage as well. We're not + the authors of libdvdread. Use libmpdvdkit2, which is present in + MPlayer source, and used by default.
+
 
+ +
Q: What about subtitles? Can MPlayer display them?
+
A: Yes. See the DVD chapter of the + documentation.
+
 
+ +
Q: How can I set the region code of my DVD-drive? I don't have + Windows!
+
A: Use the + regionset tool.
+
 
+ +
Q: Do I need to be (setuid) root/setuid fibmap_mplayer to be able to play + a DVD?
+
A: No, only for old-style DVD support. However you must have + the proper rights on the DVD device entry (in /dev/).
+
 
+ +
Q: Where can I get libdvdread and libdvdcss packages?
+
A: You don't need to. Use libmpdvdkit2, which is present in the + MPlayer source, and used by default. You can get the mentioned packages + from the + Ogle site.
+
 
+ +
Q: Is it possible to play/encode only selected chapters?
+
A: Yes, try the -chapter option.
+
 
+ +
Q: My DVD playback is sluggish!
+
A: Use the -cache option (described in the man page) + and try enabling DMA for the DVD drive with the hdparm tool (described in + the CD chapter of the documentation).
+ +
+ + +

5.6 Feature requests

+ +
+ +
Q: If MPlayer is paused and I try to seek or press any key at all, + MPlayer ceases to be paused. I would like to be able to seek in the + paused movie.
+
A: This is very tricky to implement without losing A/V synchronization. + All attempts have failed so far, but patches are welcome.
+
 
+ +
Q: I'd like to seek +/- 1 frames instead of 10 seconds.
+
A: This won't be done. It was, but then it messed up A/V sync. Feel free + to implement it, and send a patch. Don't ask for it.
+
 
+ +
Q: Where is the Windows version?
+
A: It's not released, and won't be. Look around the Windows scene (open + source ASF parsers, open source ASF encoders, etc) and you'll know why. We + don't want to go to jail. BTW you can compile it yourself, under + Cygwin.
+
 
+ +
Q: How can I make MPlayer remember the options I use for this + particular file?
+
A: Create a file named movie.avi.conf with the + file-specific options in it and put it in ~/.mplayer or in + the same directory as the file.
+
 
+ +
+ + +

5.7 Encoding

+ +
+ +
Q: How can I encode?
+
A: Read the MEncoder documentation.
+
 
+ +
Q: How can I create VCDs?
+
A: Try the mencvcd script from the TOOLS + subdirectory. With it you can encode DVDs or other movies to VCD or SVCD + format and even burn them directly to CD.
+
 
+ +
Q: How can I join two video files?
+
A: This has been discussed to no end on mplayer-users. Go search the + archives + for a complete answer. This is a complicated topic and your mileage may + vary a lot depending on the kind of files you want to merge. MPEGs can be + concatenated into a single file with luck. For AVIs there are two tools, + avidemux + and avimerge (part of the + transcode + tool set), available that might do the job. You can also try MEncoder if + you have two files sharing the same dimensions and codec. Try
+     cat file1 file2 > file3
+     mencoder -ovc copy -oac copy -o out.avi -forceidx file3.avi
+
 
+ +
Q: My tuner works, I can hear the sound and watch the video with MPlayer, + but MEncoder doesn't encode audio!
+
A: TV audio encoding for Linux is currently unimplemented, we're working + on it. At the moment it works only on BSD.
+
 
+ +
Q: I can't encode DVD subtitles into the AVI!
+
A: You have to specify the -sid option correctly!
+
 
+ +
Q: MEncoder segfaults on startup!
+
A: Upgrade DivX4Linux.
+
 
+ +
Q: How can I encode only selected chapters from a DVD?
+
A: Use the -chapter option correctly, like: + -chapter 5-7
+
 
+ +
Q: I'm trying to work with 2GB+ files on a VFAT file system. Does it work?
+
A: No, VFAT doesn't support 2GB+ files.
+
 
+ +
Q: Why is the recommended bitrate printed by MEncoder negative?
+
A: Because the bitrate you encoded the audio with is too large to fit the + movie on any CD. Check if you have libmp3lame installed properly.
+ +
+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/formats.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/formats.html Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,320 @@ + + + + + Formats - MPlayer - The Movie Player for Linux + + + + + + + +

2.1 Supported formats

+ +

It is important to clarify a common mistake. When people see a file with a + .AVI extension, they immediately conclude that it is not an MPEG file. + That is not true. At least not entirely. Contrary to popular belief such a + file can contain MPEG1 video.

+ +

You see, a codec is not the same as a file format.
+ Examples of video codecs are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.
+ Examples of file formats are: MPG, AVI, ASF.

+ +

In theory, you can put an OpenDivX video and MP3 audio into an MPG + format file. However, most players will not play it, since they expect MPEG1 + video and MP2 audio (unlike AVI, MPG does not have the + necessary fields to describe its video and audio streams). Or you might put + MPEG1 video into an AVI file. + FFmpeg and + MEncoder can create these files.

+ + + +

2.1.1 Video formats

+ + +

2.1.1.1 MPEG files

+ +

MPEG files come in different guises:

+ + + +

Series of frames form independent groups in MPEG files. This means that you + can cut/join an MPEG file with standard file tools (like dd, + cut), and it remains completely functional.

+ +

One important feature of MPGs is that they have a field to describe the + aspect ratio of the video stream within. For example SVCDs have 480x480 + resolution video, and in the header that field is set to 4:3, so that it is + played at 640x480. AVI files do not have this field, so they have to be + rescaled during encoding or played with the -aspect option.

+ + +

2.1.1.2 AVI files

+ +

Designed by Microsoft, AVI (Audio Video Interleaved) is a widespread + multipurpose format currently used mostly for DivX and DivX4 video. It has + many known drawbacks and shortcomings (for example in streaming). It + supports one video stream and 0 to 99 audio streams. File size is limited to + 2GB, but there exists an extension allowing bigger files called + OpenDMS. Microsoft currently strongly discourages its use and + encourages ASF/WMV. Not that anybody cares.

+ +

There is a hack that allows AVI files to contain an Ogg Vorbis audio + stream, but makes them incompatible with standard AVI. MPlayer + supports playing these files. Seeking is also implemented but severely + hampered by badly encoded files with confusing headers. Unfortunately the + only encoder currently capable of creating these files, NanDub, has this + problem.

+ +

Note: DV cameras create raw DV streams that DV grabbing utilities + convert to two different types of AVI files. The AVI will then contain either + separate audio and video streams that MPlayer can play or the raw DV + stream for which support is under development.

+ +

There are two kinds of AVI files:

+ + +

MPlayer supports two kinds of timings for AVI files:

+ + +

Any audio and video codec is allowed, but note that VBR audio is not well + supported by most players. The file format makes it possible to use VBR + audio, but most players expect CBR audio, thus they fail with VBR. VBR is + uncommon and the Microsoft AVI specs only describe CBR audio. Most AVI + encoders/multiplexers create bad files when using VBR audio. There are only + two known exceptions: NanDub and MEncoder.

+ + +

2.1.1.3 ASF/WMV files

+ +

ASF (active streaming format) comes from Microsoft. They developed two + variants of ASF, v1.0 and v2.0. v1.0 is used by their media tools (Windows + Media Player and Windows Media Encoder) and is very secret. v2.0 is published + and patented :). Of course they differ, there is no compatibility at all (it + is just another legal game). MPlayer supports only v1.0, as nobody has + ever seen v2.0 files :). Note that ASF files nowadays come with the extension + .WMA or .WMV.

+ + +

2.1.1.4 QuickTime/MOV files

+ +

These formats were designed by Apple and can contain any codec, CBR or VBR. + They usually have a .QT or .MOV extension. Ever since the MPEG4 group chose + QuickTime as the recommended file format for MPEG4, their MOV files come with + an + .MPG or .MP4 extension (Interestingly the video and audio streams in these + files are real MPG and AAC files. You can even extract them with the + -dumpvideo and -dumpaudio options.).

+ +

Note: Most new QuickTime files use Sorenson video and QDesign + Music audio. See our Sorenson codec + section.

+ + +

2.1.1.5 VIVO files

+ +

MPlayer happily demuxes VIVO file formats. The biggest disadvantage + of the format is that it has no index block, nor a fixed packet size or sync + bytes and most files lack even keyframes, so forget seeking!

+ +

The video codec of VIVO/1.0 files is standard h.263. The video codec + of VIVO/2.0 files is a modified, nonstandard h.263v2. The audio is the + same, it may be g.723 (standard), or Vivo Siren.

+ +

See the VIVO video codec and + VIVO audio codec sections for installation + instructions.

+ + +

2.1.1.6 FLI files

+ +

FLI is a very old file format used by Autodesk Animator, but it is a + common file format for short animations on the net. MPlayer demuxes + and decodes FLI movies and is even able to seek within them (useful when + looping with the -loop option). FLI files do not have keyframes, + so the picture will be messy for a short time after seeking.

+ + +

2.1.1.7 RealMedia (RM) files

+ +

Yes, MPlayer can read (demux) RealMedia (.rm) files. Seeking works, + but you have to explicitly specify the -forceidx option + (the format supports keyframes). Here are the lists of the supported + RealVideo + and RealAudio codecs.

+ + +

2.1.1.8 NuppelVideo files

+ +

NuppelVideo + is a TV grabber tool (AFAIK:). MPlayer can read its .NUV files (only + NuppelVideo 5.0). Those files can contain uncompressed YV12, YV12+RTJpeg + compressed, YV12 RTJpeg+lzo compressed, and YV12+lzo compressed frames. + MPlayer decodes them all (and also encodes them with + MEncoder to DivX/etc!). Seeking works.

+ + +

2.1.1.9 yuv4mpeg files

+ +

yuv4mpeg / yuv4mpeg2 is a file + format used by the mjpegtools programs. + You can grab, produce, filter or encode video in this format using these + tools. The file format is really a sequence of uncompressed YUV 4:2:0 + images.

+ + +

2.1.1.10 FILM files

+ +

This format is used on old Sega Saturn CD-Rom games.

+ + +

2.1.1.11 RoQ files

+ +

RoQ files are multimedia files used in some ID games such as Quake III and + Return to Castle Wolfenstein.

+ + +

2.1.1.12 OGG/OGM files

+ +

This is a new file format from Xiphophorus. + It can contain any video or audio codec, CBR or VBR. You will need to + have libogg and libvorbis installed + before compiling MPlayer to be able to play it.

+ + +

2.1.1.13 SDP files

+ +

SDP + is an IETF standard format for describing video and/or audio RTP streams. + (The "LIVE.COM Streaming Media" + libraries are required.)

+ + +

2.1.1.14 PVA files

+ +

PVA is an MPEG-like format used by DVB TV boards' software (e.g.: MultiDec, + WinTV) under Windows.

+ +

The PVA specifications can be downloaded from the following address: + http://www.technotrend.de/download/av_format_v1.pdf

+ + +

2.1.1.15 GIF files

+ +

The GIF format is a common format for web graphics. There are two + versions of the GIF spec, GIF87a and GIF89a. The main difference is that + GIF89a allows for animation. MPlayer supports both formats through use + of libungif or another libgif-compatible library. Non-animated GIFs will + be displayed as single frame videos. (Use the -loop and + -fixed-vo options to display these longer.)

+ +

MPlayer currently does not support seeking in GIF files. GIF files do + not necessarily have a fixed frame size, nor a fixed framerate. Rather, + each frame is of independent size and is supposed to be positioned in a + certain place on a field of fixed-size. The framerate is controlled by + an optional block before each frame that specifies the next frame's delay + in centiseconds.

+ +

Standard GIF files contain 24-bit RGB frames with at most an 8-bit + indexed pallete. These frames are usually LZW-compressed, although + some GIF encoders produce uncompressed frames to avoid patent issues + with LZW compression.

+ +

If your distribution does not come with libungif, download a copy from the + libungif homepage. + For detailed technical information, have a look at the + GIF89a specification.

+ + +

2.1.2 Audio formats

+ +

MPlayer is a Movie and not a Media player, although + it can play some audio file formats (they are listed in the sections below). + This is not a recommended usage of MPlayer, you better use + xmms.

+ + +

2.1.2.1 MP3 files

+ +

You may have problems playing certain MP3 files that MPlayer will + misdetect as MPEGs and play incorrectly or not at all. This cannot be fixed + without dropping support for certain broken MPEG files and thus will remain + like this for the foreseeable future. The -demuxer flag + described in the man page may help you in these cases.

+ + +

2.1.2.2 WAV files

+ + +

2.1.2.3 OGG/OGM files (Vorbis)

+ +

Requires properly installed libogg and + libvorbis.

+ + +

2.1.2.4 WMA/ASF files

+ + +

2.1.2.5 MP4 files

+ + +

2.1.2.6 CD audio

+ +

MPlayer can use cdparanoia (lib) to play CDDA (Audio CD). + The scope of this section does not contain enumerating cdparanoia's + features.

+ +

See the man page's -cdda option which can be used to + pass options to cdparanoia.

+ + +

2.1.2.7 XMMS

+ +

MPlayer can use XMMS input plugins to play many file formats. There are + plugins for SNES game tunes, SID tunes (from Commodore 64), many Amiga + formats, .xm, .it, VQF, musepack, Bonk, shorten and many others. You can find + them at the + XMMS input plugin page.

+ +

For this feature you need to have XMMS and compile MPlayer with + ./configure --enable-xmms. If that does not work, you might need + to set the XMMS plugin and library path explicitly by way of the + --with-xmmsplugindir and --withxmmslibdir + options.

+ + + diff -r 007a1bdce1f4 -r 1b3444713694 DOCS/en/mplayer.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/en/mplayer.1 Mon Feb 10 00:00:00 2003 +0000 @@ -0,0 +1,3524 @@ +.\" MPlayer (C) 2000-2003 Arpad Gereoffy +.\" This man page was/is done by Gabucino, Diego Biurrun, Jonas Jermann +.\" +.\" Run this to get a html version of the man page: +.\" cat mplayer.1 | sed s/SS\ 20/SS\ 4/ | groff -man -Thtml - > manpage.html +.\" Run this to get a text version of the man page: +.\" groff -m man -Tascii mplayer.1 | col -bx > manpage.txt +.\" +. +.\" -------------------------------------------------------------------------- +.\" Macro definitions +.\" -------------------------------------------------------------------------- +. +.\" default indentation is 7, don't change! +.nr IN 7 +.\" define indentation for suboptions +.nr SS 20 +.\" add new suboption +.de IPs +.IP "\\$1" \n(SS +.. +.\" begin of first level suboptions, end with .RE +.de RSs +.RS \n(IN+3 +.. +.\" begin of 2nd level suboptions +.de RSss +.PD 0 +.RS \n(SS+3 +.. +.\" end of 2nd level suboptions +.de REss +.RE +.PD 1 +.. +. +.\" -------------------------------------------------------------------------- +.\" Title +.\" -------------------------------------------------------------------------- +. +.TH MPlayer 1 "2003-01-11" +. +.SH NAME +mplayer \- Movie Player for Linux +.br +mencoder \- Movie Encoder for Linux + +.\" -------------------------------------------------------------------------- +.\" Synopsis +.\" -------------------------------------------------------------------------- +. +.SH SYNOPSIS +.na +.nh +.B mplayer +.RI [options]\ [ \ file\ | \ URL\ | \ playlist\ | \ -\ ] +.br +.B mplayer +'in +\n[.k]u +[global options] +.I file1 +[specific options] [file2] [specific options] +.br +.in +.B mplayer +'in +\n[.k]u +[global options] +.RI { "group of files and options" } +[group specific options] +.br +.in +.B mplayer +'in +\n[.k]u +.RI [ dvd | vcd | cdda | cddb | tv ] ://title +[options] +.br +.in +.B mplayer +'in +\n[.k]u +.RI [ mms[t] | http | http_proxy | rt[s]p ] :// +[user:passwd@]\fIURL\fP[:port] [options] +.br +.in +.B mencoder +[options] +.RI [ \ file\ | \ URL\ | \ -\ ] +[\-o\ file] +.br +.B gmplayer +[options] +[\-skin\ skin] +.ad +.hy + +.\" -------------------------------------------------------------------------- +.\" Description +.\" -------------------------------------------------------------------------- +. +.SH DESCRIPTION +.B mplayer +is a movie player for LINUX (runs on many other Unices and non\-x86 CPUs, see +the documentation). +It plays most MPEG/\:VOB, AVI, ASF/\:WMA/\:WMV, RM, QT/\:MOV/\:MP4, OGG/\:OGM, +VIVO, FLI, NuppelVideo, yuv4mpeg, FILM and RoQ files, supported by many +native, XAnim, and Win32 DLL codecs. +You can watch VideoCD, SVCD, DVD, 3ivx, DivX\ 3/\:4/\:5 and even WMV movies, +too (without using the avifile library). +.PP +Another great feature of MPlayer is the wide range of supported output +drivers. +It works with X11, XV, DGA, OpenGL, SVGAlib, fbdev, AAlib, DirectFB, but you +can also use GGI, SDL (and this way all their drivers), VESA (on every VESA +compatible card, even without X11), some low level card-specific drivers (for +Matrox, 3Dfx and ATI) and some hardware MPEG decoder boards, such as the +Siemens DVB, DXR2 and DXR3/\:Hollywood+. +Most of them support software or hardware scaling, so you can enjoy movies in +fullscreen. +.PP +MPlayer has an onscreen display (OSD) for status information, nice big +antialiased shaded subtitles and visual feedback for keyboard controls. +European/\:ISO 8859-1,2 (Hungarian, English, Czech, etc), Cyrillic and Korean +fonts are supported along with 10 subtitle formats (MicroDVD, SubRip, +SubViewer, Sami, VPlayer, RT, SSA, AQTitle, JACOsub and our own: MPsub) and +DVD subtitles (SPU streams, VobSub and Closed Captions). +.PP +.B mencoder +(MPlayer's Movie Encoder) is a simple movie encoder, designed to encode +MPlayer-playable movies (see above) to other MPlayer-playable formats (see +below). +It encodes to DivX4, XviD, one of the libavcodec codecs and PCM/\:MP3/\:VBRMP3 +audio in 1, 2 or 3\ passes. +Furthermore it has stream copying abilities, a powerful plugin system (crop, +expand, flip, postprocess, rotate, scale, noise, rgb/\:yuv conversion) and +more. +.PP +.B gmplayer +is MPlayer with a graphical user interface. +It has the same options as MPlayer. + + +.\" -------------------------------------------------------------------------- +.\" Options +.\" -------------------------------------------------------------------------- +. +.SH "GENERAL NOTES" +.B Also see the HTML documentation! +.PP +Every 'flag' option has a 'noflag' counterpart, e.g.\& the opposite of the +\-fs option is \-nofs. +.PP +You can put all of the options in a configuration file which will be read +every time mplayer is run. +The system-wide configuration file 'mplayer.conf' is in your configuration +directory (e.g.\& /etc/\:mplayer or /usr/\:local/\:etc/\:mplayer), the user +specific one is '~/\:.mplayer/\:config'. +User specific options override system\-wide options and options given on the +command line override either. +The syntax of the configuration files is 'option=', everything after a +\'#' is considered a comment. +Options that work without values can be enabled by setting them to 'yes' or +\'1' and disabled by setting them to 'no' or '0'. +Even suboptions can be specified in this way. + +.I EXAMPLE: +.br +# Use Matrox driver by default. +.br +vo=xmga +.br +# I love practicing handstands while watching videos. +.br +flip=yes +.br +# Decode/\:encode multiple files from png, start with -mf on +.br +mf= type=png:fps=25 + +You can also write file-specific configuration files. +If you wish to have a config file for a file called 'movie.avi', create a file +named 'movie.avi.conf' with the file-specific options in it and put it in +~/.mplayer or in the same directory as the file. + +.SH "PLAYER OPTIONS (MPLAYER ONLY)" +.TP +.B \-, \-use-stdin +Read data from stdin. +The \-idx option does not work in conjunction with this. +.TP +.B \-autoq (use with \-vop pp) +Dynamically changes the level of postprocessing depending on available spare +CPU time. +The number you specify will be the maximum level used. +Usually you can use some big number. +You have to use \-vop pp without parameters in order to use this. +.TP +.B \-autosync +Gradually adjusts the A/\:V sync based on audio delay measurements. +Specifying \-autosync\ 0, the default, will cause frame timing to be based +entirely on audio delay measurements. +Specifying \-autosync\ 1 will do the same, but will subtly change the A/\:V +correction algorithm used. +An uneven video frame rate in a movie which plays fine with \-nosound can +often be helped by setting this to an integer value greater than 1. +The higher the value, the closer the timing will be to -nosound. +Try \-autosync\ 30 to smooth out problems with sound drivers which do +not implement a perfect audio delay measurement. +With this value, if large A/\:V sync offsets occur, they will only take about +1 or 2\ seconds to settle out. +This delay in reaction time to sudden A/\:V offsets should be the only +side-effect of turning this option on, for all sound drivers. +.TP +.B \-benchmark +Prints some statistics on CPU usage and dropped frames at the end. +Use in combination with \-nosound and \-vo null for benchmarking only the +video codec. +.TP +.B \-edl +Enables edit decision list (EDL) actions during playback. +Video will be skipped over and audio will be muted and unmuted according to +the entries in the given file. +See DOCS/documentation.html#edl for details on how to use this. +.TP +.B \-edlout +Creates a new file and writes edit decision list (EDL) records to that file. +During playback, when the user hits 'i', an entry to skip over the last two +seconds of playback will be written to the file. +This provides a starting point from which the user can fine-tune EDL entries +later. +See DOCS/documentation.html#edl for details. +.TP +.B \-enqueue (GUI only) +Enqueue files given on the command line in the playlist instead of playing them +immediately. +.TP +.B \-fixed-vo (BETA CODE!) +Enforces a fixed video system for multiple files (one (un)initialisation for +all files). +Therefore only one window will be opened for all files. +Currently the following drivers are fixed-vo compliant: x11, xv, xvidix, xmga, +gl2, and svga. +.TP +.B \-framedrop (also see \-hardframedrop) +Skip displaying some frames to maintain A/\:V sync on slow systems. +Video filters are not applied to such frames. +For B frames even decoding is skipped completely. +.TP +.B \-h, \-help, \-\-help +Show short summary of options. +.TP +.B \-hardframedrop +More intense frame dropping (breaks decoding). +Leads to image distortion! +.TP +.B \-identify +Show file parameters in easy parsable format. +The wrapper script TOOLS/midentify suppresses the other mplayer output and +(hopefully) shellescapes the filenames. +.TP +.B \-input +This option can be used to configure certain parts of the input system. +Paths are relative to ~/\:.mplayer/. + +.I NOTE: +.br +Autorepeat is currently only supported by joysticks. +.br +Available commands are: + +.PD 0 +.RSs +.IPs conf= +Read alternative input.conf. +If given without pathname, ~/\:.mplayer is assumed. +.IPs ar\-delay +Delay in msec before we start to autorepeat a key (0 to disable). +.IPs ar\-rate +How many key presses per second when we autorepeat. +.IPs keylist +Prints all keys that can be bound. +.IPs cmdlist +Prints all commands that can be bound. +.IPs js\-dev +Specifies the joystick device to use (default is /dev/\:input/\:js0). +.IPs file +Read commands from the given file. +Mostly useful with a fifo. +.RE +.PD 1 +. +.TP +.B \-lircconf +Specifies a configuration file for LIRC (Linux Infrared Remote Control, see +http://www.lirc.org) if you don't like the default ~/\:.lircrc. +.TP +.B \-loop +Loops movie playback times. +0 means forever. +.TP +.B \-menu (BETA CODE) +Turn on OSD menu support. +.TP +.B \-menu-root (BETA CODE) +Specify the main menu. +.TP +.B \-menu-cfg (BETA CODE) +Use an alternative menu.conf. +.TP +.B \-nojoystick +Turns off joystick support. +Default is on, if compiled in. +.TP +.B \-nolirc +Turns off LIRC support. +.TP +.B \-nortc \ \ +Turns off usage of the Linux RTC (real-time clock \- /dev/\:rtc) as timing +mechanism. +.TP +.B \-playlist +Play files according to a playlist (1 file per row or Winamp or ASX format). +.TP +.B \-quiet \ \ +Display less output and status messages. +.TP +.B \-really\-quiet \ \ +Display even less output and status messages. +.TP +.B \-sdp +Specifies that the input file is a SDP ('Session Description Protocol') +file that describes an RTP session (see http://www.live.com/mplayer/). +.TP +.B \-shuffle \ \ +Play files in random order. +.TP +.B \-skin (BETA CODE) +Load skin from the given directory (WITHOUT path name). + +.I EXAMPLE: +.PD 0 +.RSs +.IPs "\-skin fittyfene" +tries Skin/fittyfene. +It first checks +/usr/local/share/mplayer/ +and afterwards ~/.mplayer/. +.RE +.PD 1 +. +.TP +.B \-slave \ \ +This option switches on slave mode. +This is intended for use of MPlayer as a backend to other programs. +Instead of intercepting keyboard events, MPlayer will read simplistic command +lines from its stdin. +The section +.B SLAVE MODE PROTOCOL +explains the syntax. +.TP +.B \-softsleep +Uses high quality software timers. +As precise as the RTC without requiring special privileges. +Comes at the price of higher CPU consumption. +.TP +.B \-speed <0.01\-100> +Set playback speed rate. +.TP +.B \-sstep +Specifies seconds between displayed frames. +Useful for slideshows. + + +.SH "DEMUXER/STREAM OPTIONS" +.TP +.B \-aid (also see \-alang option) +Select audio channel [MPEG: 0\-31 AVI/\:OGM: 1\-99 ASF/\:RM: 0\-127 +VOB(AC3): 128\-159 VOB(LPCM): 160\-191] +MPlayer prints the available IDs when running in verbose (-v) mode. +.TP +.B \-alang (also see \-aid option) +Works only for DVD playback. +It selects the DVD audio language and always tries to play audio streams whose +language matches the given code. +For the list of available languages, use with the \-v option and look at the +output. + +.I EXAMPLE: +.PD 0 +.RSs +.IPs "\-alang hu,en" +Plays Hungarian and falls back to English if Hungarian is not available. +.RE +.PD 1 +. +.TP +.B \-audio\-demuxer (\-audiofile only) +Force audio demuxer type for \-audiofile. +Give the demuxer ID as defined in demuxers.h. +Use \-audio\-demuxer 17 to force .mp3 detection. +.TP +.B \-audiofile +Play audio from an external file (WAV, MP3 or Ogg Vorbis) while viewing a +movie. +.TP +.B \-bandwidth +Specify the maximum bandwidth for network streaming (for servers that are +able to send content in different bitrates). +Usefull if you want to watch live streamed media behind a slow connection. +.TP +.B \-cdrom\-device +Override default CDROM drive name /dev/\:cdrom. +.TP +.B \-cache +This option specifies how much memory (in kbytes) to use when precaching a +file/\:URL. +Especially useful on slow media (default is \-nocache). +.TP +.B \-cdda +This option can be used to tune the CD Audio reading feature of MPlayer. +.br +Available options are: +. +.RSs +.IPs speed= +set CD spin speed +.IPs paranoia=<0\-2> +set paranoia level +.RSss +0: disable checking +.br +1: overlap checking only (default) +.br +2: full data correction and verification +.REss +.IPs generic-dev= +use specified generic SCSI device +.IPs sector-size= +atomic read size +.IPs overlap= +force minimum overlap search during verification to sectors. +.IPs toc-bias +Assume that the beginning offset of track 1 as reported in the TOC will be +addressed as LBA\ 0. +Some Toshiba drives need this for getting track boundaries correct. +.IPs toc-offset= +Add sectors to the values reported when addressing tracks. +May be negative. +.IPs (no)skip +(never) accept imperfect data reconstruction. +.RE +. +.TP +.B \-channels +Change the number of playback channels, defaults to '2' if not specified. +If the number of output channels is bigger than the number of input channels +empty channels are inserted (unless mixing from mono to stereo, then the mono +channel is repeated in both output channels). +If the number of output channels is smaller than the number of input channels, +results depend on the audio decoder (\-afm). +MPlayer asks the decoder to decode the audio into as many channels as +specified. +Now it's up to the decoder to fulfill the requirement. +If the decoder outputs more channels than requested, the exceeding channels +are truncated. +This is usually only important when playing videos with AC3 audio (like DVDs). +In that case liba52 does the decoding by default and correctly downmixes the +audio into the requested number of channels. + +.I NOTE: +.br +This option is honored by codecs (AC3 only) filters (surround) and ao drivers +(OSS at least). +.br +Available options are: + +.PD 0 +.RSs +.IPs 2 +Stereo +.IPs 4 +Surround +.IPs 6 +Full 5.1 +.RE +.PD 1 +. +.TP +.B \-chapter [-] +Specify which chapter to start playing at. +Optionally specify which chapter to end playing at (default: 1). +Examples can be found below. +.TP +.B \-csslib +(old-style DVD option) This option is used to override the default location of +libcss.so. +.TP +.B \-cuefile (see \-vcd too) +Play (S)VCD from CDRwin's (bin/cue fileformat) disk image, described by the +specified file. +.TP +.B \-demuxer +Force demuxer type. +Give the demuxer ID as defined in demuxers.h. +Use \-demuxer 17 to force .mp3 detection. +.TP +.B \-dumpaudio (MPLAYER only) +Dumps raw compressed audio stream to ./\:stream.dump (useful with mpeg/\:ac3). +.TP +.B \-dumpfile (MPLAYER only) +Specify which file MPlayer should dump to. +Should be used together with \-dumpaudio / \-dumpvideo / \-dumpstream. +.TP +.B \-dumpstream (MPLAYER only) +Dumps the raw stream to ./\:stream.dump. +Useful when ripping from DVD or network. +.TP +.B \-dumpvideo (MPLAYER only) +Dump raw compressed video stream to ./\:stream.dump (not very usable). +.TP +.B \-dvd +Tell MPlayer which movies (specified by title id) to play. +For example sometimes '1' is a trailer, and '2' is the real movie. + +.I NOTE: +.br +Sometimes deinterlacing is required for DVD playback, +see the \-vop pp=0x20000 option. +.TP +.B \-dvd\-device +Override default DVD device name /dev/\:dvd. +.TP +.B \-dvdangle +Some DVD discs contain scenes that can be viewed from multiple angles. +Here you can tell MPlayer which angles to use (default: 1). +Examples can be found below. +.TP +.B \-dvdauth +(old-style DVD option) Turns on DVD authentication using the given device. +.TP +.B \-dvdkey +(old-style DVD option) When decoding a VOB file copied undecrypted from DVD, +this option gives the CSS key needed to decrypt the VOB (the key is printed +when authenticating with the DVD drive using \-dvdauth). +.TP +.B \-dvdnav (BETA CODE!) +Force usage of libdvdnav. +.TP +.B \-forceidx +Force rebuilding of INDEX. +Useful for files with broken index (desyncs, etc). +Seeking will be possible. +You can fix the index permanently with MEncoder (see the documentation). +.TP +.B \-fps +Override video framerate (if value is wrong/\:missing in the header) (float +number). +.TP +.B \-frames +Play/\:convert only first frames, then quit. +.TP +.B \-hr\-mp3\-seek (.MP3 only) +Hi\-res mp3 seeking. +Default is: enabled when playing from external MP3 file, as we need to seek +to the very exact position to keep A/\:V sync. It can be slow especially when +seeking backwards \- it has to rewind to the beginning to find the exact +frame. +.TP +.B \-idx (also see \-forceidx) +Rebuilds INDEX of the AVI if no INDEX was found, +thus allowing seeking. +Useful with broken/\:incomplete downloads, or badly created AVIs. +.TP +.B \-mc +Maximum A-V sync correction per frame (in seconds). +.TP +.B \-mf +Used when decoding from multiple PNG or JPEG files. +.br +Available options are: + +.PD 0 +.RSs +.IPs on\ \ \ +turns on multifile support +.IPs w= +width of the output (autodetect) +.IPs h= +height of the output (autodetect) +.IPs fps= +fps of the output (default: 25) +.IPs type= +type of input files (available types: jpeg, png, tga) +.RE +.PD 1 +. +.TP +.B \-ni (.AVI only) +Force usage of non\-interleaved AVI parser (fixes playing +of some bad AVI files). +.TP +.B \-nobps (.AVI only) +Do not use average byte/\:sec value for A\-V sync (AVI). +Helps with some AVI files with broken header. +.TP +.B \-noextbased +Disables filename-extension based demuxer selection. +By default, when file type (demuxer) cannot be detected reliably +(the file has no header or it is not reliable enough), the filename +extension is used to select demuxer. It always falls back to content-based +demuxer selection. +.TP +.B \-passwd (see \-user option too) +Specify password for http authentication. +.TP +.B \-rawaudio +This option lets you play raw audio files. +It may also be used to play audio CDs which are not 44KHz 16Bit stereo. +.br +Available options are: + +.PD 0 +.RSs +.IPs on\ \ \ +use raw audio demuxer +.IPs channels= +number of channels +.IPs rate= +rate in samples per second +.IPs samplesize= +sample size in byte +.IPs format= +fourcc in hex +.RE +.PD 1 +. +.TP +.B \-rawvideo +This option lets you play raw video files. +.br +Available options are: + +.PD 0 +.RSs +.IPs on\ \ \ +use raw video demuxer +.IPs fps= +rate in frames per second, default 25.0 +.IPs sqcif|qcif|cif|4cif|pal|ntsc +set standard image size +.IPs w= +image width in pixels +.IPs h= +image height in pixels +.IPs y420|yv12|yuy2|y8 +set colorspace +.IPs format= +colorspace (fourcc) in hex +.IPs size= +frame size in bytes +.RE +.PD 1 +. +.TP +.B \-rtsp-stream-over-tcp +Used with 'rtsp://' URLs to specify that the resulting incoming RTP and RTCP +packets be streamed over TCP (using the same TCP connection as RTSP). +This option may be useful if you have a broken Internet connection that does +not pass incoming UDP packets (see http://www.live.com/mplayer/). +.TP +.B \-skipopening +Skip DVD opening (dvdnav only). +.TP +.B \-sb (see \-ss option too) +Seek to byte position. +Useful for playback from CDROM images / .VOB files with junk at the beginning. +.TP +.B \-srate +Forces the given audio playback rate, changing video speed to keep a-v sync. +MEncoder passes this value to lame for resampling. +.TP +.B \-ss