Mercurial > mplayer.hg
annotate DOCS/formats.html @ 8334:0c9a596abe39
found in an AVI file and reported working by Damian Gatabria
author | rfelker |
---|---|
date | Tue, 03 Dec 2002 02:02:58 +0000 |
parents | 9ffea46becdc |
children | e35d561f002e |
rev | line source |
---|---|
6403
c0f189e49ee4
Background color now set by CSS, added doctype and default character set,
diego
parents:
6393
diff
changeset
|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2745 | 2 <HTML> |
4982
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4663
diff
changeset
|
3 |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4663
diff
changeset
|
4 <HEAD> |
6882
f3f87f6bf5cf
Added a uniform title: something - MPlayer - The Movie Player for Linux.
diego
parents:
6775
diff
changeset
|
5 <TITLE>Formats - MPlayer - The Movie Player for Linux</TITLE> |
6391 | 6 <LINK REL="stylesheet" TYPE="text/css" HREF="default.css"> |
6403
c0f189e49ee4
Background color now set by CSS, added doctype and default character set,
diego
parents:
6393
diff
changeset
|
7 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> |
4982
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4663
diff
changeset
|
8 </HEAD> |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4663
diff
changeset
|
9 |
6403
c0f189e49ee4
Background color now set by CSS, added doctype and default character set,
diego
parents:
6393
diff
changeset
|
10 <BODY> |
2745 | 11 |
12 | |
7047 | 13 <H2><A NAME="formats">2.1 Supported formats</A></H2> |
2745 | 14 |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
15 <P>It is important to clarify a common mistake. When people see a file with a |
6960 | 16 <B>.AVI</B> extension, they immediately conclude that it is not an MPEG file. |
17 That is not true. At least not entirely. Contrary to popular belief such a | |
18 file <B>can</B> contain MPEG1 video.</P> | |
2745 | 19 |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
20 <P>You see, a <B>codec</B> is not the same as a <B>file format</B>.<BR> |
6960 | 21 Examples of video <B>codecs</B> are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.<BR> |
6974 | 22 Examples of file <B>formats</B> are: MPG, AVI, ASF.</P> |
2745 | 23 |
6960 | 24 <P>In theory, you can put an OpenDivX video and MP3 audio into an <B>MPG</B> |
25 format file. However, most players will not play it, since they expect MPEG1 | |
26 video and MP2 audio (unlike <B>AVI</B>, <B>MPG</B> does not have the | |
27 necessary fields to describe its video and audio streams). Or you might put | |
28 MPEG1 video into an AVI file. | |
29 <A HREF="http://ffmpeg.sourceforge.net">FFmpeg</A> and | |
30 <A HREF="encoding.html">MEncoder</A> can create these files.</P> | |
2745 | 31 |
32 | |
33 | |
7047 | 34 <H3><A NAME="video_formats">2.1.1 Video formats</A></H3> |
2745 | 35 |
36 | |
7047 | 37 <H4><A NAME="mpeg">2.1.1.1 MPEG files</A></H4> |
2745 | 38 |
5395 | 39 <P>MPEG files come in different guises:</P> |
40 | |
41 <UL> | |
6960 | 42 <LI>MPG: This is the most <B>basic</B> form of the MPEG file formats. It |
43 contains MPEG1 video, and MP2 (MPEG-1 layer 2) or rarely MP1 audio.</LI> | |
44 <LI>DAT: This is the very same format as MPG with a different extension. It | |
45 is used on <B>Video CD</B>s. Due to the way VCDs are created and Linux is | |
46 designed, DAT files cannot be played nor copied from VCDs as regular files. | |
47 You have to use the <CODE>-vcd</CODE> option to play the Video CD.</LI> | |
48 <LI>VOB: This is the MPEG file format on <B>DVD</B>s. It is the same as MPG, | |
49 plus the capability to contain subtitles or non-MPEG (AC3) audio. It | |
50 contains encoded MPEG2 video and usually AC3 audio, but DTS, MP2 and | |
51 uncompressed LPCM are allowed, too.<BR> <B>Read the <A | |
52 HREF="cd-dvd.html#dvd">DVD section</A>!</B></LI> | |
5395 | 53 </UL> |
2745 | 54 |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
55 <P>Series of frames form independent groups in MPEG files. This means that you |
6960 | 56 can cut/join an MPEG file with standard file tools (like <CODE>dd</CODE>, |
57 <CODE>cut</CODE>), and it remains completely functional.</P> | |
2865 | 58 |
6960 | 59 <P>One important feature of MPGs is that they have a field to describe the |
60 aspect ratio of the video stream within. For example SVCDs have 480x480 | |
61 resolution video, and in the header that field is set to 4:3, so that it is | |
62 played at 640x480. AVI files do not have this field, so they have to be | |
63 rescaled during encoding or played with the <CODE>-aspect</CODE> option.</P> | |
2761 | 64 |
2745 | 65 |
7047 | 66 <H4><A NAME="avi">2.1.1.2 AVI files</A></H4> |
2745 | 67 |
6960 | 68 <P>Designed by Microsoft, <B>AVI (Audio Video Interleaved)</B> is a widespread |
69 multipurpose format currently used mostly for DivX and DivX4 video. It has | |
70 many known drawbacks and shortcomings (for example in streaming). It | |
71 supports one video stream and 0 to 99 audio streams. File size is limited to | |
72 2GB, but there exists an extension allowing bigger files called | |
73 <B>OpenDMS</B>. Microsoft currently strongly discourages its use and | |
6974 | 74 encourages ASF/WMV. Not that anybody cares.</P> |
5444 | 75 |
6175
9c2cca3804c0
better wording, patch by Diego Biurrun <diego@biurrun.de>
arpi
parents:
6168
diff
changeset
|
76 <P>There is a hack that allows AVI files to contain an Ogg Vorbis audio |
7814 | 77 stream, but makes them incompatible with standard AVI. MPlayer |
6175
9c2cca3804c0
better wording, patch by Diego Biurrun <diego@biurrun.de>
arpi
parents:
6168
diff
changeset
|
78 supports playing these files. Seeking is also implemented but severely |
9c2cca3804c0
better wording, patch by Diego Biurrun <diego@biurrun.de>
arpi
parents:
6168
diff
changeset
|
79 hampered by badly encoded files with confusing headers. Unfortunately the |
6775
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
80 only encoder currently capable of creating these files, NanDub, has this |
6175
9c2cca3804c0
better wording, patch by Diego Biurrun <diego@biurrun.de>
arpi
parents:
6168
diff
changeset
|
81 problem.</P> |
9c2cca3804c0
better wording, patch by Diego Biurrun <diego@biurrun.de>
arpi
parents:
6168
diff
changeset
|
82 |
6775
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
83 <P><B>Note:</B> DV cameras create raw DV streams that DV grabbing utilities |
6960 | 84 convert to two different types of AVI files. The AVI will then contain either |
7814 | 85 separate audio and video streams that MPlayer can play or the raw DV |
6960 | 86 stream for which support is under development.</P> |
2745 | 87 |
5395 | 88 <P>There are two kinds of AVI files:</P> |
2865 | 89 <UL> |
5395 | 90 <LI><B>Interleaved:</B> Audio and video content is interleaved. This is the |
7787
05e518badc1b
doc fixes part 1 (more will come when i find the time to read the rest)
attila
parents:
7048
diff
changeset
|
91 standard usage. Recommended and mostly used. Some tools create |
7969 | 92 interleaved AVIs with bad sync. MPlayer detects these as |
7787
05e518badc1b
doc fixes part 1 (more will come when i find the time to read the rest)
attila
parents:
7048
diff
changeset
|
93 interleaved, and this climaxes in loss of A/V sync, probably at seeking. |
05e518badc1b
doc fixes part 1 (more will come when i find the time to read the rest)
attila
parents:
7048
diff
changeset
|
94 These files should be played as non-interleaved (with the <CODE>-ni</CODE> |
05e518badc1b
doc fixes part 1 (more will come when i find the time to read the rest)
attila
parents:
7048
diff
changeset
|
95 option).</LI> |
5395 | 96 <LI><B>Non-interleaved:</B> First comes the whole video stream, then the whole |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
97 audio stream. It thus needs a lot of seeking, making playing from network or |
7850 | 98 CD-Rom difficult.</LI> |
2865 | 99 </UL> |
100 | |
7814 | 101 <P>MPlayer supports two kinds of timings for AVI files:</P> |
2865 | 102 <UL> |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
103 <LI><B>bps-based</B>: It is based on the bitrate/samplerate of the video/audio stream. This |
5395 | 104 method is used by most players, including <A HREF="http://avifile.sourceforge.net">avifile</A> |
6775
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
105 and Windows Media Player. |
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
106 Files with broken headers, and files created with VBR audio but not with a |
2865 | 107 VBR-compliant encoder will result in A/V desync with this method (mostly at |
108 seeking).</LI> | |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
109 <LI><B>interleaving-based</B>: It does not use the bitrate value of the header, instead |
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
110 it uses the relative position of interleaved audio and video chunks, making |
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
111 badly encoded files with VBR audio playable.</LI> |
2865 | 112 </UL> |
113 | |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
114 <P>Any audio and video codec is allowed, but note that VBR audio is not well |
6960 | 115 supported by most players. The file format makes it possible to use VBR |
116 audio, but most players expect CBR audio, thus they fail with VBR. VBR is | |
117 uncommon and the Microsoft AVI specs only describe CBR audio. Most AVI | |
118 encoders/multiplexers create bad files when using VBR audio. There are only | |
119 two known exceptions: NanDub and <A HREF="encoding.html">MEncoder</A>.</P> | |
2865 | 120 |
2745 | 121 |
7047 | 122 <H4><A NAME="asf">2.1.1.3 ASF/WMV files</A></H4> |
2745 | 123 |
2865 | 124 <P>ASF (active streaming format) comes from Microsoft. They developed two |
6960 | 125 variants of ASF, v1.0 and v2.0. v1.0 is used by their media tools (Windows |
126 Media Player and Windows Media Encoder) and is very secret. v2.0 is published | |
127 and patented :). Of course they differ, there is no compatibility at all (it | |
7814 | 128 is just another legal game). MPlayer supports only v1.0, as nobody has |
6960 | 129 ever seen v2.0 files :). Note that ASF files nowadays come with the extension |
130 .WMA or .WMV.</P> | |
2745 | 131 |
132 | |
7047 | 133 <H4><A NAME="mov">2.1.1.4 QuickTime/MOV files</A></H4> |
2865 | 134 |
6960 | 135 <P>These formats were designed by Apple and can contain any codec, CBR or VBR. |
136 They usually have a .QT or .MOV extension. Ever since the MPEG4 group chose | |
137 QuickTime as the recommended file format for MPEG4, their MOV files come with | |
138 an | |
139 .MPG or .MP4 extension (Interestingly the video and audio streams in these | |
140 files are real MPG and AAC files. You can even extract them with the | |
141 <CODE>-dumpvideo</CODE> and <CODE>-dumpaudio</CODE> options.).</P> | |
2745 | 142 |
6775
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
143 <P><B>Note:</B> Most new QuickTime files use <B>Sorenson</B> video and QDesign |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
144 Music audio. See our <A HREF="codecs.html#sorenson">Sorenson</A> codec |
8331 | 145 section.</P> |
2865 | 146 |
2745 | 147 |
7047 | 148 <H4><A NAME="vivo">2.1.1.5 VIVO files</A></H4> |
2745 | 149 |
7814 | 150 <P>MPlayer happily demuxes VIVO file formats. The biggest disadvantage |
6960 | 151 of the format is that it has no index block, nor a fixed packet size or sync |
152 bytes and most files lack even keyframes, so forget seeking!</P> | |
2865 | 153 |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
154 <P>The video codec of VIVO/1.0 files is standard <B>h.263</B>. The video codec |
6960 | 155 of VIVO/2.0 files is a modified, nonstandard <B>h.263v2</B>. The audio is the |
156 same, it may be <B>g.723</B> (standard), or <B>Vivo Siren</B>.</P> | |
2865 | 157 |
6960 | 158 <P>See the <A HREF="codecs.html#vivo_video">VIVO video codec</A> and |
159 <A HREF="codecs.html#vivo_audio">VIVO audio codec</A> sections for installation | |
160 instructions.</P> | |
2745 | 161 |
162 | |
7047 | 163 <H4><A NAME="fli">2.1.1.6 FLI files</A></H4> |
3806 | 164 |
6960 | 165 <P><B>FLI</B> is a very old file format used by Autodesk Animator, but it is a |
7814 | 166 common file format for short animations on the net. MPlayer demuxes |
6960 | 167 and decodes FLI movies and is even able to seek within them (useful when |
168 looping with the <CODE>-loop</CODE> option). FLI files do not have keyframes, | |
169 so the picture will be messy for a short time after seeking.</P> | |
3806 | 170 |
171 | |
7047 | 172 <H4><A NAME="real">2.1.1.7 RealMedia (RM) files</A></H4> |
3806 | 173 |
7814 | 174 <P>Yes, MPlayer can read (demux) RealMedia (.rm) files. Seeking works, |
6357 | 175 but you have to explicitly specify the <CODE>-forceidx</CODE> option |
176 (the format supports keyframes). Here are the lists of the supported | |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
177 <A HREF="codecs.html#realvideo">RealVideo</A> |
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
178 and <A HREF="codecs.html#realaudio">RealAudio</A> codecs.</P> |
6357 | 179 |
3806 | 180 |
7047 | 181 <H4><A NAME="nuppelvideo">2.1.1.8 NuppelVideo files</A></H4> |
3816 | 182 |
183 <P><A HREF="http://mars.tuwien.ac.at/~roman/nuppelvideo">NuppelVideo</A> | |
7814 | 184 is a TV grabber tool (AFAIK:). MPlayer can read its .NUV files (only |
6960 | 185 NuppelVideo 5.0). Those files can contain uncompressed YV12, YV12+RTJpeg |
186 compressed, YV12 RTJpeg+lzo compressed, and YV12+lzo compressed frames. | |
7814 | 187 MPlayer decodes them all (and also <B>encodes</B> them with |
188 MEncoder to DivX/etc!). Seeking works.</P> | |
3816 | 189 |
190 | |
7047 | 191 <H4><A NAME="yuv4mpeg">2.1.1.9 yuv4mpeg files</A></H4> |
3818 | 192 |
6960 | 193 <P><A HREF="http://mjpeg.sourceforge.net">yuv4mpeg / yuv4mpeg2</A> is a file |
194 format used by the <A HREF="http://mjpeg.sf.net">mjpegtools programs</A>. | |
195 You can grab, produce, filter or encode video in this format using these | |
196 tools. The file format is really a sequence of uncompressed YUV 4:2:0 | |
6974 | 197 images.</P> |
3818 | 198 |
199 | |
7047 | 200 <H4><A NAME="film">2.1.1.10 FILM files</A></H4> |
4339 | 201 |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
202 <P>This format is used on old Sega Saturn CD-Rom games.</P> |
4339 | 203 |
204 | |
7047 | 205 <H4><A NAME="roq">2.1.1.11 RoQ files</A></H4> |
4503 | 206 |
4584 | 207 <P>RoQ files are multimedia files used in some ID games such as Quake III and |
208 Return to Castle Wolfenstein.</P> | |
4503 | 209 |
210 | |
7787
05e518badc1b
doc fixes part 1 (more will come when i find the time to read the rest)
attila
parents:
7048
diff
changeset
|
211 <H4><A NAME="ogg">2.1.1.12 OGG/OGM files</A></H4> |
5860 | 212 |
6775
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
213 <P>This is a new file format from <A HREF="http://www.xiph.org">Xiphophorus</A>. |
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
214 It can contain any video or audio codec, CBR or VBR. You will need to |
7a41ce77089f
Moved RealPlayer libs installation to codecs.html where all the other
diego
parents:
6604
diff
changeset
|
215 have <CODE>libogg</CODE> and <CODE>libvorbis</CODE> installed |
7814 | 216 before compiling MPlayer to be able to play it.</P> |
5860 | 217 |
218 | |
7813
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
219 <H4><A NAME="sdp">2.1.1.13 SDP files</A></H4> |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
220 |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
221 <P><A HREF="ftp://ftp.rfc-editor.org/in-notes/rfc2327.txt">SDP</A> |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
222 is an IETF standard format for describing video and/or audio RTP streams. |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
223 (The "<A HREF="http://www.live.com/mplayer/">LIVE.COM Streaming Media</A>" |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
224 libraries are required.)</P> |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
225 |
76940a39405a
RTSP/RTP documentation, patch by Ross Finlayson <finlayson@live.com>.
diego
parents:
7787
diff
changeset
|
226 |
8177 | 227 <H4><A NAME="pva">2.1.1.14 PVA files</A></H4> |
228 | |
229 <P>PVA is an MPEG-like format used by DVB TV boards' software (e.g.: MultiDec, | |
230 WinTV) under Windows.</P> | |
231 | |
232 <P>The PVA specifications can be downloaded from the following address: | |
233 <A HREF="http://www.technotrend.de/download/av_format_v1.pdf">http://www.technotrend.de/download/av_format_v1.pdf</A></P> | |
234 | |
235 | |
7047 | 236 <H3><A NAME="audio_formats">2.1.2 Audio formats</A></H3> |
2745 | 237 |
7814 | 238 <P>MPlayer is a <B>Movie</B> and not a <B>Media</B> player, although |
5378 | 239 it can play some audio file formats (they are listed in the sections below). |
7814 | 240 This is not a recommended usage of MPlayer, you better use |
5378 | 241 <A HREF="http://www.xmms.org">xmms</A>.</P> |
242 | |
243 | |
7047 | 244 <H4><A NAME="mp3">2.1.2.1 MP3 files</A></H4> |
5362
5882b38e1c2d
applied Diego's cosmetics patch :) with some small fixes
arpi
parents:
5122
diff
changeset
|
245 |
7814 | 246 <P>You may have problems playing certain MP3 files that MPlayer will |
6960 | 247 misdetect as MPEGs and play incorrectly or not at all. This cannot be fixed |
248 without dropping support for certain broken MPEG files and thus will remain | |
249 like this for the foreseeable future. The <CODE>-demuxer</CODE> flag | |
7048 | 250 described in the man page may help you in these cases.</P> |
2745 | 251 |
5378 | 252 |
7047 | 253 <H4><A NAME="wav">2.1.2.2 WAV files</A></H4> |
5378 | 254 |
255 | |
7850 | 256 <H4><A NAME="ogg_vorbis">2.1.2.3 OGG/OGM files (Vorbis)</A></H4> |
5378 | 257 |
5860 | 258 <P>Requires properly installed <CODE>libogg</CODE> and |
259 <CODE>libvorbis</CODE>.</P> | |
5378 | 260 |
261 | |
7047 | 262 <H4><A NAME="wma">2.1.2.4 WMA/ASF files</A></H4> |
5378 | 263 |
264 | |
7047 | 265 <H4><A NAME="mp4">2.1.2.5 MP4 files</A></H4> |
5378 | 266 |
8177 | 267 |
268 <H4><A NAME="cdda">2.1.2.6 CD audio</A></H4> | |
269 | |
270 <P>MPlayer can use <B>cdparanoia</B> (lib) to play CDDA (Audio CD). | |
271 The scope of this section does not contain enumerating cdparanoia's | |
272 features.</P> | |
273 | |
274 <P>See the man page's <CODE>-cdda</CODE> option which can be used to | |
275 pass options to cdparanoia.</P> | |
276 | |
2745 | 277 </BODY> |
278 </HTML> |