0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 12:02:23 +02:00

continuing paragraph reformatting

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6961 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
gabucino 2002-08-10 20:26:43 +00:00
parent 9a0b654755
commit 5461fc33ba
7 changed files with 1072 additions and 980 deletions

View File

@ -19,7 +19,7 @@
make you consider changing the speed of a CD-ROM drive:</P>
<UL>
<LI>Ther have been reports of read errors at these high speeds, especially
<LI>There have been reports of read errors at these high speeds, especially
with badly pressed CD-ROMs. Reducing the speed can prevent data loss under
these circumstances.</LI>
<LI>Many CD-ROM drives are annoyingly loud, a lower speed may reduce the

View File

@ -20,53 +20,55 @@ daily generated list!!!</P>
<P>The most important ones above all:</P>
<UL>
<LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI>
<LI>native decoders for DivX ;-), OpenDivX (DivX4), DivX 5.01, 3ivX, M$ MPEG4 v1, v2 and other MPEG4 variants</LI>
<LI>native decoder for Windows Media Video 7 (WMV1), and Win32 DLL decoder for
Windows Media Video 8 (WMV2), both used in .wmv files</LI>
<LI><B>native Sorenson (SVQ1) decoder</B></LI>
<LI>Cinepak and Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI>
<LI>MJPEG, AVID, VCR2, ASV2 and other hardware formats</LI>
<LI>VIVO 1.0, 2.0, I263 and other h263(+) variants</LI>
<LI>FLI/FLC</LI>
<LI>RealVideo 1.0 from ffmpeg, and RealVideo 2.0, 3.0 using RealPlayer
libraries</LI>
<LI>native decoder for HuffYUV</LI>
<LI>Various old simple RLE-like formats</LI>
<LI>MPEG1 (VCD) and MPEG2 (DVD) video</LI>
<LI>native decoders for DivX ;-), OpenDivX, DivX4, DivX5,
M$ MPEG4 v1, v2 and other MPEG4 variants</LI>
<LI>native decoder for Windows Media Video 7 (WMV1), and Win32 DLL decoder for
Windows Media Video 8 (WMV2), both used in .wmv files</LI>
<LI><B>native Sorenson (SVQ1) decoder</B></LI>
<LI>3ivx decoder</LI>
<LI>Cinepak and Intel Indeo codecs (3.1,3.2,4.1,5.0)</LI>
<LI>MJPEG, AVID, VCR2, ASV2 and other hardware formats</LI>
<LI>VIVO 1.0, 2.0, I263 and other h263(+) variants</LI>
<LI>FLI/FLC</LI>
<LI>RealVideo 1.0 codec from libavcodec, and RealVideo 2.0, 3.0 codecs using
RealPlayer libraries</LI>
<LI>native decoder for HuffYUV</LI>
<LI>Various old simple RLE-like formats</LI>
</UL>
<P>If you have a Win32 codec not listed here which is not supported yet, please read the
<A HREF="#importing">codec importing HOWTO</A> and help us add support
for it!</P>
<P>If you have a Win32 codec not listed here which is not supported yet, please
read the <A HREF="#importing">codec importing HOWTO</A> and help us add support
for it!</P>
<P><B><A NAME="divx">2.2.1.1 DivX4/DivX5</A></B></P>
<P>This section contains information about the DivX4 codec of
<A HREF="http://www.projectmayo.com">Project Mayo</A>. Their first available alpha version was OpenDivX 4.0
alpha 47 and 48. Support for this was included in <B>MPlayer</B> 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.</P>
<P>This section contains information about the DivX4 and DivX5 codecs of
<A HREF="http://www.projectmayo.com">Project Mayo</A>. Their first available
alpha version was OpenDivX 4.0 alpha 47 and 48. Support for this was included
in <B>MPlayer</B> 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.</P>
<P>The new generation of this codec is called DivX4Linux 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 <B>DISCOURAGED</B>. However, it is useful for
encoding. One disadvantage of this codec is that it is currently closed source.</P>
<P>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 <B>DISCOURAGED</B>. However, it is useful for encoding. One
disadvantage of this codec is that it is currently closed source.</P>
<P>The codec can be downloaded from one of the following URLs:</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="http://avifile.sourceforge.net">http://avifile.sourceforge.net</A><BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="http://divx.com">http://divx.com</A></P>
&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="http://divx.com">http://divx.com</A></P>
<P>Unpack it, and run <CODE>./install.sh</CODE> as root.</P>
<P><B>Note:</B> Do <B>not</B> forget adding <CODE>/usr/local/lib</CODE> to your
<CODE>/etc/ld.so.conf</CODE> and running <CODE>ldconfig</CODE>!</P>
<CODE>/etc/ld.so.conf</CODE> and running <CODE>ldconfig</CODE>!</P>
<P><B>MPlayer</B> 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.</P>
compile as usual. If it does not detect it, you did not install or configure
it correctly.</P>
<P>DivX4Linux works in two modes:</P>
@ -80,11 +82,11 @@ conversion via libvo. (<B>FAST, RECOMMENDED!</B>)</TD></TR>
In this mode you can use YUY2/UYVY, too. (<B>SLOW</B>)</TD></TR>
</TABLE>
<P>The <CODE>-vc odivx</CODE> 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 <CODE>-vc divx4</CODE>
method. For RGB modes the speed is the same, differing at best
according to your current color depth.</P>
<P>The <CODE>-vc odivx</CODE> 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
<CODE>-vc divx4</CODE> method. For RGB modes the speed is the same, differing
at best according to your current color depth.</P>
<P><B>Note:</B> If your <CODE>-vo</CODE> driver supports direct rendering, then
<CODE>-vc divx4</CODE> may be faster or even the fastest solution.</P>
@ -92,21 +94,21 @@ according to your current color depth.</P>
<P><B><A NAME="libavcodec">2.2.1.2 FFmpeg DivX/libavcodec</A></B></P>
<P>Beginning with version 0.4.2,
<A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A> contains an
<B>open source</B> DivX codec, which is compatible with traditional DivX.
<B>MPlayer</B> supports this codec, making it possible to <B>watch
DivX/DivX4/DivX5/MP41/MP42 movies on non-x86 platforms</B>. Furthermore it
offers higher decoding speed than the Win32 codecs or the original
DivX4 library!</P>
<P><A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A> contains an
<B>opensource</B> codec package, which is capable of decoding video streams
encoded with
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1
codecs. Not only some of them can be encoded with, but it also offers higher
speed than the Win32 codecs or the ProjectMayo DivX4/5 library!</P>
<P>It also contains a lot of nice codecs, such as RealVideo 1.0, WMV7,
MJPEG, h263, h263+, etc.</P>
<P>It contains a lot of nice codecs, especially important are the MPEG4
variants:
DivX 3, DivX 4, DivX 5, Windows Media Video 7 (WMV1)</P>
<P>If you use an <B>MPlayer</B> release you have libavcodec right in the package,
just build as usual. If you use <B>MPlayer</B> from CVS you have to extract
libavcodec from the FFmpeg CVS tree as FFmpeg 0.4.5 does <B>not</B> work with
<B>MPlayer</B>. In order to achieve this do:</P>
<P>If you use an <B>MPlayer</B> release you have libavcodec right in the
package, just build as usual. If you use <B>MPlayer</B> from CVS you have to
extract libavcodec from the FFmpeg CVS tree as FFmpeg 0.4.5 does <B>not</B>
work with <B>MPlayer</B>. In order to achieve this do:</P>
<OL>
<LI><CODE>cvs -d:pserver:anonymous@cvs.ffmpeg.sourceforge.net:/cvsroot/ffmpeg login</CODE></LI>
@ -119,8 +121,8 @@ libavcodec from the FFmpeg CVS tree as FFmpeg 0.4.5 does <B>not</B> work with
</OL>
<P><B>Note:</B> 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.</P>
subdirectory, but it does NOT contain the source for libavcodec!
You must follow the steps above to obtain the source for this library.</P>
<P>With FFmpeg and my Matrox G400, I can view even the highest resolution DivX
movies without dropped frames on my K6/2 500.</P>
@ -129,15 +131,15 @@ You must follow the steps above to obtain the source for this library.</P>
<P><B><A NAME="xanim">2.2.1.3 XAnim codecs</A></B></P>
<P>Foreword:<BR>
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.
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.
</P>
<P><B>MPlayer</B> is capable of employing the XAnim codecs for decoding. Follow
the instructions to enable them:</P>
the instructions to enable them:</P>
<UL>
<LI>Download the codecs you wish to use from the
@ -156,7 +158,7 @@ the instructions to enable them:</P>
</UL>
<P>XAnim is video codec family number 10, so you may want to use the <CODE>-vfm 10</CODE>
option to tell <B>MPlayer</B> to use them if possible.</P>
option to tell <B>MPlayer</B> to use them if possible.</P>
<P>Tested codecs include: <B>Indeo 3.2</B>, <B>4.1</B>, <B>5.0</B>, <B>CVID</B>, <B>3ivX</B>, <B>h263</B>.</P>
@ -164,39 +166,38 @@ option to tell <B>MPlayer</B> to use them if possible.</P>
<P><B><A NAME="vivo_video">2.2.1.4 VIVO video</A></B></P>
<P><B>MPlayer</B> 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 <CODE>-vc
ffh263</CODE> option (default) (requires up-to-date libavcodec). For 2.0 files, use
the <CODE>ivvideo.dll</CODE> Win32 DLL file (from <A
HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/ivvideo.dll">here</A>),
and install it under <CODE>/usr/lib/win32</CODE> or wherever you store the
Win32 codecs. This latter codec does not support YV12 nor YUY2 only BGR modes,
restricting it to the X11 and OpenGL outputs. Hopefully ffh263 will support
VIVO 2.0 files in the future.</P>
for 1.0 files is FFmpeg's H263 decoder, you can use it with the <CODE>-vc
ffh263</CODE> option (default) (requires up-to-date libavcodec). For 2.0
files, use the <CODE>ivvideo.dll</CODE> Win32 DLL file (from
<A HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/ivvideo.dll">here</A>),
and install it under <CODE>/usr/lib/win32</CODE> or wherever you store the
Win32 codecs. This latter codec does not support YV12 nor YUY2 only BGR
modes, restricting it to the X11 and OpenGL outputs. Hopefully ffh263 will
support VIVO 2.0 files in the future.</P>
<P><B><A NAME="mpeg">2.2.1.5 MPEG 1/2 video</A></B></P>
<P>MPEG1 and MPEG2 are decoded by the multiplatform native <B>libmpeg2</B> library,
whose source code is included in <B>MPlayer</B>.
We handle buggy MPEG 1/2 video files by catching sig11 (segmentation fault),
and quickly reinitializing the codec, continuing exactly from where the failure
occurred.
This recovery technique has no measurable speed penalty.</P>
<P>MPEG1 and MPEG2 are decoded by the multiplatform native <B>libmpeg2</B>
library, whose source code is included in <B>MPlayer</B>. We handle buggy
MPEG 1/2 video files by catching sig11 (segmentation fault), and quickly
reinitializing the codec, continuing exactly from where the failure occurred.
This recovery technique has no measurable speed penalty.</P>
<P><B><A NAME="ms_video1">2.2.1.6 MS Video1</A></B></P>
<P>This is a very old and very bad codec from Microsoft. In the past it was
decoded with the <CODE>msvidc32.dll</CODE> Win32 codec, now we have our own
open source implementation (by <A HREF="mailto:melanson@pcisys.net">Mike
Melanson</A>).</P>
decoded with the <CODE>msvidc32.dll</CODE> Win32 codec, now we have our own
open source implementation (by <A HREF="mailto:melanson@pcisys.net">Mike
Melanson</A>).</P>
<P><B><A NAME="cinepak">2.2.1.7 Cinepak CVID</A></B></P>
<P><B>MPlayer</B> uses its own open source, multiplatform Cinepak decoder by
default. It supports YUV outputs, so that hardware scaling is possible if the
video output driver permits it.</P>
default. It supports YUV outputs, so that hardware scaling is possible if the
video output driver permits it.</P>
<P><B><A NAME="realvideo">2.2.1.8 RealVideo</A></B></P>
@ -210,12 +211,10 @@ video output driver permits it.</P>
<P>It is recommended to download and install RealPlayer8 or RealONE, because
<B>MPlayer</B> can use their libraries to decode files with RealVideo 2.0 or
RealVideo 3.0 video. You may also just take the RealPlayer libraries from a
full installation and put them in a suitable directory like
<CODE>/usr/lib/real</CODE> or <CODE>$LIBDIR/real</CODE>. The <B>MPlayer</B>
configure script should detect the RealPlayer libraries there or in the
standard locations of a full installation. If it does not, tell configure
where to look with the <CODE>--with-reallibdir</CODE> switch.</P>
RealVideo 3.0 video. The <B>MPlayer</B> 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
<CODE>--with-reallibdir</CODE> switch.</P>
<P><B>Note:</B> RealPlayer libraries currently <B>only work with Linux, FreeBSD,
NetBSD and Cygwin on the x86 platform</B>!</P>
@ -285,14 +284,16 @@ video output driver permits it.</P>
<P>The most important audio codecs above all:<BR></P>
<UL>
<LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI>
<LI>MPEG layer 1 audio (<B>native</B> code, with libavcodec)</LI>
<LI>AC3 Dolby audio (<B>native</B> code, with MMX/SSE/3DNow! optimization)</LI>
<LI>Ogg Vorbis audio codec (<B>native</B> library)</LI>
<LI>Voxware audio (using DirectShow DLL)</LI>
<LI>alaw, msgsm, pcm and other simple old audio formats</LI>
<LI>VIVO audio (g723, Vivo Siren)</LI>
<LI>RealAudio: DNET (low bitrate AC3), Cook, Sipro</LI>
<LI>MPEG layer 2, and layer 3 (MP3) audio (<B>native</B> code, with
MMX/SSE/3DNow! optimization)</LI>
<LI>MPEG layer 1 audio (<B>native</B> code, with libavcodec)</LI>
<LI>AC3 Dolby audio (<B>native</B> code, with MMX/SSE/3DNow!
optimization)</LI>
<LI>Ogg Vorbis audio codec (<B>native</B> library)</LI>
<LI>Voxware audio (using DirectShow DLL)</LI>
<LI>alaw, msgsm, pcm and other simple old audio formats</LI>
<LI>VIVO audio (g723, Vivo Siren)</LI>
<LI>RealAudio: DNET (low bitrate AC3), Cook</LI>
</UL>
@ -300,68 +301,67 @@ video output driver permits it.</P>
<P>This is the default decoder used for files with AC3 audio.</P>
<P>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.</P>
<P>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.</P>
<P>Use the <CODE>-channels</CODE> option to select the number of output channels.
Use <CODE>-channels 2</CODE> for a stereo downmix. For a 4 channel downmix (Left
Front, Right Front, Left Surround and Right Surround outputs), use
<CODE>-channels 4</CODE>. In this case, any center channel will be mixed
equally to the front channels. <CODE>-channels 6</CODE> will output all the AC3
channels as they are encoded - in the order Left, Right, Left Surround, Right
Surround, Center and LFE.</P>
<P>Use the <CODE>-channels</CODE> option to select the number of output
channels. Use <CODE>-channels 2</CODE> for a stereo downmix. For a 4
channel downmix (Left Front, Right Front, Left Surround and Right Surround
outputs), use <CODE>-channels 4</CODE>. In this case, any center channel will
be mixed equally to the front channels. <CODE>-channels 6</CODE> will output
all the AC3 channels as they are encoded - in the order Left, Right, Left
Surround, Right Surround, Center and LFE.</P>
<P>The default number of output channels is 2.</P>
<P>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).</P>
<P>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).</P>
<P><B><A NAME="hardware_ac3">2.2.2.2 Hardware AC3 decoding</A></B></P>
<P>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 <CODE>-ac hwac3</CODE>
option. It is experimental but known to work with C-Media cards and Soundblaster
Live! + ALSA (but not OSS) drivers.</P>
<P>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 <CODE>-ac hwac3</CODE>
option. It is experimental but known to work with C-Media cards and
Soundblaster Live! + ALSA (but not OSS) drivers.</P>
<P><B><A NAME="libmad">2.2.2.3 libmad support</A></B></P>
<P><A HREF="http://mad.sourceforge.net">libmad</A> is a multiplatform MPEG audio
decoding library. It does not handle broken files well, and it sometimes has
problems with seeking.</P>
<P><A HREF="http://mad.sourceforge.net">libmad</A> is a multiplatform MPEG
audio decoding library. It does not handle broken files well, and it
sometimes has problems with seeking.</P>
<P>To enable support, compile with the <CODE>--enable-mad</CODE> configure
option.</P>
option.</P>
<P><B><A NAME="vivo_audio">2.2.2.4 VIVO audio</A></B></P>
<P>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 <B>g.723</B> audio, and VIVO/2.0 files
have <B>Vivo Siren</B> audio. Both are supported. You can grab the g.723/Siren
Win32 DLL from
<A HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/vivog723.acm">here</A>,
then copy it into the <CODE>/usr/lib/win32</CODE> directory.</P>
VIVO/2.0 file. VIVO/1.0 files have <B>g.723</B> audio, and VIVO/2.0 files
have <B>Vivo Siren</B> audio. Both are supported. You can grab the
g.723/Siren Win32 DLL from
<A HREF="http://www.mplayerhq.hu/MPlayer/samples/drivers32/vivog723.acm">here</A>,
then copy it into the <CODE>/usr/lib/win32</CODE> directory.</P>
<P><B><A NAME="realaudio">2.2.2.5 RealAudio</A></B></P>
<B>MPlayer</B> supports decoding all versions of RealAudio:
<B>MPlayer</B> supports decoding nearly all versions of RealAudio:
<UL>
<LI>RealAudio DNET - decoding supported by <B>liba52</B></LI>
<LI>RealAudio Cook - decoding supported by <B>RealPlayer libraries</B></LI>
<LI>RealAudio Sipro - decoding supported by <B>RealPlayer libraries</B></LI>
<LI>RealAudio Sipro - not yet supported</LI>
</UL>
<P>On how to install RealPlayer libraries, see the
<A HREF="formats.html#real">RealMedia file format</A> section.</P>

View File

@ -339,12 +339,11 @@ 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,
Mach64, Permedia3), too! Most
Mach64, Permedia3) 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="video.html#dvb">DVB</A></B> and
<B> <A HREF="video.html#dxr3">DXR3/Hollywood+</A></B>! And what about the
nice big antialiased
<B><A HREF="video.html#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 the onscreen
display (OSD)?</P>
@ -405,7 +404,7 @@ too. So I've decided to write/modify one...</P>
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>
<LI><B>MPlayer 0.90 "?"</B> Jul? ??, 2002<BR>
<LI><B>MPlayer 0.90 "?"</B> Aug? ??, 2002<BR>
</LI>
</UL>
@ -426,7 +425,7 @@ will take some time, but it DOES worth it.</P>
<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 versions are: <B>2.95.3</B>, <B>2.95.4</B> and <B>3.1</B>.
<B>NEVER</B> use 2.96 or 3.0.x!!! They generate faulty code for MPlayer.
<B>NEVER</B> use 2.96 or 3.0.x !!! They generate faulty code for MPlayer.
If you decide to change gcc from 2.96, then don't decide in favor of 3.0.x
just because it's newer! Early releases of 3.0.x were even more buggy than
2.96. So downgrade to 2.95.x (downgrade libstdc++ too, other programs may
@ -464,59 +463,64 @@ will take some time, but it DOES worth it.</P>
<UL>
<LI><B>libavcodec</B>: This codec package is capable of decoding
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1 encoded video streams on
multiple platforms. Details can be found
<A HREF="codecs.html#libavcodec">here</A>. Features:
H263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1 encoded video streams, on
multiple platforms. It is also known to be the fastest for this task.
Details can be found <A HREF="codecs.html#libavcodec">here</A>. Features:<BR>
<UL>
<LI>Decoding of above mentioned codecs on non-x86 machines.</LI>
<LI>Encoding with most of the above mentioned codecs.</LI>
<LI>This is the <B>fastest available</B> codec for DivX/3/4/5 and other
MPEG4 types and therefore highly recommended.</LI>
<LI>gain decoding of videos mentioned above, on non-x86 machines</B></LI>
<LI>encoding with most of the mentioned codecs</LI>
<LI>this codec is the <B>fastest codec available</B> for DivX/3/4/5 and
other MPEG4 types. 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 <B>BEFORE</B> compiling <B>MPlayer</B>, otherwise no Win32
support will be compiled!<BR>
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 various hardware compressors, like tuner cards, digital cameras (example: DV, ATI VCR, MJPEG)</LI>
<LI>needed if you want to play <B>WMV8 movies</B>. Not needed for old
ASF's with MP41 or MP42 video (though VoxWare audio is frequent for these
files - it's done by the Win32 codec), or WMV7.</LI>
</UL>
<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 <B>BEFORE</B> compiling <B>MPlayer</B>, otherwise no Win32
support will be compiled!<BR>
<B>Note</B>: 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 various hardware compressors, like tuner cards, digital cameras (example: DV, ATI VCR, MJPEG)</LI>
<LI>needed if you want to play <B>WMV8 movies</B>. Not needed for old
ASF's with MP41 or MP42 video (though VoxWare audio is frequent for these
files - it's done by the Win32 codec), or WMV7.</LI>
</UL>
</LI>
<LI><B>DivX4/DivX5:</B> information about this codec is available in the
<A HREF="codecs.html#divx">DivX4/DivX5</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><B>DivX4/DivX5</B>: information about this codec is available in the
<A HREF="codecs.html#divx">DivX4/DivX5</A> section. You possibly don't want
this codec as <B>libavcodec</B> (see above) is much faster and has better
quality than this, for both decoding and encoding.<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><B>XviD:</B> Open source encoding alternative to Divx4Linux<BR>
Features:
<UL>
<LI>1 pass or 2 pass encoding with <A HREF="encoding.html">MEncoder</A></LI>
<LI>it's open-source, so not only an x86 version is available.</LI>
<LI>it's about 2 times faster than divx4 when encoding - about the same quality</LI>
</UL>
<LI><B>XviD</B>: Open source encoding alternative to Divx4Linux<BR>
Features:
<UL>
<LI>1 pass or 2 pass encoding with
<A HREF="encoding.html">MEncoder</A></LI>
<LI>it's open-source, so it's multiplatform.</LI>
<LI>it's about 2 times faster than DivX4 when encoding - about the same
quality</LI>
</UL>
</LI>
<LI>The <A HREF="codecs.html#xanim">XAnim codecs</A> are the best (full screen,
hardware YUV zoom) for decoding <B>3ivx</B> and Indeo 3/4/5 movies, and some
old formats. 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>
<LI>The <A HREF="codecs.html#xanim">XAnim codecs</A> are the best (full
screen, hardware YUV zoom) for decoding <B>3ivx</B> and Indeo 3/4/5 movies,
and some old formats. 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>
<LI>For <B>Ogg Vorbis</B> audio decoding you need to install
<CODE>libvorbis</CODE> properly. Use deb/rpm packages if available, or
@ -528,7 +532,6 @@ movies are best played with <B>MPlayer</B>'s own Cinepak decoder!</LI>
files with <B>RealVideo 2.0 and 3.0</B> video, and Sipro/Cook audio. See
<A HREF="formats.html#real">RealMedia file format</A> section for
installation instructions and more information!</LI>
</UL>
<P><B>VIDEO CARDS</B></P>
@ -545,8 +548,8 @@ their memory, with <B>small CPU usage</B> (zooming doesn't increase it!), thus
you get a nice and very fast fullscreen playing.</P>
<UL>
<LI><B>Matrox G200/G400/G450/G550 cards:</B> although a
<A HREF="video.html#vidix">VIDIX driver</A> is provided, it is recommended
<LI><B>Matrox G200/G400/G450/G550 cards</B>: although a
<A HREF="video.html#vidix">Vidix driver</A> is provided, it is recommended
to use the old mga_vid kernel module instead, for it works much better.
Please see the <A HREF="video.html#mga_vid">mga_vid</A> section about its
installation and usage. It is important to do these steps <I>before</I>
@ -555,7 +558,7 @@ you get a nice and very fast fullscreen playing.</P>
<U><B>If you are non-Linux user</B></U>, your only possibility is the Vidix
driver: read <A HREF="video.html#vidix">VIDIX</A> documentation!</LI>
<LI><B>3Dfx Voodoo3/Banshee cards:</B> please see the
<LI><B>3Dfx Voodoo3/Banshee cards</B>: please see the
<A HREF="video.html#tdfxfb">tdfxfb</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
@ -563,41 +566,42 @@ you get a nice and very fast fullscreen playing.</P>
least 4.2.0, as 3dfx Xv driver was broken in 4.1.0, and earlier
releases!</LI>
<LI><B>ATI cards:</B> <A HREF="video.html#vidix">VIDIX driver</A> is
<LI><B>ATI cards</B>: <A HREF="video.html#vidix">Vidix driver</A> is
provided for the following cards:
<B>Radeon</B>, <B>Rage128</B>, <B>Mach64</B> (Rage XL/Mobility, Xpert98).
Also see the <A HREF="video.html#tv-out_ati">ATI cards
section</A> of the TV-out documentation, to know if you card's TV-out is
supported under Linux/MPlayer.</LI>
<LI><B>S3 cards:</B> the Savage and Virge/DX 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#xv_s3">S3 Xv
section</A> for details. Older, Trio cards have no, or slow hardware
support.</LI>
<LI><B>S3 cards</B>: the Savage and Virge/DX 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#xv_s3">S3 Xv
section</A> for details. Older, Trio 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#xv_nvidia">nVidia Xv driver</A> section.</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#xv_nvidia">nVidia Xv driver</A> section.</LI>
<LI><B>3DLabs GLINT R3 and Permedia3</B>: a VIDIX driver is provided
(pm3_vid). Please see the <A HREF="video.html#vidix">VIDIX
instructions</A>.</LI>
<LI><B>other cards:</B> none of the above?
<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#xv">Xv section</A> for
details.</LI>
<LI>If it doesn't, then your card's video features aren't supported under your OS:(<BR>
If it does hardware scaling under Windows, it doesn't mean it will do the same
under Linux or other OS, it depends on the drivers! Most manufacturers don't
make Linux drivers nor release chip specs - so you're unlucky if using their cards.
See next section:
<LI>If it doesn't, then your card's video features aren't supported under
your OS :(<BR>
If it does hardware scaling under Windows, it doesn't mean it will do the
same under Linux or other OS, it depends on the drivers! Most
manufacturers don't make Linux drivers nor release chip specs - so you're
unlucky using their cards. See the next section:
</LI>
</UL>
</LI>
@ -607,14 +611,13 @@ details in <A HREF="video.html#xv_nvidia">nVidia Xv driver</A> section.</LI>
<P>
<B>Non-YUV cards</B></P>
<P>
Fullscreen playing can be achieved by either zooming
<B>by software</B> (use the option -zoom, but i warn you: this is slooow!),
or changing to a smaller video mode, for
example to 352x288. If you don't have YUV acceleration, this latter method is
the recommended one. Throughout <B>MPlayer</B>, <U>this behavior can
be switched on by using the <CODE>-vm</CODE> option</U> and with
the following drivers:
<P>Fullscreen playing can be achieved by either zooming <B>by software</B> (use
the option <CODE>-zoom</CODE> or <A HREF="#2.6.11"><CODE>-vop
scale</CODE></A>, but I warn you: this is SLOW!), or changing to a smaller
video mode, for example to 352x288. If you don't have YUV acceleration, this
latter method is the recommended one. Throughout <B>MPlayer</B>, <U>this
behavior can be switched on by using the <CODE>-vm</CODE> option</U> and with
the following drivers:
</P>
<UL>
@ -629,35 +632,64 @@ the following drivers:
<A HREF="video.html#aalib">aalib</A>.</LI>
</UL>
<P>Some cards:</P>
<UL>
<LI><B>Cirrus Logic cards</B>:
<UL>
<LI>GD 7548: present on-board and tested in Compaq Armada 41xx notebook
series.
<UL>
<LI>XFree86 3: works in 8/16bpp modes. However, the driver is
dramatically slow and buggy in 800x600@16bpp
<B>Recommended: 640x480@16bpp</B></LI>
<LI>XFree86 4: the Xserver freezes soon after start unless
acceleration is disabled, but then the whole thing gets
slower than XFree86 3. No XVideo.</LI>
<LI>FBdev: the card is only VBE 1.2 capable, so VESA framebuffer
can't be used. When tried to workaround with UniVBE, the
framebuffer was unusably full of debris.</LI>
<LI>VESA: the card is only VBE 1.2 capable, so VESA output can't be
used. Can't be workarounded with UniVBE.</LI>
<LI>SVGAlib: detects an older Cirrus chip. Usable but slow with
<CODE>-bpp 8</CODE>.</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
<P><B>SOUND CARDS</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#software_ac3">Software AC3 decoding</A> section.
For hardware AC3 passthrough you MUST use ALSA 0.9 oss emulation!</LI>
<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#software_ac3">Software AC3 decoding</A> section.
For hardware AC3 passthrough you MUST use ALSA 0.9 oss emulation!</LI>
<LI><B>C-Media with SP/DIF out:</B> hardware AC3 passthrough is possible
<LI><B>C-Media with SP/DIF out</B>: hardware AC3 passthrough is possible
with these cards, see
<A HREF="codecs.html#hardware_ac3">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">sound card
section</A>!</U>
section</A>!</U></LI>
</UL>
<P><B>FEATURES</B></P>
<UL>
<LI>Decide if you need GUI. If you do, see the <A HREF="#gui">GUI section</A>
before compiling.</LI>
before compiling.</LI>
<LI>If you want to install <B>MEncoder</B> (our great all-purpose encoder),
see the <A HREF="encoding.html">MEncoder section</A>.</LI>
see the <A HREF="encoding.html">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="#tv">TV input</A> section.</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="#tv">TV input</A>
section.</LI>
<LI>There are three timing methods in <B>MPlayer</B>.
<UL>
@ -673,7 +705,7 @@ encode movies with <B>MPlayer</B>, read the <A HREF="#tv">TV input</A> section.<
RTC frequency for normal users through the <CODE>/proc</CODE> filesystem.
Use this command to enable RTC for normal users:
<P>
<CODE>echo 1024 > /proc/sys/dev/rtc/max-user-freq</CODE>
<CODE>echo 1024 > /proc/sys/dev/rtc/max-user-freq</CODE>
</P>
If you do not have such a new kernel, you can also change one line in
<CODE>drivers/char/rtc.c</CODE> and recompile your kernel. Find the
@ -703,9 +735,8 @@ encode movies with <B>MPlayer</B>, read the <A HREF="#tv">TV input</A> section.<
</LI>
</UL>
Note: <B>NEVER install a setuid root MPlayer binary on a
multiuser system!</B> It's a clear way for everyone to gain root.
Note: <B>NEVER install a setuid root MPlayer binary on a multiuser system!</B>
It's a clear way for everyone to gain root.
<P>Then build <B>MPlayer</B>:</P>
@ -716,29 +747,30 @@ multiuser system!</B> It's a clear way for everyone to gain root.
</PRE>
<P>At this point, <B>MPlayer</B> is ready to use. The directory
<CODE>$PREFIX/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!<BR>
Check if you have codecs.conf in your home directory (~/.mplayer/codecs.conf)
left from old MPlayer versions, and remove it!</P>
<CODE>$PREFIX/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!<BR> Check if you have codecs.conf in your home directory
(~/.mplayer/codecs.conf) left from old MPlayer versions, and remove it!</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#debian">here</A>.</P>
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#debian">here</A>.</P>
<P><B>ALWAYS browse the output of <CODE>./configure</CODE></B>, and the
<CODE>configure.log</CODE> file, they contain information about what will be
built, and what will not. You may also want to view <CODE>config.h</CODE> and
<CODE>config.mak</CODE> files.<BR>
If you have some libraries installed, but not detected by <CODE>./configure</CODE>,
then check if you also have the proper header files (usually the -dev packages)
and their version matches. The <CODE>configure.log</CODE> file usually tells
you what is missing.</P>
<CODE>configure.log</CODE> file, they contain information about what will be
built, and what will not. You may also want to view <CODE>config.h</CODE> and
<CODE>config.mak</CODE> files.<BR>
If you have some libraries installed, but not detected by
<CODE>./configure</CODE>, then check if you also have the proper header files
(usually the -dev packages) and their version matches. The
<CODE>configure.log</CODE> file usually tells you what is missing.</P>
<P>Though not mandatory, the fonts should be installed in order to gain
OSD, and subtitle functionality. Download <CODE>mp-arial-iso-8859-*.zip</CODE>
and/or optional (if exists) language updates. It's VERY RECOMMENDED to check the
<A HREF="#subtitles_osd">subtitle and OSD section</A> for details.</P>
<P>Though not mandatory, the fonts should be installed in order to gain OSD,
and subtitle functionality. Download <CODE>mp-arial-iso-8859-*.zip</CODE>
and/or optional (if exists) language updates. It's VERY RECOMMENDED to check
section <A HREF="#subtitles_osd">1.5</A> for details.</P>
<PRE>
mkdir ~/.mplayer/font
@ -751,86 +783,94 @@ and/or optional (if exists) language updates. It's VERY RECOMMENDED to check the
<P><B><A NAME="gui">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
<CODE>./configure</CODE>. Then, to turn on GUI mode, you either</P>
<UL>
<LI>use the <CODE>-gui</CODE> option</LI>
<LI>specify <CODE>gui=yes</CODE> in your config file</LI>
<LI><CODE>ln -s $PREFIX/bin/mplayer $PREFIX/bin/gmplayer</CODE> ,
and call <CODE>gmplayer</CODE> instead.
</UL>
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
<CODE>./configure</CODE>. Then, to turn on GUI mode, you either</P>
<UL>
<LI>use the <CODE>-gui</CODE> option</LI>
<LI>specify <CODE>gui=yes</CODE> in your config file</LI>
<LI><CODE>ln -s $PREFIX/bin/mplayer $PREFIX/bin/gmplayer</CODE> ,
and call <CODE>gmplayer</CODE> instead.</LI>
</UL>
<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>
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>$PREFIX/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
<CODE>-skin newskin</CODE> option, or the <CODE>skin=newskin</CODE> config file
directive to use the skin in <CODE>*/Skin/newskin</CODE> directory.</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>$PREFIX/share/mplayer/Skin</CODE>), or to
<CODE>$HOME/.mplayer/Skin</CODE>. <B>MPlayer</B> by default looks in these
directories for a directory named <I>default</I>, but you can use the
<CODE>-skin newskin</CODE> option, or the <CODE>skin=newskin</CODE> config
file directive to use the skin in <CODE>*/Skin/newskin</CODE> directory.</P>
<P><B><A NAME="subtitles_osd">1.5 Subtitles and OSD</A></B></P>
<P>
<B>MPlayer</B> can display subtitles along with movie files. Currently the following
formats are supported:</P>
<B>MPlayer</B> can display subtitles along with movie files. Currently the following
formats are supported:</P>
<UL>
<LI>VobSub</LI>
<LI>Microdvd</LI>
<LI>SubRip</LI>
<LI>SubViewer</LI>
<LI>Sami</LI>
<LI>VPlayer</LI>
<LI>RT</LI>
<LI>SSA</LI>
<LI>MPsub</LI>
<LI>AQTitle</LI>
<LI>VobSub</LI>
<LI>Microdvd</LI>
<LI>SubRip</LI>
<LI>SubViewer</LI>
<LI>Sami</LI>
<LI>VPlayer</LI>
<LI>RT</LI>
<LI>SSA</LI>
<LI>MPsub</LI>
<LI>AQTitle</LI>
</UL>
The command line options differ slightly for the different formats:
<P>
<B>VobSub subtitles</B><BR>
VobSub subtitles consist of a big (some megabytes) .SUB file, and optional
.IDX and/or .IFO files.<BR>
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
&lt;id&gt;</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>
<B>VobSub subtitles</B><BR>
VobSub subtitles consist of a big (some megabytes) .SUB file, and optional
.IDX and/or .IFO files.<BR>
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
&lt;id&gt;</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>
<B>Other subtitles</B><BR>
The other formats consist of a single text file containing timing, placement
and text information.<BR>
Usage: if you have a file like <CODE>sample.txt</CODE>, you have to pass
the option <CODE>-sub sample.txt</CODE> (optionally with pathname, of course).
<B>Other subtitles</B><BR>
The other formats consist of a single text file containing timing, placement
and text information.<BR>
Usage: if you have a file like <CODE>sample.txt</CODE>, you have to pass the
option <CODE>-sub sample.txt</CODE> (optionally with pathname, of course).
</P>
<P>
<B>Adjusting subtitle timing and placement</B><BR>
<CODE>-subdelay &lt;sec&gt;</CODE>: Delays subtitles by &lt;sec&gt; seconds. Can be negative.<BR>
<CODE>-subfps &lt;rate&gt;</CODE>: Specify frame/sec rate of subtitle file (float number)<BR>
<CODE>-subpos &lt;0 - 100&gt;</CODE>: Specify the position of subtitles.<BR>
<B>Adjusting subtitle timing and placement</B><BR>
<CODE>-subdelay &lt;sec&gt;</CODE>: Delays subtitles by &lt;sec&gt; seconds.
Can be negative.<BR>
<CODE>-subfps &lt;rate&gt;</CODE>: Specify frame/sec rate of subtitle file
(float number)<BR>
<CODE>-subpos &lt;0 - 100&gt;</CODE>: Specify the position of subtitles.<BR>
</P>
<P>
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.<BR>
Please note that the MicroDVD subtitle format uses absolute frame numbers for its
timing, and therefore the <CODE>-subfps</CODE> option cannot be used with this format. As
<B>MPlayer</B> 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 <CODE>contrib</CODE> directory of
the MPlayer FTP site to do this conversion for you.</P>
<P>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.<BR> Please note that the MicroDVD subtitle
format uses absolute frame numbers for its timing, and therefore the
<CODE>-subfps</CODE> option cannot be used with this format. As
<B>MPlayer</B> 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
<CODE>contrib</CODE> directory of the MPlayer FTP site to do this conversion
for you.</P>
<P>About DVD subtitles, read the <A HREF="cd-dvd.html#dvd">DVD section</A>.</P>
<P><B>MPlayer</B> introduces a new subtitle format called <B>MPsub</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><B>MPlayer</B> introduces a new subtitle format called <B>MPsub</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="tech/mpsub.sub">DOCS/tech/mpsub.sub</A>):
</P>
<P><CODE><I>
@ -847,64 +887,68 @@ in a galaxy far away...<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 <CODE>mplayer dummy.avi -sub source.ssa
-dumpmpsub</CODE> . 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/subtract seconds to/from the
subtitle.</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 <CODE>mplayer dummy.avi -sub source.ssa -dumpmpsub</CODE>.
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/subtract 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>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:</P>
There are many ways to get it:</P>
<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,
but there are some other (including Korean, Russian, 8859-8 etc) fonts
at contrib/font section of FTP, made by users.<BR>
<BR>
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 <CODE>-utf8</CODE>
option or just name the subtitles file &lt;video_name&gt;.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 (Red Hat)
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>
<LI>download ready-to-use font packages from <B>MPlayer</B> site.
Note: currently available fonts are limited for iso 8859-1/2 support,
but there are some other (including Korean, Russian, 8859-8 etc) fonts
at contrib/font section of FTP, made by users.
<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>
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 &lt;video_name&gt;.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 (Red Hat) 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>
<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>
<LI>use the font generator GIMP plugin at TOOLS/subfont-GIMP
(note: you must have HSI RAW plugin too, see URL below)</LI>
<LI>use the font generator GIMP plugin at TOOLS/subfont-GIMP
(note: you must have HSI RAW plugin too, see URL below)</LI>
</UL>
<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 the "o" key).</P>
<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 the "o" key).</P>
<P>OSD has 3 states: (switch with 'o')</P>
<UL>
<LI>timer + volume bar + seek bar + subtitles (default)
<LI>volume bar + seek bar + subtitles
<LI>subtitles only
<LI>timer + volume bar + seek bar + subtitles (default)</LI>
<LI>volume bar + seek bar + subtitles</LI>
<LI>subtitles only</LI>
</UL>
<P>You can change default behaviour by setting <CODE>osdlevel=</CODE> variable in config file.</P>
<P>You can change default behaviour by setting <CODE>osdlevel=</CODE> variable
in config file.</P>
<P><B><A NAME="features">2. Features</A></B></P>
@ -1053,11 +1097,11 @@ Input from standard V4L<BR>
</P>
<P>
<B>Note:</B><BR>
If you have a TV card with an external audio device and get only a black
screen, although input works with xawtv or similar, then try to use the
<CODE>-noaudio</CODE> option. For the example above this would be:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mplayer -tv on:noaudio:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv</CODE>
<B>Note:</B><BR>
If you have a TV card with an external audio device and get only a black
screen, although input works with xawtv or similar, then try to use the
<CODE>-noaudio</CODE> option. For the example above this would be:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mplayer -tv on:noaudio:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv</CODE>
</P>
@ -1279,7 +1323,7 @@ screen, although input works with xawtv or similar, then try to use the
<P><B><U>Description</U></B>:</P>
<P>Draws a rectangle of the requested width and height at the designated
<P>Draws a white rectangle of the requested width and height at the designated
coordinates over the image. Useful to get visual feedback for the parameters
of <CODE>-vop crop</CODE> before applying them.</P>
@ -1590,7 +1634,7 @@ end
</PRE>
<P>If you don't like the standard location for the lirc-config file (~/.lircrc)
use the -lircconf &lt;filename&gt; switch to specify another file.</P>
use the -lircconf &lt;filename&gt; switch to specify another file.</P>
<P><B><A NAME="slave">3.2.4 Slave mode</A></B></P>
@ -1604,17 +1648,18 @@ use the -lircconf &lt;filename&gt; switch to specify another file.</P>
<P><B>MPlayer</B> can play files from network, using the HTTP or MMS protocol.</P>
<P>Playing goes by simply using adding the URL to the command line. <B>MPlayer</B>
also honors the http_proxy environment variable, and uses proxy if available.
Proxy usage can also be forced:</P>
<P>Playing goes by simply using adding the URL to the command line.
<B>MPlayer</B> also honors 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>
used to play from FTP:</P>
<P><CODE>&nbsp;&nbsp;wget ftp://micorsops.com/something.avi -O - | mplayer -</CODE></P>
<P>Note: It is recommended to enable the cache when playing from the network:</P>
<P>Note: it's also recommended to enable CACHE when playback from network:</P>
<P><CODE>&nbsp;&nbsp;wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192 -</CODE></P>
@ -1631,7 +1676,7 @@ used to play from FTP:</P>
<P><B><A NAME="debian">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>
and cd into programs directory:</P>
<PRE>
cd main
@ -1639,7 +1684,7 @@ and cd into programs directory:</P>
</PRE>
<P>(... mplayer detects hardware/software, builds itself and.. )
dpkg-deb: building package `mplayer' in `../mplayer_0.90-1_i386.deb'.</P>
dpkg-deb: building package `mplayer' in `../mplayer_0.90-1_i386.deb'.</P>
<P>And now just become root, and:</P>
@ -1662,15 +1707,15 @@ dpkg-deb: building package `mplayer' in `../mplayer_0.90-1_i386.deb'.</P>
<P><B><A NAME="freebsd">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>
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>
"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>
symbolic link: <CODE>ln -s /dev/(your_cdrom_device) /dev/cdrom</CODE></P>
<P>There's no DVD support for FreeBSD yet.</P>
@ -1679,22 +1724,22 @@ symbolic link: <CODE>ln -s /dev/(your_cdrom_device) /dev/cdrom</CODE></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>
option to use the win32 codecs on the x86 platform, or can use
MMX/MMX2/3DNow/etc instructions for MP3/DivX/DVD/whatever. On Colaris 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>
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>
Solaris make will not work. Typical error you get when building with Solaris'
make instead of GNU make:</P>
<PRE>
% /usr/ccs/bin/make
@ -1702,21 +1747,20 @@ make instead of GNU make:</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>
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>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>The configure script tries to find out, which assembler program is used by
your "gcc" command (in case the autodetection fails, use the
<CODE>--as=/whereever/you/have/installed/gnu-as</CODE> 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>
without GNU assembler:</P>
<PRE>
% configure
@ -1728,7 +1772,7 @@ without GNU assembler:</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>
not use GNU as:</P>
<PRE>
% gmake
@ -1742,22 +1786,23 @@ not use GNU as:</P>
</PRE>
<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>
<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>
capacity >4GB:</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. CD-ROM 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>)
<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. CD-ROM
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>
<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>)
</LI>
</UL>
<P>On Solaris with an UltraSPARC CPU, you can get some extra speed by
@ -1782,7 +1827,7 @@ all data is accessed modulo 4GB
<P><B><A NAME="sgi">6.5 Silicon Graphics / IRIX</A></B></P>
<P>Reported working. You'll probably have to use the <I>SGI</I> ao driver.
Anyone has closer info?</P>
Anyone has closer info?</P>
<P><B><A NAME="qnx">6.6 QNX</A></B></P>
@ -1798,31 +1843,31 @@ Anyone has closer info?</P>
<P><B><A NAME="openbsd">6.7 OpenBSD</A></B></P>
<P>To build the package you will need GNU make (gmake,
/usr/ports/devel/gmake), native BSD make will not work, and a recent
binutils (including objcopy).</P>
/usr/ports/devel/gmake), native BSD make will not work, and a recent
binutils (including objcopy).</P>
<P>Due to limitations in different versions of gas (relocation vs mmx),
you'll need to compile in two steps: First make sure that the
non-native as is first in PATH and do a '<CODE>gmake -k</CODE>', then make sure
that the native version is used and do '<CODE>gmake</CODE>'.</P>
<P>Due to limitations in different versions of gas (relocation vs mmx), you'll
need to compile in two steps: First make sure that the non-native as is first
in PATH and do a '<CODE>gmake -k</CODE>', then make sure that the native
version is used and do '<CODE>gmake</CODE>'.</P>
<P>To use Win32 DLLs with <B>MPlayer</B> you will need to re-compile the
kernel with "<CODE>option USER_LDT</CODE>".</P>
kernel with "<CODE>option USER_LDT</CODE>".</P>
<P>If <B>MPlayer</B> complains about not finding '/dev/cdrom' or
'/dev/dvd' make a symbolic link, e.g. <CODE>ln -s
/dev/rcd0c /dev/dvd</CODE></P>
'/dev/dvd' make a symbolic link, e.g. <CODE>ln -s
/dev/rcd0c /dev/dvd</CODE></P>
<P>The not so hardcore hackers amongst us might want to use the ports
version (/usr/ports/x11/mplayer).</P>
version (/usr/ports/x11/mplayer).</P>
<P><A NAME="cygwin"></A><B>6.8 Cygwin</B><BR>
</P>
<P><A NAME="cygwin"></A><B>6.8. Cygwin</B><BR></P>
<P>You will have to go to the <B>MPlayer</B> directory, and copy or symlink
<CODE>etc/cygwin_inttypes.h</CODE> to <CODE>/usr/include/inttypes.h</CODE> to
make <B>MPlayer</B> compile. Otherwise it will complain about missing
<CODE>intypes.h</CODE>.</P>
<CODE>etc/cygwin_inttypes.h</CODE> to <CODE>/usr/include/inttypes.h</CODE> to
make <B>MPlayer</B> compile. Otherwise it will complain about missing
<CODE>intypes.h</CODE>.</P>
<P><B><A NAME="authors">Appendix A - Authors</A></B></P>
@ -2528,7 +2573,7 @@ Send Matrox related questions here
</LI>
<LI>MPlayer &amp; 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. (NOT DXR3!)</P>
<P>Things related to the hardware decoder card called DVB. (NOT dxr3!)</P>
</LI>
<LI>MPlayer CVS-log: <BR>
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog">http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog</A>

View File

@ -15,11 +15,12 @@
<P><B><A NAME="overview">2.4.1 Overview</A></B></P>
<P><B>MEncoder</B> (<B>MPlayer</B>'s Movie Encoder) is a simple movie encoder,
designed to encode MPlayer-playable movies
(<B>AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET</B>) to other MPlayer-playable
formats (see below). It can encode with various codecs, like <B>DivX4</B> (1 or
2 passes), libavcodec, <B>PCM</B>/<B>MP3</B>/<B>VBRMP3</B> audio. Also has
powerful plugin system for video manipulation.</P>
designed to encode MPlayer-playable movies
(<B>AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET</B>) to other
MPlayer-playable formats (see below). It can encode with various codecs, like
<B>DivX4</B> (1 or 2 passes), libavcodec,
<B>PCM</B>/<B>MP3</B>/<B>VBR MP3</B> audio. Also has powerful plugin system
for video manipulation.</P>
<P><B><A NAME="compilation">2.4.2 Compilation</A></B></P>
@ -52,7 +53,7 @@ powerful plugin system for video manipulation.</P>
</UL>
<P>You are ready. As you probably know, other encoding tools need the
<I>avifile</I> library installed. <B>MEncoder</B> doesn't need it at all.</P>
<I>avifile</I> library installed. <B>MEncoder</B> doesn't need it at all.</P>
<P><B><A NAME="features">2.4.3 MEncoder features</A></B></P>
@ -71,7 +72,7 @@ powerful plugin system for video manipulation.</P>
<LI>stream copying</LI>
<LI>input A/V synchronizing (PTS-based, can be disabled with -mc 0 option)</LI>
<LI>FPS correction with <CODE>-ofps</CODE> option (useful when encoding
29.97fps VOB to 24fps AVI)</LI>
29.97fps VOB to 24fps AVI)</LI>
<LI>using our very powerful plugin system (crop, expand, flip, postprocess,
rotate, scale, rgb/yuv conversion)</LI>
<LI>can encode DVD/VOBsub <B>AND</B> text subtitles into the output file</LI>
@ -81,26 +82,30 @@ powerful plugin system for video manipulation.</P>
<B>Planned features:</B>
<UL>
<LI>even wider variety of available en/decoding formats/codecs
(creating VOB files with DivX4/Indeo5/VIVO streams :)</LI>
(creating VOB files with DivX4/Indeo5/VIVO streams :)</LI>
<LI>audio encoding from v4l (DONE for FreeBSD ?)</LI>
</UL>
<P><B><A NAME="2pass">2.4.3.1 Encoding 2 or 3-pass DivX4</A></B></P>
<P><U><B>2-pass encoding:</B></U> the name comes from the fact that this method encodes the file <I>twice</I>.
The first encoding (dubbed <I>pass</I>) 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.</P>
<P><U><B>2-pass encoding:</B></U> the name comes from the fact that this method
encodes the file <I>twice</I>. The first encoding (dubbed <I>pass</I>)
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.</P>
<P>This example shows how to encode a DVD to a 2-pass DivX4 AVI. Just two
commands are needed:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;rm frameno.avi</CODE> - remove this file, which
can come from a previous 3-pass encoding (it interferes with current one)<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -lavcopts vcodec=mpeg4:more_options
-o movie.avi -pass 1<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -lavcopts vcodec=mpeg4:more_options -o movie.avi -pass 2</CODE></P>
commands are needed:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;rm frameno.avi</CODE> - remove this file, which
can come from a previous 3-pass encoding (it interferes with current
one)<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -lavcopts
-vcodec=mpeg4:more_options -o movie.avi -pass 1<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -lavcopts vcodec=mpeg4:more_options
-o movie.avi -pass 2</CODE></P>
<P><U><B>3-pass encoding:</B></U> this is an extension of 2-pass encoding,
where the audio encoding takes place in a separate pass. This method enables
@ -143,29 +148,33 @@ commands are needed:<BR>
<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;rm frameno.avi</CODE> - remove this file,
which can come from a previous 3-pass encoding (it interferes with current
one)<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -ovc frameno
-o frameno.avi</CODE><BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2
-lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 1<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2
-lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 2</CODE>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -ovc frameno
-o frameno.avi<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2
-lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 1<BR>
&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2
-lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 2</CODE>
</P>
<P><U><B>2 or 3-pass encoding using internal libavcodec controller:</B></U>
Optionally you can use libavcodec's internal 2 or 3-pass mode, it may gives you
better final rate accuracy than using the external, DivX4-inspired 2-pass rate
controler with libavcodec.</P>
Optionally you can use libavcodec's internal 2 or 3-pass mode, it may give
you better final rate accuracy than using the external, DivX4-inspired 2-pass
rate controler with libavcodec.</P>
<UL>
<LI><B>2-pass encoding:</B><BR>
<CODE>rm -f lavc_stats.txt<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 (audio-options) -o movie.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 (audio-options) -o movie.avi</CODE></LI>
<LI><B>3-pass encoding:</B><BR>
<CODE>rm -f frameno.avi lavc_stats.txt<BR>
mencoder -dvd 2 -ovc frameno (audio-options) -o frameno.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi</CODE></LI>
<LI><B>2-pass encoding:</B><BR>
<CODE>rm -f lavc_stats.txt<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 (audio-options) -o
movie.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 (audio-options) -o
movie.avi</CODE></LI>
<LI><B>3-pass encoding:</B><BR>
<CODE>rm -f frameno.avi lavc_stats.txt<BR>
mencoder -dvd 2 -ovc frameno (audio-options) -o frameno.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o
movie.avi<BR>
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o
movie.avi</CODE></LI>
</UL>
<P><B><A NAME="rescaling">2.4.3.2 Rescaling movies</A></B></P>
@ -185,7 +194,9 @@ mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi<
fast bilinear.</P>
<P>Usage:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder sample-svcd.mpg -lavcopts vcodec=mpeg4:more_options -vop scale=640:480 -sws 2 -o output.avi</CODE></P>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder sample-svcd.mpg -lavcopts
vcodec=mpeg4:more_options -vop scale=640:480 -sws 2 -o
output.avi</CODE></P>
<P><B><A NAME="copying">2.4.3.3 Stream copying</A></B></P>
@ -194,26 +205,28 @@ mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi<
<B>copy</B> them. This section is about <B>copying</B>.</P>
<UL>
<LI><B>Video stream</B> (option <CODE>-ovc copy</CODE>): nice stuff can be done :)<BR>
Like, putting (not converting!) FLI or VIVO or MPEG1 video into an AVI file!
Of course only <B>MPlayer</B> can play such files :) And it probably has no
real life value at all. Rationally: video stream copying can be useful for
example when only the audio stream has to be encoded (like, uncompressed PCM
to MP3).</LI>
<LI><B>Video stream</B> (option <CODE>-ovc copy</CODE>): nice stuff can be
done :)<BR>
Like, putting (not converting!) FLI or VIVO or MPEG1 video into
an AVI file! Of course only <B>MPlayer</B> can play such files :) And it
probably has no real life value at all. Rationally: video stream copying
can be useful for example when only the audio stream has to be encoded
(like, uncompressed PCM to MP3).</LI>
<LI><B>Audio stream</B> (option <CODE>-oac copy</CODE>): straightforward.
It is possible to take an external audio file (MP3, AC3, Vorbis) and mux it
into the output stream. Use the <CODE>-audiofile &lt;filename&gt;</CODE>
option for this.</LI>
It is possible to take an external audio file (MP3, Vorbis) and mux it
into the output stream. Use the <CODE>-audiofile &lt;filename&gt;</CODE>
option for this.</LI>
</UL>
<P><B><A NAME="fixing">2.4.3.4 Fixing AVIs with broken index or interleaving</A></B></P>
<P>Easiest thing. We simply copy the video and audio streams, and
<B>MEncoder</B> 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 <CODE>-ni</CODE> option won't be needed for them anymore.</P>
<B>MEncoder</B> 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 <CODE>-ni</CODE> option won't be needed for them
anymore.</P>
<P>Command: <CODE>mencoder -idx input.avi -ovc copy -oac copy -o output.avi</CODE></P>
@ -221,8 +234,8 @@ thus the <CODE>-ni</CODE> option won't be needed for them anymore.</P>
<P><B><A NAME="libavcodec">2.4.3.5 Encoding with the libavcodec codec family</A></B></P>
<P><A HREF="codecs.html#libavcodec">libavcodec</A> 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:</P>
lot of interesting video and audio formats (currently its audio codecs are
unsupported). You can encode to the following codecs:</P>
<UL>
<LI>mjpeg - Motion JPEG</LI>
@ -239,7 +252,8 @@ unsupported). You can encode to the following codecs:</P>
<CODE>vcodec</CODE> config, like: <CODE>-lavcopts vcodec=msmpeg4</CODE></P>
<P>An example, with MJPEG compression:<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -o title2.avi -ovc lavc -lavcopts vcodec=mjpeg</CODE></P>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -dvd 2 -o title2.avi -ovc lavc
-lavcopts vcodec=mjpeg</CODE></P>
<P><B><A NAME="image_files">2.4.3.6 Encoding from multiple input image files (JPEGs or PNGs)</A></B></P>
@ -288,38 +302,42 @@ unsupported). You can encode to the following codecs:</P>
<P><B><A NAME="vobsub">2.4.3.7 Extracting DVD subtitles to Vobsub file</A></B></P>
<P><B>MEncoder</B> is capable of extracting subtitles from a DVD into
Vobsub fomat files. They consist of a pair of files ending in <CODE>.idx</CODE>
and <CODE>.sub</CODE> and are usually packaged in a single <CODE>.rar</CODE>
archive. <B>MPlayer</B> can play these with the <CODE>-vobsub</CODE> and
<CODE>-vobsubid</CODE> options.</P>
Vobsub fomat files. They consist of a pair of files ending in
<CODE>.idx</CODE> and <CODE>.sub</CODE> and are usually packaged in a single
<CODE>.rar</CODE> archive. <B>MPlayer</B> can play these with the
<CODE>-vobsub</CODE> and <CODE>-vobsubid</CODE> options.</P>
<P>You specify the basename (i.e without the <CODE>.idx</CODE> or
<CODE>.sub</CODE> extension) of the output files with <CODE>-vobsubout</CODE>
and the index for this subtitle in the resulting files with
<CODE>-vobsuboutindex</CODE>.</P>
<CODE>.sub</CODE> extension) of the output files with <CODE>-vobsubout</CODE>
and the index for this subtitle in the resulting files with
<CODE>-vobsuboutindex</CODE>.</P>
<P>If the input is not from a DVD you should use <CODE>-ifo</CODE> to
indicate the <CODE>.ifo</CODE> file needed to construct the resulting
<CODE>.idx</CODE> file.</P>
indicate the <CODE>.ifo</CODE> file needed to construct the resulting
<CODE>.idx</CODE> file.</P>
<P>If the input is not from a DVD and you do not have the <CODE>.ifo</CODE> file
you will need to use the <CODE>-vobsubid</CODE> option to let it know what
language id to put in the <CODE>.idx</CODE> file.</P>
<P>If the input is not from a DVD and you do not have the <CODE>.ifo</CODE>
file you will need to use the <CODE>-vobsubid</CODE> option to let it know
what language id to put in the <CODE>.idx</CODE> file.</P>
<P>Each run will append the running subtitle if the <CODE>.idx</CODE> and
<CODE>.sub</CODE> files already exist. So you should remove any before starting.</P>
<CODE>.sub</CODE> files already exist. So you should remove any before
starting.</P>
<P><B>Examples</B></P>
<P><I>Copying two subtitles from a DVD while doing 3-pass encoding</I><BR>
&nbsp;&nbsp;<CODE>rm subtitles.idx subtitles.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -vobsubout subtitles -vobsuboutindex 0 -sid 2 -o frameno.avi -ovc frameno</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 1</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 2 -vobsubout subtitles -vobsuboutindex 1 -sid 5</CODE></P>
&nbsp;&nbsp;<CODE>rm subtitles.idx subtitles.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -vobsubout subtitles -vobsuboutindex 0
-sid 2 -o frameno.avi -ovc frameno</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 1</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 2 -vobsubout
subtitles -vobsuboutindex 1 -sid 5</CODE></P>
<P><I>Copying a french subtitle from an MPEG file</I><BR>
&nbsp;&nbsp;<CODE>rm subtitles.idx subtitles.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles -vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P>
&nbsp;&nbsp;<CODE>rm subtitles.idx subtitles.sub</CODE><BR>
&nbsp;&nbsp;<CODE>mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles
-vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P>
<P><B><A NAME="syntax">2.4.4 Syntax</A></B></P>
@ -468,8 +486,7 @@ language id to put in the <CODE>.idx</CODE> file.</P>
<P>Encoding from tuner (for tuner options <A HREF="documentation.html#tv">see the TV input section!</A>):<BR>
<CODE>&nbsp;&nbsp;&nbsp;&nbsp;mencoder -tv on:driver=v4l:width=640:height=480 &lt;options&gt;</CODE></P>
<P>For all available options, <B>check the MEncoder man page!</B>
<P>
<P>For all available options, <B>check the MEncoder man page!</B></P>
</BODY>
</HTML>

View File

@ -13,21 +13,22 @@
<P><B><A NAME="formats">2.1 Supported formats</A></B></P>
<P>It is important to clarify a common mistake. When people see a file with a
<B>.AVI</B> 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
<B>can</B> contain MPEG1 video.</P>
<B>.AVI</B> 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 <B>can</B> contain MPEG1 video.</P>
<P>You see, a <B>codec</B> is not the same as a <B>file format</B>.<BR>
Examples of video <B>codecs</B> are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.<BR>
Examples of file <B>formats</B> are: MPG, AVI, ASF.<BR>
Examples of video <B>codecs</B> are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.<BR>
Examples of file <B>formats</B> are: MPG, AVI, ASF.<BR>
</P>
<P>In theory, you can put an OpenDivX video and MP3 audio
into an <B>MPG</B> format file. However, most players will not play it, since
they expect MPEG1 video and MP2 audio (unlike <B>AVI</B>, <B>MPG</B> does not have the
necessary fields to describe its video and audio streams).
Or you might put MPEG1 video into an AVI file. <A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A>
and <A HREF="encoding.html">MEncoder</A> can create these files.</P>
<P>In theory, you can put an OpenDivX video and MP3 audio into an <B>MPG</B>
format file. However, most players will not play it, since they expect MPEG1
video and MP2 audio (unlike <B>AVI</B>, <B>MPG</B> does not have the
necessary fields to describe its video and audio streams). Or you might put
MPEG1 video into an AVI file.
<A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A> and
<A HREF="encoding.html">MEncoder</A> can create these files.</P>
@ -39,38 +40,39 @@ and <A HREF="encoding.html">MEncoder</A> can create these files.</P>
<P>MPEG files come in different guises:</P>
<UL>
<LI>MPG: This is the most <B>basic</B> form of the MPEG file formats. It contains
MPEG1 video, and MP2 (MPEG-1 layer 2) or rarely MP1 audio.</LI>
<LI>DAT: This is the very same format as MPG with a different extension. It is used
on <B>Video CD</B>s. Due to the way VCDs are created and Linux is designed,
DAT files cannot be played nor copied from VCDs as regular files. You have
to use the <CODE>-vcd</CODE> option to play the Video CD.</LI>
<LI>VOB: This is the MPEG file format on <B>DVD</B>s. It is the same as MPG, plus the
capability to contain subtitles or non-MPEG (AC3) audio. It contains encoded MPEG2
video and usually AC3 audio, but DTS, MP2 and uncompressed LPCM are allowed, too.<BR>
<B>Read the <A HREF="cd-dvd.html#dvd">DVD section</A> !</B></LI>
<LI>MPG: This is the most <B>basic</B> form of the MPEG file formats. It
contains MPEG1 video, and MP2 (MPEG-1 layer 2) or rarely MP1 audio.</LI>
<LI>DAT: This is the very same format as MPG with a different extension. It
is used on <B>Video CD</B>s. Due to the way VCDs are created and Linux is
designed, DAT files cannot be played nor copied from VCDs as regular files.
You have to use the <CODE>-vcd</CODE> option to play the Video CD.</LI>
<LI>VOB: This is the MPEG file format on <B>DVD</B>s. It is the same as MPG,
plus the capability to contain subtitles or non-MPEG (AC3) audio. It
contains encoded MPEG2 video and usually AC3 audio, but DTS, MP2 and
uncompressed LPCM are allowed, too.<BR> <B>Read the <A
HREF="cd-dvd.html#dvd">DVD section</A>!</B></LI>
</UL>
<P>Series of frames form independent groups in MPEG files. This means that you
can cut/join an MPEG file with standard file tools (like <CODE>dd</CODE>,
<CODE>cut</CODE>), and it remains completely functional.</P>
can cut/join an MPEG file with standard file tools (like <CODE>dd</CODE>,
<CODE>cut</CODE>), and it remains completely functional.</P>
<P>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 <CODE>-aspect</CODE> option.</P>
<P>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 <CODE>-aspect</CODE> option.</P>
<P><B><A NAME="avi">2.1.1.2 AVI files</A></B></P>
<P>Designed by Microsoft, <B>AVI (Audio Video Interleaved)</B> 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 <B>OpenDMS</B>.
Microsoft currently strongly discourages its use and encourages ASF/WMV. Not that
anybody cares.<BR>
<P>Designed by Microsoft, <B>AVI (Audio Video Interleaved)</B> 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
<B>OpenDMS</B>. Microsoft currently strongly discourages its use and
encourages ASF/WMV. Not that anybody cares.<BR>
<P>There is a hack that allows AVI files to contain an Ogg Vorbis audio
stream, but makes them incompatible with standard AVI. <B>MPlayer</B>
@ -80,9 +82,9 @@ anybody cares.<BR>
problem.</P>
<P><B>Note:</B> 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 <B>MPlayer</B> can play or the raw DV
stream for which support is under development.</P>
convert to two different types of AVI files. The AVI will then contain either
separate audio and video streams that <B>MPlayer</B> can play or the raw DV
stream for which support is under development.</P>
<P>There are two kinds of AVI files:</P>
<UL>
@ -110,32 +112,33 @@ stream for which support is under development.</P>
</UL>
<P>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 <A HREF="encoding.html">MEncoder</A>.</P>
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 <A HREF="encoding.html">MEncoder</A>.</P>
<P><B><A NAME="asf">2.1.1.3 ASF/WMV files</A></B></P>
<P>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). <B>MPlayer</B> supports only v1.0, as nobody has ever seen
v2.0 files :). Note that ASF files nowadays come with the extension .WMA or
.WMV.</P>
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). <B>MPlayer</B> supports only v1.0, as nobody has
ever seen v2.0 files :). Note that ASF files nowadays come with the extension
.WMA or .WMV.</P>
<P><B><A NAME="mov">2.1.1.4 QuickTime/MOV files</A></B></P>
<P>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 a
.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
<CODE>-dumpvideo</CODE> and <CODE>-dumpaudio</CODE> options.).</P>
<P>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
<CODE>-dumpvideo</CODE> and <CODE>-dumpaudio</CODE> options.).</P>
<P><B>Note:</B> Most new QuickTime files use <B>Sorenson</B> video and QDesign
Music audio. See our <A HREF="codecs.html#sorenson">Sorenson</A> codec
@ -144,26 +147,26 @@ files are real MPG and AAC files. You can even extract them with the
<P><B><A NAME="vivo">2.1.1.5 VIVO files</A></B></P>
<P><B>MPlayer</B> 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!</P>
<P><B>MPlayer</B> 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!</P>
<P>The video codec of VIVO/1.0 files is standard <B>h.263</B>. The video codec
of VIVO/2.0 files is a modified, nonstandard <B>h.263v2</B>. The audio is the same,
it may be <B>g.723</B> (standard), or <B>Vivo Siren</B>.</P>
of VIVO/2.0 files is a modified, nonstandard <B>h.263v2</B>. The audio is the
same, it may be <B>g.723</B> (standard), or <B>Vivo Siren</B>.</P>
<P>See the <A HREF="codecs.html#vivo_video">VIVO video codec</A>
and <A HREF="codecs.html#vivo_audio">VIVO audio codec</A> sections for installation
instructions.</P>
<P>See the <A HREF="codecs.html#vivo_video">VIVO video codec</A> and
<A HREF="codecs.html#vivo_audio">VIVO audio codec</A> sections for installation
instructions.</P>
<P><B><A NAME="fli">2.1.1.6 FLI files</A></B></P>
<P><B>FLI</B> is a very old file format used by Autodesk Animator, but it is
a common file format for short animations on the net. <B>MPlayer</B> demuxes
and decodes FLI movies and is even able to seek within them (useful when
looping with the <CODE>-loop</CODE> option). FLI files do not have keyframes, so the picture
will be messy for a short time after seeking.</P>
<P><B>FLI</B> is a very old file format used by Autodesk Animator, but it is a
common file format for short animations on the net. <B>MPlayer</B> demuxes
and decodes FLI movies and is even able to seek within them (useful when
looping with the <CODE>-loop</CODE> option). FLI files do not have keyframes,
so the picture will be messy for a short time after seeking.</P>
<P><B><A NAME="real">2.1.1.7 RealMedia (RM) files</A></B></P>
@ -178,19 +181,20 @@ will be messy for a short time after seeking.</P>
<P><B><A NAME="nuppelvideo">2.1.1.8 NuppelVideo files</A></B></P>
<P><A HREF="http://mars.tuwien.ac.at/~roman/nuppelvideo">NuppelVideo</A>
is a TV grabber tool (AFAIK:). <B>MPlayer</B> 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. <B>MPlayer</B> decodes them all (and also <B>encodes</B> them with
<B>MEncoder</B> to DivX/etc!). Seeking works.</P>
is a TV grabber tool (AFAIK:). <B>MPlayer</B> 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.
<B>MPlayer</B> decodes them all (and also <B>encodes</B> them with
<B>MEncoder</B> to DivX/etc!). Seeking works.</P>
<P><B><A NAME="yuv4mpeg">2.1.1.9 yuv4mpeg files</A></B></P>
<P><A HREF="http://mjpeg.sourceforge.net">yuv4mpeg / yuv4mpeg2</A> is
a file format used by the <A HREF="http://mjpeg.sf.net">mjpegtools programs</A>.
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.
<P><A HREF="http://mjpeg.sourceforge.net">yuv4mpeg / yuv4mpeg2</A> is a file
format used by the <A HREF="http://mjpeg.sf.net">mjpegtools programs</A>.
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.
</P>
@ -224,10 +228,10 @@ The file format is really a sequence of uncompressed YUV 4:2:0 images.
<P><B><A NAME="mp3">2.1.2.1 MP3 files</A></B></P>
<P>You may have problems playing certain MP3 files that <B>MPlayer</B> 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 <CODE>-demuxer</CODE> flag described
in the manpage may help you in these cases.</P>
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 <CODE>-demuxer</CODE> flag
described in the manpage may help you in these cases.</P>
<P><B><A NAME="wav">2.1.2.2 WAV files</A></B></P>

View File

@ -33,22 +33,24 @@ contains these drivers:</P>
It <B>may</B> take a while to find your optimal settings.</P>
<UL>
<LI>If you have an OSS driver, first try <CODE>-ao oss</CODE> (this is the default).
If you experience glitches, halts or anything out of the ordinary, try
<CODE>-ao sdl</CODE> (NOTE: you need to have SDL libraries and header files
installed). The SDL audio driver helps in a lot of cases and also supports ESD,
ARTS, and up/downsampling. (ESD is the sound daemon from GNOME, ARTS is from KDE.)</LI>
<LI>If you have ALSA version 0.5, then you almost always have to use <CODE>-ao alsa5</CODE> ,
since ALSA 0.5 has buggy OSS emulation code, and will <B>crash MPlayer</B> with
a message like this:<BR>
<CODE>DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!</CODE></LI>
<LI>If you have ALSA version 0.9 you may choose between <CODE>-ao oss</CODE> and
<CODE>-ao sdl</CODE>. You can also use <CODE>-ao alsa9</CODE>. It works, but
there may be problems like lost sync and disappearing audio.</LI>
<LI>If you have an OSS driver, first try <CODE>-ao oss</CODE> (this is the
default). If you experience glitches, halts or anything out of the
ordinary, try <CODE>-ao sdl</CODE> (NOTE: you need to have SDL libraries
and header files installed). The SDL audio driver helps in a lot of cases
and also supports ESD, ARTS, and up/downsampling. (ESD is the sound daemon
from GNOME, ARTS is from KDE.)</LI>
<LI>If you have ALSA version 0.5, then you almost always have to use
<CODE>-ao alsa5</CODE> , since ALSA 0.5 has buggy OSS emulation code, and
will <B>crash MPlayer</B> with a message like this:<BR>
<CODE>DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!</CODE></LI>
<LI>If you have ALSA version 0.9 you may choose between <CODE>-ao oss</CODE>
and <CODE>-ao sdl</CODE>. You can also use <CODE>-ao alsa9</CODE>. It
works, but there may be problems like lost sync and disappearing
audio.</LI>
</UL>
<P>On <B>Solaris/FreeBSD</B> systems, use the SUN audio driver with the
<CODE>-ao sun</CODE> option, otherwise neither video nor audio will work.</P>
<CODE>-ao sun</CODE> option, otherwise neither video nor audio will work.</P>
<P><B><A NAME="experiences">2.3.2.1 Sound Card experiences, recommendations</A></B></P>
@ -120,17 +122,18 @@ there may be problems like lost sync and disappearing audio.</LI>
</TABLE>
<UL>
<LI>On Linux, a 2.4.x kernel is highly recommended. Kernel 2.2 is not tested.</LI>
<LI>If sound clicks when playing from CD-ROM, turn on IRQ unmasking, e.g.
<CODE>hdparm -u1 /dev/cdrom</CODE> (<CODE>man hdparm</CODE>). This is
generally beneficial and described more detailed in the
<A HREF="cd-dvd.html#drives">CD/DVD drives</A> section.</LI>
<LI>Sharing your sound card with another application like XMMS is <B>strongly discouraged</B>!
If the other sound application is using ESD, start <B>MPlayer</B> with the <CODE>-vo sdl:esd</CODE> option
to combine both sound streams! In fact, the option <CODE>-vo sdl:esd</CODE> could be used with ESD
even when playing <B>Mplayer</B> alone.</LI>
<LI>Feedback to this document is welcome. Please tell us how <B>MPlayer</B> and
your sound card(s) worked together.</LI>
<LI>On Linux, a 2.4.x kernel is highly recommended. Kernel 2.2 is not tested.</LI>
<LI>If sound clicks when playing from CD-ROM, turn on IRQ unmasking, e.g.
<CODE>hdparm -u1 /dev/cdrom</CODE> (<CODE>man hdparm</CODE>). This is
generally beneficial and described more detailed in the <A
HREF="cd-dvd.html#drives">CD-ROM section</A>.</LI>
<LI>Sharing your sound card with another application like XMMS is <B>strongly
discouraged</B>! If the other sound application is using ESD, start
<B>MPlayer</B> with the <CODE>-vo sdl:esd</CODE> option to combine both
sound streams! In fact, the option <CODE>-vo sdl:esd</CODE> could be used
with ESD even when playing <B>Mplayer</B> alone.</LI>
<LI>Feedback to this document is welcome. Please tell us how <B>MPlayer</B>
and your sound card(s) worked together.</LI>
</UL>

File diff suppressed because it is too large Load Diff