mirror of https://github.com/mpv-player/mpv
1841 lines
79 KiB
HTML
1841 lines
79 KiB
HTML
<HTML>
|
||
<BODY BGCOLOR=WHITE>
|
||
|
||
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
|
||
<P><CENTER><B>MPlayer - Movie Player for LINUX (C) 2000-2002 Arpad Gereoffy (A'rpi/ESP-team)</B><BR>
|
||
<BR><A HREF="http://www.mplayerhq.hu">http://www.mplayerhq.hu</A><BR><BR>
|
||
[ English ]</A>
|
||
<A HREF="Hungarian/documentation.html">[ Hungarian ]</A>
|
||
<A HREF="German/documentation.html">[ German ]</A>
|
||
<A HREF="French/documentation.html">[ French ]</A>
|
||
<A HREF="Polish/documentation.html">[ Polish ]</A>
|
||
<A HREF="Italian/documentation.html">[ Italian ]</A>
|
||
</CENTER></P>
|
||
|
||
<P><HR></P>
|
||
|
||
<P>Table of Contents</P>
|
||
|
||
<P><HR></P>
|
||
|
||
<P>
|
||
<UL>
|
||
<LI><A HREF="#0">0. How to read this documentation</A></LI>
|
||
<LI><A HREF="#1">1. Introduction</A></LI>
|
||
<UL>
|
||
<LI><A HREF="#1.1">1.1 Overview</A></LI>
|
||
<LI><A HREF="#1.2">1.2 History</A></LI>
|
||
<LI><A HREF="#1.3">1.3 Installation / Hints</A></LI>
|
||
<LI><A HREF="#1.4">1.4 What about the GUI?</A></LI>
|
||
<LI><A HREF="#1.5">1.5 Subtitles and OSD</A></LI>
|
||
</UL>
|
||
<LI><A HREF="#2">2. Features</A></LI>
|
||
<UL>
|
||
<LI><A HREF="formats.html">2.1 Supported formats</A></LI>
|
||
<UL>
|
||
<LI><A HREF="formats.html#2.1.1">2.1.1 Video</A></LI>
|
||
<UL>
|
||
<LI><A HREF="formats.html#2.1.1.1">2.1.1.1 MPG, VOB, DAT files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.2">2.1.1.2 AVI files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.3">2.1.1.3 ASF/WMV files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.4">2.1.1.4 QT/MOV files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.5">2.1.1.5 VIV files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.6">2.1.1.6 FLI files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.7">2.1.1.7 RealMedia files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.8">2.1.1.8 NuppelVideo files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.9">2.1.1.9 yuv4mpeg files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.10">2.1.1.10 FILM files</A></LI>
|
||
<LI><A HREF="formats.html#2.1.1.11">2.1.1.11 RoQ files</A></LI>
|
||
</UL>
|
||
<LI><A HREF="formats.html#2.1.2">2.1.2 Audio</A></LI>
|
||
</UL>
|
||
<LI><A HREF="codecs.html#2.2">2.2 Supported codecs</A></LI>
|
||
<UL>
|
||
<LI><A HREF="codecs.html#2.2.1">2.2.1 Video</A></LI>
|
||
<UL>
|
||
<LI><A HREF="codecs.html#2.2.1.1">2.2.1.1 DivX4</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.2">2.2.1.2 ffmpeg's DivX/libavcodec</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.3">2.2.1.3 XAnim codecs</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.4">2.2.1.4 VIVO video</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.5">2.2.1.5 MPEG1/2 video</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.6">2.2.1.6 MS Video1</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.7">2.2.1.7 Cinepak CVID</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.1.8">2.2.1.8 RealVideo</A></LI>
|
||
</UL>
|
||
<LI><A HREF="codecs.html#2.2.2">2.2.2 Audio</A></LI>
|
||
<UL>
|
||
<LI><A HREF="codecs.html#2.2.2.1">2.2.2.1 Software AC3 decoding</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.2.2">2.2.2.2 Hardware AC3 decoding</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.2.3">2.2.2.3 libmad support</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.2.4">2.2.2.4 VIVO audio</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.2.5">2.2.2.5 RealAudio</A></LI>
|
||
</UL>
|
||
<LI><A HREF="codecs.html#2.2.3">2.2.3 Win32 codec importing howto</A></LI>
|
||
<UL>
|
||
<LI><A HREF="codecs.html#2.2.3.1">2.2.3.1 VFW codecs</A></LI>
|
||
<LI><A HREF="codecs.html#2.2.3.2">2.2.3.2 DirectShow codecs</A></LI>
|
||
</UL>
|
||
</UL>
|
||
<LI><A HREF="video.html">2.3 Output devices</A></LI>
|
||
<UL>
|
||
<LI><A HREF="video.html#2.3.1">2.3.1 Video</A></LI>
|
||
<UL>
|
||
<LI><A HREF="video.html#2.3.1.1">2.3.1.1 Setting up MTRR</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2">2.3.1.2 Xv</A></LI>
|
||
<UL>
|
||
<LI><A HREF="video.html#2.3.1.2.1">2.3.1.2.1 3dfx</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2.2">2.3.1.2.2 S3</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2.3">2.3.1.2.3 nVidia</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2.4">2.3.1.2.4 ATI</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2.5">2.3.1.2.5 NeoMagic</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.2.6">2.3.1.2.6 Trident cards</A></LI>
|
||
</UL>
|
||
<LI><A HREF="video.html#2.3.1.3">2.3.1.3 DGA</A></LI>
|
||
<UL>
|
||
<LI><A HREF="video.html#2.3.1.3.1">2.3.1.3.1 Summary</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.2">2.3.1.3.2 What is DGA</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.3">2.3.1.3.3 Installing DGA support for MPlayer</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.4">2.3.1.3.4 Resolution switching</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.5">2.3.1.3.5 DGA & MPlayer</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.6">2.3.1.3.6 Features of the DGA driver</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.7">2.3.1.3.7 Speed issues</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.8">2.3.1.3.8 Known bugs</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.9">2.3.1.3.9 Future work</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.A">2.3.1.3.A Some modelines</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.3.B">2.3.1.3.B Bug Reports</A></LI>
|
||
</UL>
|
||
<LI><A HREF="video.html#2.3.1.4">2.3.1.4 SDL</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.5">2.3.1.5 SVGAlib</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.6">2.3.1.6 Framebuffer output (FBdev)</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.7">2.3.1.7 Matrox framebuffer (mga_vid)</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.8">2.3.1.8 SiS 6326 framebuffer (sis_vid)</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.9">2.3.1.9 3dfx YUV support (tdfxfb)</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.10">2.3.1.10 OpenGL output</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.11">2.3.1.11 AAlib - text mode displaying</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.12">2.3.1.12 VESA - output to VESA BIOS</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.13">2.3.1.13 X11</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.14">2.3.1.14 Rage128 / Radeon video overlay</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.15">2.3.1.15 Vidix</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.16">2.3.1.16 Zr (for some MJPEG capture/playback boards)</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.A">2.3.1.A TVout</A></LI>
|
||
<UL>
|
||
<LI><A HREF="video.html#2.3.1.A.1">2.3.1.A.1 Matrox G400</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.A.2">2.3.1.A.2 ATI</A></LI>
|
||
<LI><A HREF="video.html#2.3.1.A.3">2.3.1.A.3 Voodoo 3/Banshee</A></LI>
|
||
</UL>
|
||
</UL>
|
||
<LI><A HREF="sound.html#2.3.2">2.3.2 Audio</A></LI>
|
||
<UL>
|
||
<LI><A HREF="sound.html#2.3.2.1">2.3.2.1 Soundcard experiences, recommendations</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2">2.3.2.2 Audio plugins</A></LI>
|
||
<UL>
|
||
<LI><A HREF="sound.html#2.3.2.2">2.3.2.2 Summary</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.1">2.3.2.2.1 Up/Downsampling</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.2">2.3.2.2.2 Surround Sound decoding</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.3">2.3.2.2.3 Sample format converter</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.4">2.3.2.2.4 Delay</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.5">2.3.2.2.5 Software volume control</A></LI>
|
||
<LI><A HREF="sound.html#2.3.2.2.6">2.3.2.2.6 Extrastereo</A></LI>
|
||
</UL>
|
||
</UL>
|
||
</UL>
|
||
<LI><A HREF="encoding.html#2.4">2.4 MEncoder - An Encoder based on MPlayer</A></LI>
|
||
<UL>
|
||
<LI><A HREF="encoding.html#2.4.1">2.4.1 Overview</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.2">2.4.2 Compiling</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3">2.4.3 Features</A></LI>
|
||
<UL>
|
||
<LI><A HREF="encoding.html#2.4.3">2.4.3 Summary</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.1">2.4.3.1 Encoding 2 or 3-pass DivX4</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.2">2.4.3.2 Rescaling movies</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.3">2.4.3.3 Streamcopy</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.4">2.4.3.4 Fixing AVIs with broken index</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.5">2.4.3.5 Encoding with the libavcodec codec family</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.3.6">2.4.3.6 Encoding from multiple input image files (MJPEG/MPNG)</A></LI>
|
||
</UL>
|
||
<LI><A HREF="encoding.html#2.4.4">2.4.4 Syntax</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.5">2.4.5 Available options</A></LI>
|
||
<LI><A HREF="encoding.html#2.4.6">2.4.6 Examples</A></LI>
|
||
</UL>
|
||
<LI><A HREF=#2.5>2.5 TV input</A></LI>
|
||
<UL>
|
||
<LI><A HREF=#2.5.1>2.5.1 Overview</A></LI>
|
||
<LI><A HREF=#2.5.2>2.5.2 Compilation</A></LI>
|
||
<LI><A HREF=#2.5.3>2.5.3 Available options</A></LI>
|
||
<LI><A HREF=#2.5.4>2.5.4 Keyboard control</A></LI>
|
||
<LI><A HREF=#2.5.5>2.5.5 Examples</A></LI>
|
||
</UL>
|
||
</UL>
|
||
<LI><A HREF="#3">3. Usage</A></LI>
|
||
<UL>
|
||
<LI><A HREF="#3.1">3.1 Command line</A></LI>
|
||
<LI><A HREF="#3.2">3.2 Control from keyboard</A></LI>
|
||
<LI><A HREF="#3.3">3.3 Control from LIRC (Linux Infrared Remote Control)</A></LI>
|
||
<LI><A HREF="#3.4">3.4 Streaming from network or pipes</A></LI>
|
||
</UL>
|
||
<LI><A HREF="cd-dvd.html#4">4. CD/DVD section</A></LI>
|
||
<UL>
|
||
<LI><A HREF="cd-dvd.html#4.1">4.1 CD drives</A></LI>
|
||
<LI><A HREF="cd-dvd.html#4.2">4.2 DVD playback</A></LI>
|
||
<LI><A HREF="cd-dvd.html#4.3">4.3 DVD playback FAQ</A></LI>
|
||
</UL>
|
||
<LI><A HREF="faq.html">5. FAQ section</A></LI>
|
||
<UL>
|
||
<LI><A HREF="faq.html#5.1">5.1 Compilation</A></LI>
|
||
<LI><A HREF="faq.html#5.2">5.2 General questions</A></LI>
|
||
<LI><A HREF="faq.html#5.3">5.3 File playing problems</A></LI>
|
||
<LI><A HREF="faq.html#5.4">5.4 Video/audio driver problems</A></LI>
|
||
<LI><A HREF="faq.html#5.5">5.5 Feature requests</A></LI>
|
||
<LI><A HREF="faq.html#5.6">5.6 Encoding</A></LI>
|
||
</UL>
|
||
<LI><A HREF="#6">6. Misc OS'es</A></LI>
|
||
<UL>
|
||
<LI><A HREF="#6.1">6.1 Debian packaging</A></LI>
|
||
<LI><A HREF="#6.2">6.2 FreeBSD</A></LI>
|
||
<LI><A HREF="#6.3">6.3 Solaris</A></LI>
|
||
<LI><A HREF="#6.4">6.4 StrongARM</A></LI>
|
||
<LI><A HREF="#6.5">6.5 SGI/Irix</A></LI>
|
||
<LI><A HREF="#6.6">6.6 QNX</A></LI>
|
||
</UL>
|
||
<LI><A HREF="#A">A. Authors</A></LI>
|
||
<UL>
|
||
<LI><A HREF="#A2">A/2. Maintainers</A></LI>
|
||
</UL>
|
||
<LI><A HREF="#B">B. Mailing lists</A></LI>
|
||
<LI><A HREF="bugreports.html">C. How to report bugs</A></LI>
|
||
<UL>
|
||
<LI><A HREF="tech/patches.txt">C/2. How to send patches</A></LI>
|
||
</UL>
|
||
<LI><A HREF="#D">D. Known bugs</A></LI>
|
||
<LI><A HREF="skin-en.html">X. How To Be A Famous SkinMaker in 5 mins!</A></LI>
|
||
</UL>
|
||
</P>
|
||
|
||
<P>
|
||
<HR>
|
||
Developer Cries
|
||
<HR>
|
||
</P>
|
||
|
||
<P>
|
||
<UL>
|
||
<LI><A HREF="users_against_developers.html#gcc">1. GCC 2.96</A></LI>
|
||
<LI><A HREF="users_against_developers.html#binary">2. Binary packaging</A></LI>
|
||
<LI><A HREF="users_against_developers.html#nvidia">3. NVidia opinions</A></LI>
|
||
<LI><A HREF="users_against_developers.html#kotsog">4. About Joe Barr</A></LI>
|
||
</UL>
|
||
</P>
|
||
|
||
<P><HR></P>
|
||
|
||
<P><B><A NAME=0>0. How to read this documentation</A></B></P>
|
||
|
||
<P>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 TOC (Table of Contents) and
|
||
search for the topic, read the FAQ, or try grepping though the files.</P>
|
||
|
||
<P>The main rule of this documentation: if it's not documented, it
|
||
<U>does not exist</U>. 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 :)</P>
|
||
|
||
|
||
<P><B><A NAME=1>1. Introduction</A></B></P>
|
||
|
||
<P><B><A NAME=1.1>1.1. Overview</A></B></P>
|
||
|
||
<P><B>MPlayer</B> is a movie player for LINUX (runs on many other Unices, and
|
||
<B>non-x86</B> CPUs, see <A HREF="#6">section 6</A>). It plays most MPEG, VOB,
|
||
AVI, VIVO, ASF/WMV, QT/MOV, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ files,
|
||
supported by many native, XAnim, and
|
||
Win32 DLL codecs. You can watch <B>VideoCD</B>, <B>SVCD</B>, <B>DVD</B>,
|
||
<B>3ivx</B>, and even <B>DivX</B> movies too (and you don't need the avifile
|
||
library at all!). The 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 use GGI and SDL (and this way all their drivers)
|
||
and some lowlevel card-specific drivers (for Matrox, 3Dfx and Radeon) too! Most
|
||
of them supports software or hardware scaling, so you can enjoy movies in
|
||
fullscreen. <B>MPlayer</B> supports displaying through some hardware MPEG
|
||
decoder boards, such as the <B><A HREF="DVB">DVB</A></B> and <B> <A
|
||
HREF="DXR3">DXR3/Hollywood+</A></B> ! And what about the nice big antialiased
|
||
shaded subtitles (<B>10 supported types!!!</B>) with european/ISO 8859-1,2
|
||
(hungarian, english, czech, etc), cyrillic, korean fonts, and OSD?</P>
|
||
|
||
<P><B>MPlayer</B> is basically GPL, but contains some non-GPL code which is not
|
||
allowed to be distributed in binary form, and also contains the OpenDivX
|
||
library which has special license. We are still developing towards GPL.</P>
|
||
|
||
<P>Distributing <B>MPlayer</B> in the form of binaries and/or binary packages
|
||
is currently impossible, speaking about both <B>technical</B> and <B>law</B>
|
||
areas. Detailed information can be found in the second part of <A HREF="users_against_developers.html#binary">this file</A>,
|
||
and it is recommended to read it.</P>
|
||
|
||
<P>I didn't write any codecs, just some players. I spent
|
||
a lot of time finding the best way to parse bad damaged input files
|
||
(both MPEG and AVI) and to do perfect A-V sync with seeking ability.
|
||
My player is rock solid playing damaged MPEG files (useful for some VCDs),
|
||
and it plays bad AVI files which are unplayable with the famous
|
||
windows media player. Even AVI files without index chunk are playable, and
|
||
you can temporarily rebuild their indexes with the -idx option, or
|
||
permanently with <B>MEncoder</B>, thus enabling seeking!
|
||
As you see, stability and quality are the most important things for me,
|
||
but the speed is also amazing.</P>
|
||
|
||
|
||
<P><B><A NAME=1.2>1.2. History</A></B></P>
|
||
|
||
<P>This began a year ago...
|
||
I've tried lots of players under linux (mtv,xmps,dvdview,livid/oms,VideoLAN,
|
||
xine,xanim,avifile,xmmp) but they all have some problem. Mostly with special
|
||
files or with audio/video sync. Most of them is unable to play both MPEG1,
|
||
MPEG2 and AVI (DivX) files. Many players have image quality or speed problems
|
||
too. So I've decided to write/modify one...</P>
|
||
|
||
<P><UL>
|
||
<LI><B>mpg12play v0.1-v0.3:</B><BR>
|
||
The first try, hacked together in a half hour!
|
||
I've used libmpeg3 from www.heroinewarrior.com up to the version 0.3,
|
||
but there were image quality and speed problems with it.</LI>
|
||
<LI><B>mpg12play v0.5-v0.87:</B><BR>
|
||
Mpeg codec replaced with DVDview by Dirk Farin, it was a great stuff,
|
||
but it was slow and was written in C++ (I hate C++!!!)</LI>
|
||
<LI><B>mpg12play v0.9-v0.95pre5:</B><BR>
|
||
Mpeg codec was libmpeg2 (mpeg2dec) by Aaron Holtzman & Michel Lespinasse.
|
||
It's great, optimized very fast C code with perfect image quality and
|
||
100% MPEG standard conformance.</LI>
|
||
<LI><B>MPlayer v0.3-v0.9:</B><BR>
|
||
It was a pack of two programs: mpg12playv0.95pre6 and my new simple AVI
|
||
player 'avip' based on avifile's Win32 DLL loader.</LI>
|
||
<LI><B>MPlayer v0.10:</B><BR>
|
||
The MPEG and AVI player in a single binary!</LI>
|
||
<LI><B>MPlayer v0.11:</B><BR>
|
||
Some new developers joined and from 0.11 the mplayer project is a team-work!
|
||
Added .ASF file support, and OpenDivX (see www.projectmayo.com) en/decoding.</LI>
|
||
<LI><B>MPlayer v0.17 "The IdegCounter"</B><BR>
|
||
The release version of the 0.11pre after 4 months of heavy development!
|
||
Try it, and be amazed! Thousands of new features added... and of course
|
||
old code was improved too, bugs removed etc.</LI>
|
||
<LI><B>MPlayer 0.18 "The BugCounter"</B><BR>
|
||
2 months since 0.17 and here's a new release.. Completed ASF support,
|
||
more subtitle formats, introduced libao (similar to libvo but to audio),
|
||
even more stable than ever, and so on. It's a MUST !</LI>
|
||
<LI><B>MPlayer 0.50 "The Faszom(C)ounter"</B><BR>
|
||
Hmm. Release again. Tons of new features, beta GUI version, bugs fixed,
|
||
new vo and ao drivers, ported to many systems, including opensource DivX
|
||
codecs and much more. Try it!</LI>
|
||
<LI><B>MPlayer 0.60 "The RTFMCounter"</B><BR>
|
||
MOV/VIVO/RM/FLI/NUV fileformats support, native CRAM, Cinepak, ADPCM codecs,
|
||
and support for XAnim's binary codecs; DVD subtitles support, first
|
||
release of MEncoder, TV grabbing, cache, liba52, countless fixes.</LI>
|
||
</UL></P>
|
||
|
||
<P><B><A NAME=1.3>1.3. Installation</A></B></P>
|
||
|
||
<P>In this chapter I'll try to guide you through the compiling and
|
||
configuring process of <B>MPlayer</B>. It's not easy, but it won't neccessarily
|
||
be hard. If you experience a different behaviour 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.</P>
|
||
|
||
<P>You need a fairly recent system. On Linux, 2.4.x kernels are recommended.</P>
|
||
|
||
<P><B><I>SOFTWARE REQUIREMENTS</I></B><BR>
|
||
|
||
<UL>
|
||
<LI><B>binutils</B> - suggested version is <B>2.11.x</B> . This program is
|
||
responsible for generating MMX/3DNow!/etc instructions, thus very important.</LI>
|
||
<LI><B>gcc</B> - suggested version is from <B>2.95.2</B> to <B>2.95.4</B>.
|
||
<B>NEVER</B> use 2.96 or 3.x.x !!! They generate faulty code. If you decide
|
||
to change gcc from 2.96, then don't decide in favor of 3.0 juts because
|
||
it's newer! In some ways it's even worse than 2.96. So downgrade to
|
||
2.95.x (downgrade libstdc++ too!) or don't up/downgrade at all (but in
|
||
this case, be prepared for runtime problems).
|
||
Detailed information about gcc 2.96's bugs (that are still NOT fixed, they
|
||
are WORKAROUNDED in <B>MPlayer</B>!) can be found
|
||
<A HREF="users_against_developers.html"><B><I>here</I></B></A> and in the
|
||
<A HREF="faq.html">FAQ</A> !</LI>
|
||
<LI><B>XFree86</B> - suggested version is <B>always the newest (4.1.0)</B>.
|
||
Normally everyone wants this, as starting from XFree86 4.0.2, it contains
|
||
the <A HREF="video.html#2.3.1.2">XVideo</A> extension (somewhere referred
|
||
as <B>Xv</B>) which is needed to enable the hardware YUV acceleration (fast
|
||
image display) on cards that support it. <A HREF="video.html#2.3.1.2">More
|
||
information available.</A><BR>
|
||
Make sure its <B>development package</B> is installed too otherwise
|
||
it won't work.<BR>
|
||
For some videocards you don't need XFree86. See list below.</LI>
|
||
<LI><B>make</B> - suggested version is <B>always the newest</B> (at least 3.79.x). This
|
||
usually isn't important.</LI>
|
||
<LI><B>SDL</B> - it's not mandatory, but can help in some cases (bad audio,
|
||
videocards that lag strangely with the xv driver). Always use the newest
|
||
(beginning from 1.2.x).</LI>
|
||
</UL>
|
||
|
||
<P><B><I>CODECS</I></B></P>
|
||
|
||
<UL>
|
||
<LI><B>libavcodec</B> : If you want to use this DivX3/DivX4/etc codec, check the
|
||
<A HREF="codecs.html#2.2.1.2">2.2.1.2</A> section before compiling. Features :<BR>
|
||
<UL>
|
||
<LI>you can <B>gain <I>DivX/DivX4</I> playing on non-x86 machines</B></LI>
|
||
<LI>RealVideo 1.0/VIVO/MJPEG/h263/others playing and encoding</LI>
|
||
<LI>this codec has the <B>greatest decoding speed</B> for DivX and DivX4
|
||
movies (even faster than the original DivX4 library itself) ! Recommended!</LI>
|
||
</UL>
|
||
</LI>
|
||
|
||
<LI><B>Win32 codecs</B> : If you plan to use <B>MPlayer</B> on x86
|
||
architecture, you will possibly need them. Download and unzip w32codecs.zip to
|
||
/usr/lib/win32 . Note: the avifile project has similar codecs package, but it
|
||
differs from ours, so if you want to use all supported codecs, then use our
|
||
package! However, you can use our codecs package with avifile. Features :<BR>
|
||
<UL>
|
||
<LI>you need this if you want to play or encode for example movies recorded
|
||
with digital cameras (example: DV)</LI>
|
||
<LI>needed if you want to play <B>WMV movies</B> or older ASF's</LI>
|
||
</UL>
|
||
</LI>
|
||
|
||
<LI><B>DivX4</B> : information about this codec is available in the
|
||
<A HREF="codecs.html#2.2.1.1">2.2.1.1</A> section. If you don't want to encode
|
||
with it, you possibly don't want this codec as <B>libavcodec</B> (see above) is
|
||
much faster than this.<BR>
|
||
Features :<UL>
|
||
<LI>1 pass or 2 pass encoding with <A HREF="encoding.html">MEncoder</A></LI>
|
||
<LI>can play old <B>DivX3</B> movies much faster than the Win32 DLL but
|
||
slower than <B>libavcodec</B> !</LI>
|
||
<LI>it's closed-source, and only an x86 version is available.</LI>
|
||
</UL>
|
||
</LI>
|
||
|
||
<LI>If you want to play <B>3ivx</B> movies, check the <A HREF=codecs.html#2.2.1.3>
|
||
XAnim codecs section</A>.</LI>
|
||
|
||
<LI>The <A HREF=codecs.html#2.2.1.3>XAnim codecs</A> are the best (full screen,
|
||
hardware YUV zoom) for decoding old videos like Indeo 3/4/5, and some
|
||
others. And they are multiplatform, so this is the only way to play Indeo on
|
||
non-x86 platforms (well, apart from using XAnim:). But for example Cinepak
|
||
movies are best played with <B>MPlayer</B>'s own Cinepak decoder !</LI>
|
||
|
||
</UL>
|
||
|
||
<P><B><I>VIDEOCARDS</I></B></P>
|
||
|
||
<P>There are generally two kind of videocards. One kind (the newer cards) has
|
||
<B>hardware YUV acceleration</B> support, the other cards don't.</P>
|
||
|
||
<P>
|
||
<B><I>YUV cards</I></B></P>
|
||
|
||
<P>
|
||
They can display and scale (zoom) the picture to any size that fits in
|
||
their memory, with <B>small CPU usage</B> (zooming doesn't increase it!), thus
|
||
you get a nice and very fast fullscreen playing.</P>
|
||
|
||
<P>
|
||
<UL>
|
||
<LI><B>Matrox G200/G400/G450/G550 cards</B> : please see the <A HREF="video.html#2.3.1.7">mga_vid</A>
|
||
section in order to gain big speedup. It is important to do these steps
|
||
<I>before</I> compiling <B>MPlayer</B>, otherwise no Matrox-specific support will be
|
||
built. Also check out the <A HREF="video.html#2.3.1.A.1">Matrox TV-out</A>
|
||
section. <U><B>If you are non-Linux user</B></U>, read <A HREF="video.html#2.3.1.15">Vidix</A>
|
||
documentation !</LI>
|
||
|
||
<LI><B>3Dfx Voodoo3/Banshee cards</B> : please see the <A
|
||
HREF="video.html#2.3.1.9">2.3.1.9</A> section in order to gain big speedup. It
|
||
is important to do these steps <I>before</I> compiling <B>MPlayer</B>,
|
||
otherwise no 3Dfx support will be built. Also see the <A HREF="video.html#2.3.1.A.3">3dfx
|
||
TV out section</A>.</LI>
|
||
|
||
<LI><B>ATI cards</B> : see the <A HREF="video.html#2.3.1.A.2">ATI cards
|
||
section</A> of the TV-out documentation, to know what features of your card is
|
||
supported under Linux/MPlayer. If you have a <B>Radeon</B> or <B>Rage128</B> card, we have a
|
||
<B>XXX_vid</B> driver for you, with TV out ! Check <A
|
||
HREF="video.html#2.3.1.14">this</A> section ! <U><B>If you are non-Linux
|
||
user</B></U>, read <A HREF="video.html#2.3.1.15">Vidix</A> documentation !</LI>
|
||
|
||
<LI><B>S3 cards</B> : the Savage chips have hardware acceleration. Use as
|
||
new XFree86 version as possible, older drivers are buggy. Savage chips
|
||
have problems with YV12 display, see <A HREF="video.html#2.3.1.2.2">S3 Xv
|
||
section</A> for details. Older, non-Savage cards have no, or slow hardware
|
||
support.</LI>
|
||
|
||
<LI><B>Nvidia cards</B> : very bad choice for video playing (NVidia has
|
||
<A HREF="users_against_developers.html#nvidia">different opinion</A>!).
|
||
Nvidia's cards have very cheap and bad
|
||
quality chips. Moreover, <U>the built-in Nvidia driver in XFree86 doesn't
|
||
contain support for hardware YUV acceleration for all NVidia cards !</U> You have to download
|
||
Nvidia's closed-source drivers from nvidia.com . See details in <A
|
||
HREF="video.html#2.3.1.2.3">Nvidia Xv driver</A> section.</LI>
|
||
|
||
<LI><B>other cards</B> : none of the above?
|
||
<UL>
|
||
<LI>Try if the XFree86 driver (and your card) supports hardware
|
||
acceleration. See the <A HREF="video.html#2.3.1.2">Xv section</A> for
|
||
details.</LI>
|
||
<LI>If it doesn't, your card is one of the :</LI>
|
||
</UL>
|
||
</LI>
|
||
|
||
</UL>
|
||
</P>
|
||
|
||
<P>
|
||
<B><I>Non-YUV cards</I></B></P>
|
||
|
||
<P>
|
||
Fullscreen playing can be achieved by either zooming
|
||
(<B>by software</B>, this is slooow), or changing to a smaller videomode, for
|
||
example to 352x288. If you don't have YUV accel, this latter method is
|
||
the recommended one. Throughout <B>MPlayer</B>, <U>this behaviour can
|
||
be switched on by using the <CODE>-vm</CODE> option</U> and with
|
||
the following drivers :
|
||
<UL>
|
||
<LI><B>using</B> XFree86 : see details in
|
||
<A HREF="video.html#2.3.1.3">DGA driver</A> and
|
||
<A HREF="video.html#2.3.1.13">X11 driver</A> sections. DGA is
|
||
recommended!</LI>
|
||
<LI><B>not using</B> XFree86 : try the drivers in the following order :
|
||
<A HREF="video.html#2.3.1.12">vesa</A>,
|
||
<A HREF="video.html#2.3.1.6">fbdev</A>,
|
||
<A HREF="video.html#2.3.1.5">svgalib</A>,
|
||
<A HREF="video.html#2.3.1.11">aalib</A>.</LI>
|
||
</UL>
|
||
</P>
|
||
|
||
<P><B><I>SOUNDCARDS</I></B></P>
|
||
|
||
<UL>
|
||
|
||
<LI><B>Soundblaster Live!</B> : with this card you can use 4 or 6 (<B>5.1</B>)
|
||
channels AC3 decoding instead of 2. Read the
|
||
<A HREF="codecs.html#2.2.2.1">Software AC3 decoding</A> section.</LI>
|
||
|
||
<LI><B>C-Media with SP/DIF out</B> : hardware AC3 passthrough is possible
|
||
with these cards, see
|
||
<A HREF="codecs.html#2.2.2.2">Hardware AC3 decoding</A> section.</LI>
|
||
|
||
<LI><B>other cards'</B> features aren't supported by <B>MPlayer</B>.
|
||
<U>It's very recommended to read the <A HREF="sound.html#2.3.2">soundcards
|
||
section</A> !</U>
|
||
</UL>
|
||
|
||
<P><B><I>FEATURES</I></B></P>
|
||
|
||
<UL>
|
||
<LI>For DVD support, you'll have to compile libdvdcss and libdvdread, and
|
||
in this order!
|
||
See <A HREF="cd-dvd.html#4.2">section 4.2</A> for more information.</LI>
|
||
|
||
<LI>Decide if you need GUI. If you do, see the <A HREF=#1.4>1.4 section</A>
|
||
before compiling.</LI>
|
||
|
||
<LI>If you want to install <B>MEncoder</B> (our great all-purpose encoder),
|
||
see the <A HREF="encoding.html#2.4">MEncoder section</A> .</LI>
|
||
|
||
|
||
<LI>If you have a V4L compatible <B>TV tuner</B> card, and wish to watch/grab and
|
||
encode movies with <B>MPlayer</B>, read the <A HREF=#2.5>TV input</A> section.</LI>
|
||
|
||
<LI>There are three timer codes in <B>MPlayer</B>. To use the old
|
||
method, you don't have to do anything. It uses <CODE>usleep()</CODE> to tune
|
||
A/V sync, with +/- 10ms accuracy. However sometimes the sync has to be tuned
|
||
even finer. The new timer code uses PC's RTC (Real Time Clock) for this task,
|
||
because it has precise 1ms timers. This requires root, or a <I>setuid root</I>
|
||
<B>MPlayer</B> binary (or a little kernel hacking, but that's unadvised). You
|
||
can see the new timer's efficiency in the status line. The third timer
|
||
code is turned on with the <CODE>-softsleep</CODE> option. It has the
|
||
efficiency of the RTC, but it doesn't need root rights. On the other hand,
|
||
it requires more CPU. Note: <B>NEVER install setuid MPlayer binary on a
|
||
multiuser system!</B> It's a clear way for everyone to gain root.</LI>
|
||
|
||
</UL>
|
||
|
||
<P>Then build <B>MPlayer</B>:</P>
|
||
|
||
<PRE> ./configure
|
||
make
|
||
make install</PRE>
|
||
|
||
<P>At this point, <B>MPlayer</B> is ready to use. The directory
|
||
<CODE>/usr/local/share/mplayer</CODE> contains the <CODE>codecs.conf</CODE>
|
||
file, which is used to tell the program all the codecs and their capabilities.
|
||
This file should always be kept uptodate together with the main binary !</P>
|
||
|
||
<P><B>Debian users</B> can build a .deb package for themselves, it's very
|
||
simple. Just exec <CODE>fakeroot debian/rules binary</CODE> in <B>MPlayer</B>'s
|
||
root dir. Detailed instructions can be found <A HREF="documentation.html#6.1">here</A>.</P>
|
||
|
||
<P><B><I>ALWAYS browse the output of ./configure</I></B>, and the
|
||
<CODE>configure.log</CODE> file, they contain info about what will be built,
|
||
and what won't. You may also want to view config.h and config.mak files.</P>
|
||
|
||
<P>Though not mandatory, the fonts should be installed in order to gain
|
||
OSD, and subtitle functionality. Download mp-arial-iso-8859-*.zip and/or optional
|
||
(if exists) language updates. It's VERY RECOMMENDED to check
|
||
<A HREF=#1.5>section 1.5</A> for details.</P>
|
||
|
||
<PRE> mkdir ~/.mplayer/font
|
||
cd ~/.mplayer/font
|
||
unzip mp-arial-iso-8859-1.zip</PRE>
|
||
|
||
|
||
<P><B><A NAME=1.4>1.4. What about the GUI?</A></B></P>
|
||
|
||
<P>The GUI needs GTK (it isn't GTK, but the panels are). The skins are stored
|
||
in PNG format, so gtk, libpng (and their devel stuff) has to be installed.
|
||
You can build it by specifying <CODE>--enable-gui</CODE> during ./configure .
|
||
Then, to turn on GUI mode, you either
|
||
<UL>
|
||
<LI>use the <CODE>-gui</CODE> option</LI>
|
||
<LI>specify <CODE>gui=yes</CODE> in your config file</LI>
|
||
<LI><CODE>ln -s /usr/local/bin/mplayer /usr/local/bin/gmplayer</CODE> ,
|
||
and call <CODE>gmplayer</CODE> instead.
|
||
</UL>
|
||
</P>
|
||
|
||
<P>HINT: use the middle button (on 2 button mice press left and right
|
||
simultaneously) for a popup GTK menu, with DVD playing option!</P>
|
||
|
||
<P>As <B>MPlayer</B> doesn't have a skin included, you have to download them
|
||
if you want to use the GUI. See the <A HREF="http://www.mplayerhq.hu/homepage/dload.html">download page</A>.
|
||
They should be extracted to the usual system-wide directory (<CODE>/usr/local/share/mplayer/Skin</CODE>),
|
||
or to <CODE>$HOME/.mplayer/Skin</CODE> . <B>MPlayer</B> by default looks in
|
||
these directories for a <I>default</I> named directory, but you can use the
|
||
<I>-skin newskin</I> option, or the <I>skin=newskin</I> config file
|
||
directive to use the skin in <CODE>*/Skin/newskin</CODE> directory.</P>
|
||
|
||
<P><B><A NAME=1.5>1.5. Subtitles and OSD</A></B></P>
|
||
|
||
<P>Yes, <B>MPlayer</B> also supports many kinds of subtitles. Currently
|
||
10 kinds of subtitle can be used by the subreader code. To see what are
|
||
these subtitle formats, see subreader.c, line ~30.</P>
|
||
|
||
<P><B>MPlayer</B> supports VobSub subtitles. VobSub subtitles consist of
|
||
a big (some megabytes) .SUB file, an .IDX file, and/or an .IFO file.
|
||
Usage : if you have files like <CODE>sample.sub</CODE>, <CODE>sample.ifo</CODE>,
|
||
<CODE>sample.idx</CODE> - you have to pass the <CODE>-vobsub sample -vobsubid
|
||
0</CODE> options (optionally with pathname, of course). The
|
||
<CODE>-vobsubid</CODE> option is like <CODE>-sid</CODE> for DVDs, you can
|
||
choose between subtitle tracks (languages) with it.</P>
|
||
|
||
<P>About DVD subtitles, read the <A HREF="cd-dvd.html#4.2">DVD section</A>.</P>
|
||
|
||
<P><B>MPlayer</B> introduces a new subtitle format called <B><I>MPsub</I></B>.
|
||
It was designed by me (Gabucino). Basically its main feature is being
|
||
<I>dynamically</I> time-based (although it has frame-based mode too). Example (from
|
||
<A HREF="http://www.mplayerhq.hu/DOCS/tech/mpsub.sub">DOCS/tech/mpsub.sub</A>) :
|
||
</P>
|
||
|
||
<P><CODE><I>
|
||
# first number : wait this much after previous subtitle disappeared<BR>
|
||
# second number : display the current subtitle for this many seconds<BR>
|
||
<BR>
|
||
15 3<BR>
|
||
A long, long time ago...<BR>
|
||
<BR>
|
||
0 3<BR>
|
||
in a galaxy far away...<BR>
|
||
<BR>
|
||
0 3<BR>
|
||
Naboo was under an attack.<BR>
|
||
</I></CODE></P>
|
||
|
||
<P>So you see, the main goal was to <B>make subtitle editing/timing/joining/cutting easy</B>. And,
|
||
if you - say - get an SSA subtitle but it's badly timed/delayed to your
|
||
version of the movie, you simply do a <I>mplayer dummy.avi -sub source.ssa
|
||
-dumpmpsub</I> . A <CODE>dump.mpsub</CODE> file will be created in the
|
||
current directory, which will contain the source subtitle's text, but in
|
||
<B>MPsub</B> format. Then you can freely add/substract seconds to/from the
|
||
subtitle.</P>
|
||
|
||
<P>Subtitles are displayed with a technique called <B>'OSD', On Screen Display</B>.
|
||
OSD is used to display current time, volume bar, seek bar etc.</P>
|
||
|
||
<P><B>INSTALLING OSD and SUB</B></P>
|
||
|
||
<P>You need an <B>MPlayer</B> font package to be able to use OSD/SUB feature.
|
||
There are many ways to get it:
|
||
<UL>
|
||
|
||
<LI>download ready-to-use font packages from <B>MPlayer</B> site.
|
||
Note: currently available fonts are limited for iso 8859-1/2 support,
|
||
and there are a few special versions for korean, russian etc codepages.
|
||
Font should have appropriate font.desc file which maps unicode font
|
||
positions to the actual code page of the subtitles text. Other solution
|
||
is to have subtitles encoded in utf8 encoding and use -utf8 option
|
||
or just name the subtitles file <video_name>.utf and have it in the same
|
||
dir as the video file. Recoding from different codepages to utf8 could be
|
||
done by using konwert (debian) or iconv (RedHat) programs.<BR>
|
||
Some URLs:
|
||
<UL>
|
||
<LI><A HREF="ftp://ftp.mplayerhq.hu/MPlayer/releases/">ftp://ftp.mplayerhq.hu/MPlayer/releases/</A> - ISO fonts
|
||
<LI><A HREF="ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/">ftp://ftp.mplayerhq.hu/MPlayer/contrib/fonts/</A> - various fonts by users
|
||
<LI><A HREF="http://realtime.ssu.ac.kr/~lethean/mplayer">http://realtime.ssu.ac.kr/~lethean/mplayer</A> - korean fonts & RAW plugin
|
||
</UL>
|
||
|
||
<LI>use the font generator tool at TOOLS/subfont-c
|
||
It's a complete tool to convert from TTF/Type1/etc font to mplayer font pkg.
|
||
(read TOOLS/subfont-c/README for details)
|
||
|
||
<LI>use the font generator GIMP plugin at TOOLS/subfont-GIMP
|
||
(note: you must have HSI RAW plugin too, see URL below)
|
||
</UL>
|
||
</P>
|
||
|
||
<P>After that, UNZIP the file you downloaded to <CODE>~/.mplayer</CODE> or
|
||
<CODE>$PREFIX/share/mplayer</CODE>. Then rename or symlink one of them to
|
||
<CODE>font</CODE> (like : <CODE>ln -s ~/.mplayer/arial-24
|
||
~/.mplayer/font</CODE>). Now you have to see a timer at the upper left corner
|
||
of the movie (switch it off with 'o').</P>
|
||
|
||
<P>OSD has 3 states: (switch with 'o')<BR>
|
||
<UL>
|
||
<LI>timer + volume bar + seek bar + subtitles (default)
|
||
<LI>volume bar + seek bar + subtitles
|
||
<LI>subtitles only
|
||
</UL>
|
||
|
||
<P>You can change default behaviour by setting <CODE>osdlevel=</CODE> variable in config file.</P>
|
||
|
||
|
||
<P><B><A NAME=2>2. Features</A></B></P>
|
||
|
||
|
||
<P><A NAME=2.1>2.1. <A HREF="formats.html">Supported formats</A></P>
|
||
|
||
|
||
<P><A NAME=2.2>2.2. <A HREF="codecs.html">Supported codecs</A></P>
|
||
|
||
|
||
<P><A NAME=2.3>2.3. <A HREF="video.html">Video</A> & <A HREF="sound.html">Audio</A> output devices</P>
|
||
|
||
|
||
<P><A NAME=2.4>2.4. <A HREF="encoding.html">MEncoder - An All-Purpose Encoder</A></P>
|
||
|
||
|
||
<P><A NAME=2.5><B>2.5. TV input</B></P>
|
||
|
||
<A NAME=2.5.1><P><B><I>2.5.1. Overview</I></B></P>
|
||
|
||
<P>This section is about how to enable <B>watching/grabbing from V4L compatible
|
||
TV tuner</B>.</P>
|
||
|
||
<A NAME=2.5.2><P><B><I>2.5.2. Compilation</I></B></P>
|
||
|
||
<P>
|
||
<UL>
|
||
<LI>first, you have to recompile. <CODE>./configure</CODE> will autodetect kernel headers
|
||
of v4l stuff, and the existence of /dev/video* entries. If they exist,
|
||
TV support will be built (see configure's output!).</LI>
|
||
<LI>make sure your tuner works with another TV softwares in Linux, for example
|
||
xawtv.</LI>
|
||
</UL>
|
||
</P>
|
||
|
||
<P><B>Hint</B> : are the colors messed up? Then your tuner can't display
|
||
in YV12 colorspace. Try I420 (you must use the <CODE>-vc rawi420</CODE> option too!), or YUY2, UYVY, RGB32 (this one
|
||
with <CODE>-vo sdl</CODE>) colorspaces.
|
||
You can specify these with the <CODE>outfmt=YV12</CODE> option see below.</P>
|
||
|
||
<A NAME=2.5.3><P><B><I>2.5.3. Available options</I></B><BR>
|
||
<TABLE BORDER=0>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>on</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>use TV
|
||
input</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>driver</I></TD>
|
||
<TD></TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
<B>dummy</B> - NULL TV input :) Used for testing only, generates dummy
|
||
input.<BR>
|
||
<B>v4l</B> - captures images from standard V4L interface (default
|
||
<CODE>/dev/video0</CODE>)</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>device</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specify other
|
||
device than the default <CODE>/dev/video0</CODE></TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>input</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>give from which
|
||
input of the TV tuner you wish to grab from (e.g. <B>television</B>,
|
||
<B>s-video</B>, <B>composite</B>, ...)<BR>
|
||
Prints the available ones during init.</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>freq</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specify the
|
||
frequency to set the tuner (e.g. <B>511.250</B>)</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>outfmt</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>in which output
|
||
format should the tuner transport images to us (<B>rgb32</B>, <B>rgb24</B>, <B>yv12</B>,
|
||
<B>uyvy</B>, <B>i420</B> (for i420 you have to pass the <CODE>-vc rawi420</CODE>
|
||
option, because of a fourcc conflict))</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>width</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
the width of the output window, in pixels</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>height</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
the height of the output window, in pixels</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>norm</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
available: PAL, SECAM, NTSC</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>channel</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
set the tuner to the given channel</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><I>chanlist</I></TD>
|
||
<TD> </TD>
|
||
<TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
||
available: <CODE>us-bcast, us-cable, europe-west, europe-east, etc</CODE></TD>
|
||
</TR>
|
||
</TABLE>
|
||
</P>
|
||
|
||
<A NAME=2.5.4><P><B><I>2.5.4. Keyboard control</I></B></P>
|
||
|
||
<TABLE BORDER=0>
|
||
<TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>h or l</TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>select previous/next channel</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>n</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>change norm</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>b</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>change channel list</TD><TR>
|
||
</TABLE>
|
||
|
||
<A NAME=2.5.5><P><B><I>2.5.5. Examples</I></B></P>
|
||
|
||
<P>
|
||
Dummy output, to AAlib :)<BR>
|
||
<CODE> mplayer -tv on:driver=dummy:width=640:height=480 -vo aa</CODE><BR>
|
||
<BR>
|
||
Input from standard V4L<BR>
|
||
<CODE> mplayer -tv on:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv</CODE><BR>
|
||
</P>
|
||
|
||
|
||
<P><B><A NAME=3>3. Usage</A></B></P>
|
||
|
||
<P><B><A NAME=3.1>3.1. Command line</A></B></P>
|
||
|
||
<P><B>MPlayer</B> utilizes a complex playtree. It consists of "default" options
|
||
written as first (for example <CODE>mplayer -vfm 5</CODE>), and options
|
||
written after filenames, that apply only to the given filename/URL/whatever
|
||
(for example <CODE>mplayer -vfm 5 movie1.avi movie2.avi -vfm 4</CODE>).</P>
|
||
|
||
<P><TABLE BORDER=0>
|
||
<TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>file</TD><TD> </TD><TD><CODE><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>mplayer [options] [path/]filename</CODE></TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>file</TD><TD></TD><TD><CODE><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>mplayer [default options] [path/]filename1 [options for filename1] filename2 filename3 [options for filename3]</CODE></TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>VCD</TD><TD></TD><TD><CODE><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>mplayer [options] -vcd trackno /dev/cdrom</CODE></TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>DVD</TD><TD></TD><TD><CODE><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>mplayer [options] -dvd titleno [/dev/dvd]</CODE></TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>net</TD><TD></TD><TD><CODE><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>mplayer [options] http://site.com/file.[mpg|avi] (playtree can also be used here, see above)</CODE></TD><TR>
|
||
</TABLE></P>
|
||
|
||
<P><PRE> mplayer -vo x11 /mnt/Films/Contact/contact2.mpg
|
||
mplayer -vcd 2 /dev/cdrom
|
||
mplayer -afm 3 /mnt/DVDtrailers/alien4.vob
|
||
mplayer -dvd 1 /dev/dvd
|
||
mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi</PRE></P>
|
||
|
||
|
||
<P><B><A NAME=3.2>3.2. Control from keyboard</A></B></P>
|
||
|
||
<P><TABLE BORDER=0>
|
||
<TR><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2><- or -></TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>seek backward/forward 10 seconds</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>up or down</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>seek backward/forward 1 minute</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>pgup/pgdown</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>seek backward/forward 10 minutes</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>< or ></TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>seek backward/forward in playlist</TD><TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>p or SPACE</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>pause movie (press any key)</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>q or ESC</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>stop playing and quit program</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>+ or -</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust audio delay by +/- 0.1 second</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>/ or *</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>decrease/increase volume</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>o</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle OSD: none / seek / seek+timer</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>m</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle using master/pcm volume</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>z or x</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust subtitle delay by +/- 0.1 second</TD></TR>
|
||
|
||
<TR><TD COLSPAN=4><P><I><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>(the following keys are valid only when using <CODE>-vo xv</CODE>)</I></P></TD></TR>
|
||
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>1 or 2</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust contrast</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>3 or 4</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust brightness</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>5 or 6</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust hue</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>7 or 8</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>adjust saturation</TD></TR>
|
||
</TABLE></P>
|
||
|
||
<P><B>GUI keyboard control</B></P>
|
||
|
||
<P><TABLE BORDER=0>
|
||
<TR><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>, and .</TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>previous / next file</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>gray - or +</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>decrease / increase volume</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>enter</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>start playing</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>space</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>pause</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>s</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>stop</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>a</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>about</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>l</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>load file</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>b</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>skin browser</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>e</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle equalizer</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>p</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle playlist</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>f</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle fullscreen</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>m</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>toggle mute</TD>
|
||
</TABLE></P>
|
||
|
||
<P><B>TV input control</B></P>
|
||
|
||
<P><TABLE BORDER=0>
|
||
<TR><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>h or l</TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>select previous/next channel</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>n</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>change norm</TD></TR>
|
||
<TR><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>b</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>change channel list</TD></TR>
|
||
|
||
</TABLE></P>
|
||
|
||
<P><B><A NAME=3.3>3.3. Control from LIRC</A></B></P>
|
||
|
||
<P>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 <A HREF="http://www.lirc.org">www.lirc.org</A>.</P>
|
||
|
||
<P>If you have installed the lirc-package, you can compile <B>MPlayer</B> with LIRC
|
||
support using ./configure --enable-lirc</P>
|
||
|
||
<P>If everything went fine, <B>MPlayer</B> will print a message like
|
||
LIRC init was successful.
|
||
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 :-)</P>
|
||
|
||
<P>The application name for <B>MPlayer</B> is - oh wonder - mplayer_lirc.
|
||
It understands the following commands:</P>
|
||
|
||
<P><TABLE BORDER=0>
|
||
<TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>PAUSE</TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>pause playing. Any other keystroke will continue replay.</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>QUIT</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>exit MPlayer</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>RWND</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>10 secs back</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>FRWND</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>60 secs back</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>FWD</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>skip 10 secs</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>FFWD</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>skip 60 secs</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>INCVOL</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>increase volume one percent</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>DECVOL</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>decrease volume one percent</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>MASTER</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>use master mixer channel</TD><TR>
|
||
<TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>PCM</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>use pcm mixer channel</TD><TR>
|
||
</TABLE></P>
|
||
|
||
<P> Don't forget to enable the repeat flag for RWND/FWD in .lircrc. Here's an
|
||
excerpt from my .lircrc:</P>
|
||
|
||
<P><PRE> begin
|
||
remote = CU-SX070
|
||
prog = mplayer_lirc
|
||
button = Tape_Play
|
||
repeat = 1
|
||
config = FFWD
|
||
end
|
||
|
||
begin
|
||
remote = CU-SX070
|
||
prog = mplayer_lirc
|
||
button = Tape_Stop
|
||
config = QUIT
|
||
end</PRE></P>
|
||
|
||
<P>If you don't like the standard location for the lirc-config file (~/.lircrc)
|
||
use the -lircconf <filename> switch to specify another file.</P>
|
||
|
||
<P><B><A NAME=3.4>3.4. Streaming from network or pipes</A></B></P>
|
||
|
||
<P><B>MPlayer</B> can play files from network, using the HTTP protocol.
|
||
Configuring it is simple, just recompile <B>MPlayer</B> with</P>
|
||
|
||
<P><CODE> ./configure --enable-streaming</CODE></P>
|
||
|
||
<P>Playing goes by simply using adding the URL to the command line. <B>MPlayer</B>
|
||
also honours the HTTP_PROXY environment variable, and uses proxy if available.
|
||
Proxy usage can also be forced :</P>
|
||
|
||
<P><CODE> mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf</CODE></P>
|
||
|
||
<P><B>MPlayer</B> can read from stdin (NOT named pipes). This can be for example
|
||
used to play from FTP:</P>
|
||
|
||
<P><CODE> wget ftp://micorsops.com/something.avi -O - | mplayer -</CODE></P>
|
||
|
||
<P><B><A NAME=4>4. <A HREF="faq.html">FAQ section</A></A></B></P>
|
||
|
||
<P><B><A NAME=5>5. <A HREF="cd-dvd.html">CD/DVD section</A></A></B></P>
|
||
|
||
<P><B><A NAME=6>6. Misc OS'es</A></B></P>
|
||
|
||
<P><B><A NAME=6.1>6.1. Debian packaging</A></B></P>
|
||
|
||
<P>To build the package, get the cvs version, or .tgz and uncompress it,
|
||
and cd into programs directory:</P>
|
||
|
||
<P><PRE> cd main
|
||
fakeroot debian/rules binary</PRE></P>
|
||
|
||
<P>(... mplayer detects hardware/software, builds itself and.. )
|
||
dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'.</P>
|
||
|
||
<P>And now just become root, and:</P>
|
||
|
||
<P><PRE> dpkg -i ../mplayer_0.18-1_i386.deb as root.</PRE></P>
|
||
|
||
<P>Here's how it looks like:</P>
|
||
|
||
<P><PRE> eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb
|
||
Password:
|
||
(Reading database ... 26946 files and directories currently installed.)
|
||
Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb)
|
||
Unpacking replacement mplayer ...
|
||
Setting up mplayer (0.18-1) ...</PRE></P>
|
||
|
||
|
||
<P><B><A NAME=6.2>6.2. FreeBSD</A></B></P>
|
||
|
||
<P>To build the package you will need GNU make (gmake, /usr/ports/devel/gmake),
|
||
native BSD make will not work.</P>
|
||
|
||
<P>To run <B>MPlayer</B> you will need to re-compile the kernel with
|
||
"options USER_LDT" (unless you are running -CURRENT, where this is default).
|
||
If you have a CPU with SSE also use "options CPU_ENABLE_SSE" to use it
|
||
(FreeBSD-STABLE required, or use kernel patches).</P>
|
||
|
||
<P>If <B>MPlayer</B> complains about "CD-ROM Device '/dev/cdrom' not found!" make a
|
||
symbolic link: <CODE>ln -s /dev/(your_cdrom_device) /dev/cdrom</CODE></P>
|
||
|
||
<P>There's no DVD support for FreeBSD yet.</P>
|
||
|
||
<P><B><A NAME=6.3>6.3. Solaris</A></B></P>
|
||
|
||
<P>MPlayer should work on Solaris 2.6 or newer.</P>
|
||
|
||
<P>AVI file playback works best on Solaris x86, because you have the
|
||
option to use the win32 codecs on the x86 platform, or can use MMX/MMX2/3DNow/etc
|
||
instructions for MP3/DivX/DVD/whatever. On Solaris SPARC,
|
||
you'll find quite a few AVI files with non working video and/or
|
||
audio playback, because the video/audio codecs using the Win32 DLLs
|
||
are not available. However, <B>DivX/OpenDivX</B> movies should work,
|
||
when using libavcodec.</P>
|
||
|
||
<P>On <B>UltraSPARC</B>s, <B>MPlayer</B> takes advantage of their <B>VIS</B>
|
||
extensions (equivalent to MMX), currently only in <I>libmpeg2</I>,
|
||
<I>libvo</I> and <I>libavcodec</I>, but not in mp3lib. You can watch a VOB file
|
||
on a 400Mhz CPU. You'll need <A
|
||
HREF="http://www.sun.com/sparc/vis/mediaLib.html">mLib</A> installed.</P>
|
||
|
||
<P>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:</P>
|
||
|
||
<P><PRE> % /usr/ccs/bin/make
|
||
make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen</P></PRE>
|
||
|
||
<P>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.</P>
|
||
|
||
<P>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
|
||
<CODE>/usr/ccs/bin/as</CODE>.</P>
|
||
|
||
<P>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).</P>
|
||
|
||
<P>Error message from configure on a Solaris x86 system using GCC
|
||
without GNU assembler:</P>
|
||
|
||
<P><PRE> % configure
|
||
...
|
||
Checking assembler (/usr/ccs/bin/as) ... , failed
|
||
Please upgrade(downgrade) binutils to 2.10.1...</PRE></P>
|
||
|
||
<P>(Solution: Install and use a gcc configured with "--with-as=gas")</P>
|
||
|
||
<P>Typical error you get when building with a GNU C compiler that does
|
||
not use GNU as:</P>
|
||
|
||
<P><PRE> % 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 ...</PRE></P>
|
||
|
||
<P>For DVD support you must have the patched libcss installed. Patch:
|
||
<A HREF="http://www.tools.de/solaris/mplayer/">http://www.tools.de/solaris/mplayer/</A>.</P>
|
||
|
||
<P>Due to two bugs in solaris 8 x86, you cannot reliably play DVDs using a
|
||
capacity >4GB:</P>
|
||
|
||
<P><UL><LI>The sd(7D) driver on solaris 8 x86 driver has bug when accessing a
|
||
disk block >4GB on a device using a logical blocksize != DEV_BSIZE
|
||
(i.e. CDROM and DVD media). Due to a 32bit int overflow, a disk
|
||
address modulo 4GB is accessed.
|
||
(<A HREF="http://groups.yahoo.com/group/solarisonintel/message/22516">http://groups.yahoo.com/group/solarisonintel/message/22516</A>)
|
||
|
||
<LI>The similar bug is present in the hsfs(7FS) filesystem code (aka
|
||
ISO9660), hsfs currently does not support partitions/disks >4GB,
|
||
all data is accessed modulo 4GB
|
||
(<A HREF="http://groups.yahoo.com/group/solarisonintel/message/22592">http://groups.yahoo.com/group/solarisonintel/message/22592</A>)
|
||
</UL></P>
|
||
|
||
<P>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
|
||
<A HREF="http://www.sun.com/sparc/vis/mediaLib.html">mediaLib</A>.</P>
|
||
|
||
<P>VIS accelerated operations from mediaLib are used for mpeg2 video
|
||
decoding and for color space conversion in the video output drivers.</P>
|
||
|
||
|
||
<P><B><A NAME=6.4>6.4. StrongARM</A></B></P>
|
||
|
||
<P><B>MPlayer</B> is reported to compile on StrongARM. Use the following command line:</P>
|
||
|
||
<P><PRE> ./configure --target=arm-linux --disable-css --with-x11libdir=/usr/arm/lib
|
||
--with-x11incdir=/usr/arm/lib --disable-gcc-checking</PRE></P>
|
||
|
||
|
||
<P><B><A NAME=6.5>6.5. Silicon Graphics Indigo / IRIX</A></B></P>
|
||
|
||
<P>Reported working. You'll probably have to use the <I>sgi</I> ao driver.
|
||
Anyone has closer info?</P>
|
||
|
||
|
||
<P><B><A NAME=6.6>6.6. QNX</A></B></P>
|
||
|
||
<P>Works. You'll need to download SDL for QNX, and install it. Then run
|
||
<B>MPlayer</B> with <CODE>-vo sdl:photon</CODE> and <CODE>-ao sdl:nto</CODE>
|
||
options, and it should be fast.</P>
|
||
|
||
<P>The <CODE>-vo x11</CODE> output will be even slower than on Linux, since
|
||
QNX has only X <I>emulation</I> which is VERY slow. Use SDL.</P>
|
||
|
||
|
||
<P><B><A NAME=A>Appendix A - Authors</A></B></P>
|
||
|
||
<P>NOTE: Do *NOT* send bugreports, help & feature requests directly to the authors!</P>
|
||
|
||
<P>Read Appendix <A HREF="#C">C</A> and subscribe to mplayer-users mailing lists.</P>
|
||
|
||
<P ALIGN=center><B><U>The <B>MPlayer</B> project:</U></B></P>
|
||
|
||
<P><UL>
|
||
|
||
<LI><B><A HREF="mailto:send mail to mplayer-users!"><EFBFBD>rp<EFBFBD>d Gere<72>ffy (A'rpi/ESP-team)</A></B>
|
||
<UL>
|
||
<LI>player code (mpeg stream demultiplexer and avi/asf parser, A-V sync, seek...)</LI>
|
||
<LI>mp3lib, based on mpglib sources [MP3 audio decoder]</LI>
|
||
<LI>getch2 [keyboard handler]</LI>
|
||
<LI>some changes in libmpeg2 code (progressive frames, bitrate & fps support)</LI>
|
||
<LI>libvo improvements: adding OpenGL support, bugfix in mga driver...</LI>
|
||
<LI>triple buffering & YUY2 support (for DivX/MPEG4) into mga_vid driver</LI>
|
||
<LI>scripts in the TVout directory (TVout on Matrox G400DH, read documentation)</LI>
|
||
<LI>hacking DivX/Mpeg4 VfW codecs to get YUV output</LI>
|
||
<LI>opendivx decoder speed optimizations (see opendivx/ChangeLog)</LI>
|
||
<LI>OSD & SUB display code</LI>
|
||
<LI>ffmpeg/libavcodec integration</LI>
|
||
<LI>DivX4Linux (ProjectMayo) support (see documentation)</LI>
|
||
<LI>New DVD-Support using libdvdread</LI>
|
||
<LI>DVB support</LI>
|
||
<LI>MPEG PES output</LI>
|
||
<LI>anything that isn't mentioned elsewhere</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:pontscho@makacs.poliod.hu">Zolt<EFBFBD>n Ponekker (Pontscho/Fresh!)</A></B>
|
||
<UL>
|
||
<LI>configure script and Makefiles for easy compile</LI>
|
||
<LI>GUI system</LI>
|
||
<LI>3DNow! support into mp3lib</LI>
|
||
<LI>3DNow! support into fastmemcpy.h</LI>
|
||
<LI>various X11 driver changes (keyboard handling, fullscreen, bpp detect, etc)</LI>
|
||
<LI>libvo: adding xmga driver, and fullscreen support to xv</LI>
|
||
<LI>audio mixer (volume) support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:lgb@lgb.hu">G<EFBFBD>bor L<>n<EFBFBD>rt (LGB)</A></B>
|
||
<UL>
|
||
<LI>./configure script improvements</LI>
|
||
<LI>Makefile improvements</LI>
|
||
<LI>prelimenary DVD support</LI>
|
||
<LI>various X11 cleanups and fixes</LI>
|
||
<LI>HTMLization of documentation</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:gabucino@mplayerhq.hu">G<EFBFBD>bor B<>rczi (Gabucino)</A></B>
|
||
<UL>
|
||
<LI>documentation writer & maintainer</LI>
|
||
<LI>hungarian translation of documentation, homepage, and help output</LI>
|
||
<LI>second homepage design&gfx</LI>
|
||
<LI>homepage maintainer</LI>
|
||
<LI>testing, codecs quality & speed comparsions</LI>
|
||
<LI>IRC channels operator (#MPlayer is user channel)</LI>
|
||
<LI>experimental MINIX port :) (what's funny about it?)</LI>
|
||
<LI>MPsub subtitle format design</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:szabi@inf.elte.hu">Szabolcs Berecz (Szabi)</A></B>
|
||
<UL>
|
||
<LI>codecs.conf file parser</LI>
|
||
<LI>config file and command line parser</LI>
|
||
<LI>mga_vid fixes, module option etc.</LI>
|
||
<LI>fbdev support in libvo</LI>
|
||
<LI>type #7 subtitle support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:lez@sch.bme.hu">L<EFBFBD>szl<EFBFBD> Megyer (Lez, Laaz)</A></B>
|
||
<UL>
|
||
<LI>SUB reader</LI>
|
||
<LI>screensaver+DPMS disable for libvo</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:chass-@freemail.hu">Gyula L<>szl<7A> (Chass, T<>gla)</A></B>
|
||
<UL>
|
||
<LI>first fonts (mp_font1.zip)</LI>
|
||
<LI>third homepage design&gfx</LI>
|
||
<LI>fourth (current) homepage design&gfx</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:se7en@sch.bme.hu">Zolt<EFBFBD>n M<>rk Vici<63>n (Se7en)</A></B>
|
||
<UL>
|
||
<LI>SVGAlib support in libvo</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:alex@naxine.org">Alex Beregszaszi (al3x)</A></B>
|
||
<UL>
|
||
<LI>ALSA output driver in libao2</LI>
|
||
<LI>vo_ggi output driver in libvo (www.ggi-project.org)</LI>
|
||
<LI>xanim codecs support</LI>
|
||
<LI>VIVO files support</LI>
|
||
<LI>TV grabbing support</LI>
|
||
<LI>Quicktime hackings</LI>
|
||
<LI>libavcodec support in MEncoder</LI>
|
||
<LI>RM fileformat demuxer</LI>
|
||
<LI>mencoder framecopy</LI>
|
||
<LI>yuv4mpeg1 support</LI>
|
||
<LI>Nuppelvideo demuxer changes</LI>
|
||
<LI>subconfig</LI>
|
||
<LI>VIDIX and libdha hackings</LI>
|
||
<LI>Matrox driver port to Vidix</LI>
|
||
<LI>XVidix video output driver</LI>
|
||
<LI>and other various stuff (in libvo, libmad syncing, dec_audio/video and loader)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:asackerm@stud.informatik.uni-erlangen.de">Andreas Ackermann (Acki)</A></B>
|
||
<UL>
|
||
<LI>LIRC support (see documentation)</LI>
|
||
<LI>DGA support in libvo</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:atmosfear@users.sourceforge.net">Felix B<>nemann (Atmos)</A></B>
|
||
<UL>
|
||
<LI>SDL driver maintainer</LI>
|
||
<LI>Additional YUV formats fixes</LI>
|
||
<LI>New font (mp_font2.zip)</LI>
|
||
<LI>PNG file output support in libvo</LI>
|
||
<LI>flipping support (for Indeo 3/4, etc)</LI>
|
||
<LI>SDL audio driver in libao2</LI>
|
||
<LI>RAW PCM/WAVE file writer for libao2</LI>
|
||
<LI>OggVorbis audio support</LI>
|
||
<LI>Various aspect code</LI>
|
||
<LI>Win32 port</LI>
|
||
<LI>priority support in codecs.conf</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:telenieko@telenieko.com">TeLeNiEkO</A></B>
|
||
<UL>
|
||
<LI>spanish translation of documentation</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:mgraffam@idsi.net">Michael Graffam</A></B>
|
||
<UL>
|
||
<LI>XF86VidMode support to vo_x11 and vo_dga</LI>
|
||
<LI>Video mode switching code to vo_dga</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:hoffmajs@gmx.de">Jens Hoffmann</A></B>
|
||
<UL>
|
||
<LI>Additional YUV formats support</LI>
|
||
<LI>found the big BITMAPINFOHEADER problem -> solved ASV2 pixelization</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:nickols_k@mail.ru">Nick Kurshev</A></B>
|
||
<UL>
|
||
<LI>memcpy optimizations for AMD K7 and Intel Pentium III (fastmemcpy.h)</LI>
|
||
<LI>CDROM tune info</LI>
|
||
<LI>further 3DNow! optimizations into mp3lib and libac3 and ffmpeg</LI>
|
||
<LI>russian translation of documentation</LI>
|
||
<LI>radeon_vid, rage128_vid, radeonfb</LI>
|
||
<LI>libvo driver: vo_vesa</LI>
|
||
<LI>VIDIX and libdha design, programming</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:german@piraos.com">German Gomez Garcia</A></B>
|
||
<UL>
|
||
<LI>SPDIF AC3 output for SBLive!</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:eyck@incubus.ar.lublin.pl">Dariusz Pietrzak (Eyck)</A></B>
|
||
<UL>
|
||
<LI>debian packaging support (see debian/* and this documentation)</LI>
|
||
<LI>support for vplayer subtitle format</LI>
|
||
<LI>prelimenary support for .RT subtitle format</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:marcus@idonex.se">Marcus Comstedt</A></B>
|
||
<UL>
|
||
<LI>initial solaris8-x86 support</LI>
|
||
<LI>configure fixes</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:jk@tools.de">J<EFBFBD>rgen Keil</A></B>
|
||
<UL>
|
||
<LI>patched <B>MPlayer</B> to work on Solaris 8 x86</LI>
|
||
<LI>various fixes (win32, configure, etc)</LI>
|
||
<LI>SUN audio driver in libao2</LI>
|
||
<LI>mediaLib support in libavcodec</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:vkushnir@Alfacom.net">Vladimir Kushnir</A></B>
|
||
<UL>
|
||
<LI>patched <B>MPlayer</B> to work on FreeBSD x86</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:bertrand_baudet@yahoo.com">Bertrand BAUDET</A></B>
|
||
<UL>
|
||
<LI>network streaming support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:albeu@free.fr">Alban Bedel</A> <A HREF="mailto:djw@flinthills.com">Derek J Witt</A></B>
|
||
<UL>
|
||
<LI>MMS network streaming patches</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:zybi@fanthom.irc.pl">Artur Zaprzala</A></B>
|
||
<UL>
|
||
<LI>Complete font generator prog + OSD font (TOOLS/subfont-c)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:lanzz@lanzz.org">lanzz@lanzz.org</A></B>
|
||
<UL>
|
||
<LI>GIMP font generator plugin (TOOLS/subfont-gimp)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:atlka@pg.gda.pl">Adam Tla/lka</A></B>
|
||
<UL>
|
||
<LI>osd/sub review, fixes, optimization, utf8 support</LI>
|
||
<LI>various fixes</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:folke@ashberg.de">Folke Ashberg</A></B>
|
||
<UL>
|
||
<LI>native AAlib driver (-vo aa)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:ktoman@email.cz">Kamil Toman</A></B>
|
||
<UL>
|
||
<LI>czech fonts</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:iive@yahoo.com">Ivan Kalvatchev</A></B>
|
||
<UL>
|
||
<LI>interlaced MPEG2 support (libmpeg2)</LI>
|
||
<LI>libvo2 draft</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:p_l@gmx.fr">pl</A></B>
|
||
<UL>
|
||
<LI>new ./configure script</LI>
|
||
<LI>general code maintaining, fixes, patch commiting</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:michaelni@gmx.at">Michael Niedermayer</A></B>
|
||
<UL>
|
||
<LI>new postprocessing code (with deinterlacing etc...)</LI>
|
||
<LI>software scaling C/MMX/MMX2/3DNow support (swscale.c)</LI>
|
||
<LI>various rgb/yuv bpp converters</LI>
|
||
<LI>new, better IDCT code for libavcodec</LI>
|
||
<LI>runtime cpu detection</LI>
|
||
<LI>SSE optimization of liba52</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:sgoethel@jausoft.com">Sven Goethel</A></B>
|
||
<UL>
|
||
<LI>libvo driver: vo_gl2</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:joy@pingfm.org">joy_ping</A></B>
|
||
<UL>
|
||
<LI>ao_alsa9 fixes</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:eanholt@gladstone.uoregon.edu">Eric Anholt</A></B>
|
||
<UL>
|
||
<LI>CPU detection code</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:Jiri.Svoboda@seznam.cz">Jiri Svoboda</A></B>
|
||
<UL>
|
||
<LI>AQT type subtitles support</LI>
|
||
<LI>CRTC2 YUV support in mga_vid</LI>
|
||
<LI>DirectFB video output driver</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:oliver.schoenbrunner@jku.at">Oliver Schoenbrunner</A></B>
|
||
<UL>
|
||
<LI>SGI audio driver</LI>
|
||
<LI>MIPS support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:jeroen.dobbelaere@acunia.com">Jeroen Dobbelaere</A></B>
|
||
<UL>
|
||
<LI><A HREF="http://mad.sourceforge.net">libmad</A> support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:dholm@telia.com">David Holm</A></B>
|
||
<UL>
|
||
<LI>DXR3 support</LI>
|
||
<LI>libmp1e import</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:takis@lumumba.luc.ac.be">Panagiotis Issaris</A></B>
|
||
<UL>
|
||
<LI>-playlist option</LI>
|
||
<LI>NuppelVideo support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:melanson@pcisys.net">Mike Melanson</A></B>
|
||
<UL>
|
||
<LI>MS Video1 codec open-source implementation</LI>
|
||
<LI>FLI demuxer, decoder</LI>
|
||
<LI>Generic ADPCM decoder (supports stereo IMA4 too)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:ranma@gmx.at">Tobias Diedrich</A></B>
|
||
<UL>
|
||
<LI>NAS audio output driver</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:foth@informatik.uni-hamburg.de">Kilian A. Foth</A></B>
|
||
<UL>
|
||
<LI>-slave mode</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:timf@mail.csse.monash.edu.au">Tim Ferguson</A></B>
|
||
<UL>
|
||
<LI>Opensource Cinepak decoder</LI>
|
||
<LI>Opensource CYUV decoder</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:itrs@softwell.com.tw">Sam Lin</A></B>
|
||
<UL>
|
||
<LI>-wid (plugger) patch</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:johannes.feigl@mcse.at">Johannes Feigl</A></B>
|
||
<UL>
|
||
<LI>german docs translation</LI>
|
||
<LI>some improvements in configure, small patches</LI>
|
||
<LI>found somebody (Thilo Wunderlich) who sent a DVB card</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:kmkaplan@selfoffice.com">Kim Minh Kaplan</A></B>
|
||
<UL>
|
||
<LI>DVD and VobSub subtitles display support</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:bkuschak@yahoo.com">Brian Kuschak</A></B>
|
||
<UL>
|
||
<LI>RTP streaming support (reading)</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:steve@daviesfam.org">Stephen Davies</A></B>
|
||
<UL>
|
||
<LI>support for large video files (>2^32 bytes in size)</LI>
|
||
<LI>surround sound</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:rsnel@cube.dyndns.org">Rik Snel</A></B>
|
||
<UL>
|
||
<LI><CODE>zr</CODE> video output driver</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:ajh@atri.curtin.edu.au">Anders Johansson</A></B>
|
||
<UL>
|
||
<LI>audio plugin system</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:rtogni@freemail.it">Roberto Togni</A></B>
|
||
<UL>
|
||
<LI>Open source QT RPZA decoder</LI>
|
||
</UL></LI>
|
||
|
||
<LI><B><A HREF="mailto:wojtekka@bydg.pdi.net">Wojtek Kaniewski</A></B>
|
||
<UL>
|
||
<LI>Mouse wheel support</LI>
|
||
</UL></LI>
|
||
|
||
</UL></P>
|
||
|
||
<P>Main testers:</P>
|
||
|
||
<P><UL>
|
||
<LI>Tibor Bal<61>zs (Tibcu)
|
||
<LI>P<EFBFBD>ter Sasi (SaPe)
|
||
<LI>Christoph H. Lampert
|
||
<LI>Attila Kinali
|
||
<LI>Dirk Vornheder
|
||
<LI>Bohdan Horst (Nexus)
|
||
</UL></P>
|
||
|
||
<P ALIGN=center><B><U>The codecs, libs:</U></B></P>
|
||
|
||
<P><UL>
|
||
<LI>Aaron Holtzman: <aholtzma@engr.uvic.ca>
|
||
<UL><LI>ac3dec (and libac3) author [AC3 audio decoder]
|
||
</LI><LI>mga_vid driver [Matrox G200/G400 YUV Back-end Scaler]
|
||
</LI><LI>mpeg2dec [Fast MPEG1/MPEG2 video decoder, currently used in player]
|
||
</LI></UL>
|
||
|
||
</LI><LI>Michel Lespinasse: <walken@zoy.org>
|
||
<UL><LI>did large libmpeg2 changes for better speed and mpeg conformance
|
||
</LI></UL>
|
||
|
||
</LI><LI>Eugene Kuznetsov: <divx@euro.ru>
|
||
<UL><LI>avifile author [AVI player library for linux, using Win32 VfW/ACM codecs]
|
||
</LI><LI>technical help about AVI and ASF formats, and how to get YUV using VfW...
|
||
</LI><LI>divx4linux techical support
|
||
</LI></UL>
|
||
|
||
</LI><LI>Zdenek Kabelac: <kabi@informatics.muni.cz>
|
||
<UL><LI>current avifile maintainer(?)
|
||
</LI><LI>some technical help about the win32 stuff and timers
|
||
</LI></UL>
|
||
|
||
</LI><LI>Gerard Lantau: <glantau@yahoo.fr>
|
||
<UL><LI>ffmpeg/libavcodec author,maintainer (opensource mpeg, mjpeg, divx en/decoder)
|
||
</LI></UL>
|
||
|
||
</LI><LI>Project Mayo: <<A HREF="http://www.projectmayo.com">http://www.projectmayo.com</A>>
|
||
<UL><LI>the OpenDivX codec authors
|
||
</LI></UL>
|
||
|
||
</LI><LI>Michael Hipp:
|
||
<UL><LI>mpglib author [isn't used directly but some parts in mp3lib]
|
||
</LI></UL>
|
||
|
||
</LI><LI>Mark Podlipec:
|
||
<UL><LI>xa_gsm.c author [MS-GSM audio codec]
|
||
[from a GSM library by Jutta Degener and Carsten Bormann]
|
||
</LI></UL>
|
||
|
||
</LI><LI>Jake Janovetz:
|
||
<UL><LI>remez.c author [Used to calculate audio filter coefficients]
|
||
</LI></UL>
|
||
|
||
</LI></UL></P>
|
||
|
||
<P>Their code is not used in current player version, but I've got some ideas or
|
||
other technical help from:</P>
|
||
|
||
<P><UL>
|
||
<LI>John F. McGowan http://www.jmcgowan.com/
|
||
<UL><LI>AVI FAQ author/collector. [site with many useful docs on codecs and avi fmt]
|
||
</LI></UL>
|
||
|
||
</LI><LI>Dirk Farin: <farin@ti.uni-mannheim.de>
|
||
<UL><LI>dvdview author [MPEG1/MPEG2 video decoder, used in v0.5-v0.8]
|
||
</LI></UL>
|
||
|
||
</LI><LI>Adam Williams: <broadcast@earthling.net>
|
||
<UL><LI>libmpeg3 (and xmovie) author [MPEG1/MPEG2 video decoder, used in v0.1-v0.4]
|
||
</LI></UL>
|
||
|
||
</UL></P>
|
||
|
||
<P><B><A NAME=A2>Appendix A/2 - MPlayer code and documentation maintainers</A></B></P>
|
||
|
||
<P>Homepage
|
||
<UL>
|
||
<LI><B>Design</B>: Chass
|
||
<LI><B>Contents</B>: Gabucino
|
||
</UL></P>
|
||
<P>English documentation
|
||
<UL>
|
||
<LI><B>tech-hun.txt</B>: A'rpi
|
||
<LI><B>all the others</B>: Gabucino
|
||
<LI><B>HTMLization</B>: LGB
|
||
</UL></P>
|
||
<P>Documentation translations
|
||
<UL>
|
||
<LI><B>Hungarian</B>: Gabucino
|
||
<LI><B>German</B>: <A HREF="mailto:johannes.feigl@mcse.at">Johannes Feigl</A>
|
||
<LI><B>French</B>: <A HREF="mailto:smarteau@eso.org">Stephane Marteau</A> (outdated)
|
||
<LI><B>Spanish</B>: TeLeNiEkO (outdated)
|
||
<LI><B>Russian</B>: Nick Kurshev (outdated)
|
||
<LI><B>Polish</B>: Dariusz Pietrzak (old translation in non-hierachic ascii
|
||
version) <A HREF="mailto:nell@skrzynka.pl">Justyna Biala</A>(current html
|
||
version)
|
||
|
||
</UL></P>
|
||
<P>Platforms/ports
|
||
<UL>
|
||
<LI><B>DEBIAN packaging</B>: Dariusz Pietrzak
|
||
<LI><B>FreeBSD support</B>: Vladimir Kushnir
|
||
<LI><B>Solaris 8 support</B>: J<>rgen Keil
|
||
<LI><B>MIPS support</B>: Oliver Schoenbrunner
|
||
</UL></P>
|
||
<P>MPlayer code:
|
||
<UL>
|
||
<LI><B>fileformat detection, demuxers</B>: A'rpi
|
||
<LI><B>DVD support</B>: (alpha version was: LGB) now: A'rpi
|
||
<LI><B>network streaming</B>: Bertrand BAUDET
|
||
<LI><B>A-V sync code</B>: A'rpi
|
||
<LI><B>subtitles file parser/reader</B>: Lez (most of them)
|
||
<LI><B>config files & commandline parser</B>: Szabi
|
||
<LI><B>fastmemcpy</B>: Nick Kurshev
|
||
<LI><B>LIRC support</B>: Acki
|
||
<LI><B>SUB/OSD renderer</B>: Adam Tla/lka
|
||
</UL></P>
|
||
<P>libvo drivers:
|
||
<UL>
|
||
<LI><B>vo_3dfx.c</B> - OBSOLETED, use xv or tdfxfb
|
||
<LI><B>vo_tdfxfb.c</B> - <A HREF="mailto:zsteva@ptt.yu">Zeljko Stevanovic</A>
|
||
<LI><B>vo_aa.c</B> - Folke Ashberg
|
||
<LI><B>vo_directfb.c</B> - <A HREF="mailto:Jiri.Svoboda@seznam.cz">Jiri Svoboda</A>
|
||
<LI><B>vo_dga.c</B> - Acki
|
||
<LI><B>vo_fbdev.c</B> - Szabi
|
||
<LI><B>vo_ggi.c</B> - al3x
|
||
<LI><B>vo_gl.c</B> - A'rpi
|
||
<LI><B>vo_gl2.c</B> - <A HREF="mailto:sgoethel@jausoft.com">Sven Goethel</A>
|
||
<LI><B>vo_md5.c</B> - A'rpi
|
||
<LI><B>vo_mga.c</B> - A'rpi
|
||
<LI><B>vo_mpegpes.c</B> - A'rpi
|
||
<LI><B>vo_null.c</B> - A'rpi
|
||
<LI><B>vo_odivx.c</B> - A'rpi
|
||
<LI><B>vo_pgm.c</B> - A'rpi
|
||
<LI><B>vo_png.c</B> - Atmos
|
||
<LI><B>vo_sdl.c</B> - Atmos
|
||
<LI><B>vo_svga.c</B> - se7en
|
||
<LI><B>vo_syncfb.c</B> - OBSOLETED, use mga
|
||
<LI><B>vo_vesa.c</B> - Nick Kurshev
|
||
<LI><B>vo_x11.c</B> - Pontscho
|
||
<LI><B>vo_xmga.c</B> - Pontscho
|
||
<LI><B>vo_xv.c</B> - Pontscho
|
||
<LI><B>vo_zr.c</B> - <A HREF="mailto:rsnel@cube.dyndns.org">Rik Snel</A>
|
||
</UL></P>
|
||
<P>libao2 drivers:
|
||
<UL>
|
||
<LI><B>ao_alsa5.c</B> - al3x
|
||
<LI><B>ao_alsa9.c</B> - al3x (fixed by <A HREF="mailto:joy@pingfm.org">joy_ping</A>)
|
||
<LI><B>ao_null.c</B> - A'rpi
|
||
<LI><B>ao_oss.c</B> - A'rpi
|
||
<LI><B>ao_pcm.c</B> - Atmos
|
||
<LI><B>ao_sdl.c</B> - Atmos
|
||
<LI><B>ao_sgi.c</B> - <A HREF="oliver.schoenbrunner@jku.at">Oliver Schoenbrunner</A>
|
||
<LI><B>ao_sun.c</B> - J<>rgen Keil
|
||
</UL></P>
|
||
|
||
<P>TOOLS:
|
||
<UL>
|
||
<LI><B>subfont-c</B> - Artur Zaprzala: <zybi@fanthom.irc.pl>
|
||
<LI><B>subfont-GIMP</B> - lanzz@lanzz.org
|
||
<LI><B>*.pl</B> - Atmos
|
||
<LI><B>x2mpsub</B> - Gabucino
|
||
<LI><B>others</B> - A'rpi
|
||
</UL></P>
|
||
|
||
<P>Misc:
|
||
<UL>
|
||
<LI><B>vbelib.*</B> - Nick Kurshev
|
||
<LI><B>lrmi.*</B> - copied by Nick Kurshev (originally by Josh Vanderhoof)
|
||
</UL></P>
|
||
|
||
|
||
<P><B><A NAME=B>Appendix B - Mailing lists</A></B></P>
|
||
|
||
<P>There are some public mailing lists on <B>MPlayer</B>. Subscribing can be
|
||
achieved on the following addresses:</P>
|
||
|
||
<P><UL>
|
||
<LI>MPlayer developers list:<BR>
|
||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng</A>
|
||
<P>This list is about mplayer development! Talking about interface/API changes,
|
||
new libraries, code optimization, ./configure changes, and send patches here.
|
||
Do NOT send bugreports, user questions, feature requests here!
|
||
This list should be kept low-traffic.</P>
|
||
|
||
</LI><LI>MPlayer users list:<BR>
|
||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">http://mplayerhq.hu/mailman/listinfo/mplayer-users</A>
|
||
<P><UL>
|
||
<LI>send bugreports here (after reading <A HREF="#D">Known Bugs</A> section, and Appendix <A HREF="#C">C</A>)</LI>
|
||
<LI>send feature requests here (after reading the WHOLE documentation)</LI>
|
||
<LI>send user questions here (after reading the WHOLE documentation)</LI>
|
||
</UL></P>
|
||
|
||
</LI><LI>MPlayer hungarian users list:<BR>
|
||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-felhasznalok">http://mplayerhq.hu/mailman/listinfo/mplayer-felhasznalok</A>
|
||
<P><UL>
|
||
<LI>hungarian language list</LI>
|
||
<LI>topic? We'll see about it...</LI>
|
||
</UL></P>
|
||
|
||
</LI><LI>MPlayer & Matrox G200/G400/G450/G550 users:<BR>
|
||
<A HREF="http://lists.sourceforge.net/lists/listinfo/mplayer-matrox">http://lists.sourceforge.net/lists/listinfo/mplayer-matrox</A>
|
||
<P>Send matrox-related questions here<UL>
|
||
<LI>things about mga_vid</LI>
|
||
<LI>matrox's official beta drivers (for X 4.x.x)</LI>
|
||
<LI>and about matroxfb-TVout stuff.</LI></UL></P>
|
||
|
||
</LI><LI>MPlayer & DVB card users:<BR>
|
||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dvb">http://mplayerhq.hu/mailman/listinfo/mplayer-dvb</A>
|
||
<P>Things related to the hardware decoder card called DVB.<UL>
|
||
</P>
|
||
|
||
</LI><LI>MPlayer CVS-log: <BR>
|
||
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog">http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog</A>
|
||
<P>Send only questions about CVS changes here.
|
||
(if you don't understand why a change is required or you've better fix)
|
||
Be sure in that your target developer reads this list!</P>
|
||
|
||
</LI></UL></P>
|
||
|
||
<P>NOTE: language of above lists are ENGLISH, unless explicitly stated
|
||
otherwise. Please do not send messages using other language!</P>
|
||
|
||
<P>NOTE: you can reach the searchable mailing list archives
|
||
<A HREF="http://www.mplayerhq.hu/cgi-bin/htsearch">here</A>.
|
||
|
||
|
||
<P><B><A NAME=C><A HREF="bugreports.html">Appendix C</A> - How to report bugs</A></B></P>
|
||
|
||
<P><B><A NAME=D>Appendix D - Known bugs</A></B></P>
|
||
|
||
<P>Special system/cpu-specific bugs/problems:</P>
|
||
<UL>
|
||
<LI> SIGILL (signal 4) in draw_frame, on P3 (mostly with 2.2.x kernels):<BR>
|
||
Problem: movups is crashing in libvo/fastmemcpy.h<BR>
|
||
Workaround: ./configure --disable-fastmemcpy<BR>
|
||
SOLVED: disabled SSE code in fastmemcpy.h ;(</LI>
|
||
|
||
<LI>No image (black image) in RGB 15/16bpp (x11,dga,fbdev,svga) playing
|
||
MPEG or OpenDivX files:<BR>
|
||
Problem: gcc 2.96 bug, read <A HREF="gcc-2.96-3.0.html">this</A><BR>
|
||
Workaround: ./configure --disable-mmx, or use gcc 2.95.x<BR>
|
||
SOLVED: code fixed</LI>
|
||
|
||
<LI>SIGILL (signal 4) or other fault at loading l3codeca.acm:<BR>
|
||
Problem: shared libs are loaded to 0x00xxxxxx instead of 0x40xxxxxx<BR>
|
||
Workaround: mplayer -afm 1 ...<BR>
|
||
SOLVED: you are using some security kernel patch, like OpenWall etc.</LI>
|
||
|
||
<LI>SIGILL (signal 4) on P3 using 2.2.x kernels:<BR>
|
||
Problem: kernel 2.2.x doesn't have proper (working) SSE support<BR>
|
||
Solution: upgrade kernel to 2.4.x<BR>
|
||
Workaround: ./configure --disable-sse</LI>
|
||
|
||
<LI>General SIGILL (signal 4):<BR>
|
||
Problem: you compiled and run mplayer in different machines
|
||
(for example compiled on P3 and running on celeron)<BR>
|
||
Solution: compile MPlayer on the same machine where you will use it!<BR>
|
||
Workaround: ./configure --disable-sse etc. options</LI>
|
||
|
||
<LI>"Internal buffer inconsistency" during MEncoder run:<BR>
|
||
Problem: known gcc 2.96 bug, no fix yet. If you have gcc 2.95, you
|
||
have a libmp3lame library that was compiled with gcc 2.96 (installed from
|
||
a deb/rpm package?). Check which lib does MEncoder found : ldd mencoder.</LI>
|
||
|
||
<LI>Messed up MP2/MP3 sound on PPC:<BR>
|
||
Problem: known GCC miscompilation bug on PPC platforms, no fix yet.<BR>
|
||
Workaround: use FFmpeg's (slow) MP1/MP2/MP3 decoder (<CODE>-ac ffmpeg</CODE>)</LI>
|
||
|
||
<LI>sig11 in libmpeg2, when scaling+encoding:<BR>
|
||
Problem: known GCC 2.95.2 MMX bug, upgrade to 2.95.3.</LI>
|
||
</UL>
|
||
|
||
<P>Various A-V sync and other audio problems:</P>
|
||
|
||
General audio delay or jerky sound (exists with all or many files):<BR>
|
||
<UL>
|
||
<LI>audio buffer problems (buffer size badly detected)<BR>
|
||
Workaround: mplayer -abs option</LI>
|
||
<LI>slow machine (cpu or vga)<BR>
|
||
try with -vo null, if it plays well, then you have slow VGA card/driver<BR>
|
||
Workaround: buy a faster card or read this documentation about how to speed up<BR>
|
||
SOLVED: try -framedrop</LI>
|
||
<LI>buggy audio driver</LI>
|
||
</UL><BR>
|
||
|
||
Audio delay/de-sync specific to one or a few files:<BR>
|
||
<UL>
|
||
<LI>bad file (please upload the file, so we can check & fix)<BR>
|
||
Workaround:
|
||
<UL>
|
||
<LI>-ni or -nobps option (for non-interleaved or bad files)</LI>
|
||
and/or
|
||
<LI>-mc 0 (required for files with badly interleaved VBR audio)</LI>
|
||
and/or
|
||
<LI>-delay option or +/- keys at runtime to adjust delay</LI>
|
||
</UL>
|
||
<LI>your soundcard doesn't support 48Khz playback<BR>
|
||
Workaround: buy a better soundcard... or try to decrease fps by 10% (use -fps 27 for a 30fps movie)</LI>
|
||
<LI>slow machine<BR>
|
||
(if A-V is not around 0, and the last number in the status line increasing)<BR>
|
||
Workaround: -framedrop</LI>
|
||
</UL><BR>
|
||
|
||
No sound at all:<BR>
|
||
<UL>
|
||
<LI>your file uses an unsupported codec<BR>
|
||
Workaround: read the documentation and help us adding support for it</LI>
|
||
</UL>
|
||
|
||
<P>Video-out problems:</P>
|
||
|
||
<P>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.</P>
|
||
|
||
<P>OSD/sub flickering:<BR>
|
||
- x11 driver: sorry, it can't be fixed now<BR>
|
||
- xv driver: use -double option</P>
|
||
|
||
</BODY>
|
||
</HTML>
|