Mercurial > mplayer.hg
annotate DOCS/formats.html @ 3946:c00db356082f
headers cleanup
author | arpi |
---|---|
date | Wed, 02 Jan 2002 17:11:09 +0000 |
parents | 6793c7088abb |
children | cab4ac1467e4 |
rev | line source |
---|---|
2745 | 1 <HTML> |
2 <BODY BGCOLOR=WHITE> | |
3 | |
4 <FONT face="Verdana, Arial, Helvetica, sans-serif" size=2> | |
5 | |
6 | |
7 <P><B><A NAME=2.1>2.1. Supported formats</A></B></P> | |
8 | |
9 <P><B>MPlayer</B> can read/play from the following devices/formats:<BR> | |
10 <UL> | |
11 <LI> <A HREF="#2.1.1.1">VCD</A> (Video CD) directly from CD-ROM or from CDRwin's .bin image file | |
12 <LI> <A HREF="#2.1.1.1">DVD</A>, directly from your DVD disk, using libdvdread for decryption | |
13 <LI> <A HREF="#2.1.1.1">MPEG 1/2</A> System Stream (PS/PES/VOB) and Elementary Stream (ES) file | |
14 formats | |
15 <LI> <A HREF="#2.1.1.2">RIFF AVI</A> file format | |
16 <LI> <A HREF="#2.1.1.3">ASF/WMV</A> 1.0 file format | |
17 <LI> <A HREF="#2.1.1.4">QT/MOV</A> file format with (un)compressed headers | |
18 <LI> <A HREF="#2.1.1.5">VIVO</A> format (.viv files) | |
3806 | 19 <LI> <A HREF="#2.1.1.6">FLI</A> format |
20 <LI> <A HREF="#2.1.1.7">RealMedia</A> format (.rm files) | |
3816 | 21 <LI> <A HREF="#2.1.1.8">NuppelVideo</A> format (.nuv files) |
3818 | 22 <LI> <A HREF="#2.1.1.9">yuv4mpeg</A> format |
2761 | 23 <LI> supports <A HREF="documentation.html#3.3">reading from stdin</A>, or network via HTTP |
2745 | 24 </UL></P> |
25 | |
26 <P>It's important to clarify a popular mistake. When people see a file with | |
27 <B>.AVI</B> extension, they instantly declare that isn't an MPEG file. | |
28 That's not true. At least not entirely. If you tell them that such a file | |
29 can contain MPEG1 video, they laugh at you. Feel free to kick their dumbass | |
30 faces, then tell them to RTFM.</P> | |
31 | |
32 <P>You see, a <B>codec</B> isn't equal to a <B>file format</B>.<BR> | |
33 Video <B>codecs</B> are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.<BR> | |
2865 | 34 Video <B>formats</B> are: MPG, AVI, ASF.<BR> |
2745 | 35 </P> |
36 | |
37 <P>In theory, you can happily put an OpenDivX video and MP3 audio | |
38 into a <B>.MPG</B> format file. Though most players won't play it, since | |
39 they expect MPEG1 video and MP2 audio (<B>.MPG</B> doesn't have the | |
40 necessary fields to describe its video and audio streams, like <B>.AVI</B> | |
41 does). Or put MPEG1 video to an .AVI. For example <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> can | |
42 create these files.</P> | |
43 | |
44 <P>Audio <B>codecs</B> and <B>formats</B> are basically the same terms.</P> | |
45 | |
46 | |
47 <P><B><A NAME=2.1.1>2.1.1. Video formats</A></B></P> | |
48 | |
49 | |
2865 | 50 <P><B><A NAME=2.1.1.1>2.1.1.1. MPEG files</A></B></P> |
2745 | 51 |
52 <P> | |
53 <LI>MPG : this is the most <B>basic</B> form of MPEG file formats. Contains | |
2865 | 54 MPEG1 video, and MP2 (MPEG-1 layer 2) audio, or rarely MP1.</LI> |
55 <LI>DAT : this is the very same format as MPG, just different extension. Used | |
56 on <B>Video CD</B>s. Due to the nature VCDs are created and Linux is designed, | |
2745 | 57 the DAT files can't be played nor copied from VCDs. You have to use the |
58 <CODE>-vcd</CODE> option to play the VideoCD.</LI> | |
2865 | 59 <LI>VOB : this is the MPEG file format on <B>DVD</B>s. The same as MPG, plus |
60 capability to contain subtitles, or non-MPEG (AC3) audio. Contains encoded MPEG2 | |
61 video, and usually AC3 audio, but MP2 is allowed too.<BR> | |
62 <B>Read the <A HREF="cd-dvd.html#4.2">DVD section</A> !</B></LI> | |
2745 | 63 </P> |
64 | |
2865 | 65 <P>In MPEG files, series of frames are grouped together, and are independent |
66 from the other groups. What this means is you can cut/join an MPEG file with | |
67 standard file-tools (like dd, cut), and it remains completely functional.</P> | |
68 | |
2761 | 69 <P>One important feature for MPGs is that they have a field to describe |
70 the aspect ratio of the video stream within. For example SVCDs have | |
71 480x480 resolution video, and in the header that field is set to 4:3, so | |
72 it's played at 640x480. AVI files don't have this field, so one has to | |
2865 | 73 rescale it during encoding.</P> |
2761 | 74 |
2745 | 75 |
76 <P><B><A NAME=2.1.1.2>2.1.1.2. AVI files</A></B></P> | |
77 | |
78 <P>Designed by Micro$oft, the <B>AVI (Audio Video Interleaved)</B> is a | |
79 widespread multipurpose format, currently used mostly for DivX and DivX4 | |
80 videos. Has many known drawbacks, and inabilities (for example in streaming). | |
81 Has support for one video stream, and 99 audio streams. Can be as big as | |
82 2Gb. There exists an extension for it to be bigger, called <B>OpenDMS</B>. | |
2761 | 83 M$ currently strongly discourages its use and propagates ASF/WMV. Not if |
2745 | 84 anybody cares.<BR> |
85 <B>NOTE</B> : DV cameras can create two types of AVI format, one is the usual and | |
86 playable, the other is neither.</P> | |
87 | |
2865 | 88 <P>There are two kinds of AVI files: |
89 <UL> | |
90 <LI><B>Interleaved</B> : audio and video content is interleaved. This is the | |
91 standard usage. Recommended and mostly used. Some tools create interleaved | |
92 AVIs with bad sync. <B>MPlayer</B> detects these as interleaved, and this | |
93 climaxes in loss of A/V sync, probably at seeking. These files should be | |
94 played as non-interleaved (with the <CODE>-ni</CODE> option).</LI> | |
95 <LI><B>Non-interleaved</B> : bad. First come the whole video stream, then the whole | |
96 audio stream, thus needs a lot of seeking. It's very bad when playing from | |
97 network or CDROM.</LI> | |
98 </UL> | |
99 </P> | |
100 | |
101 <P>MPlayer supports 2 kind of timing for AVI files: | |
102 <UL> | |
103 <LI><B>bps-based</B> : it is based on bitrate/samplerate of video/audio stream. This | |
104 method is used by most players, including avifile and windows media player. | |
105 Files with broken headers, and files created with VBR audio but not | |
106 VBR-compliant encoder will result in A/V desync with this method (mostly at | |
107 seeking).</LI> | |
108 <LI><B>interleaving-based</B> : it doesn't use bitrate value of the header, instead | |
109 it uses the relative position of interleaved audio and video chunks. Makes | |
110 some badly encoded file with VBR audio playable.</LI> | |
111 </UL> | |
112 </P> | |
113 | |
114 <P>Any audio and video codec is allowed, but note that VBR audio isn't well | |
115 supported by most of the 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 unusual, and Microsoft's AVI specs only describe CBR audio. I also note, that | |
3027 | 118 most AVI encoders/multiplexers create bad files if using VBR audio. Only 2 |
2865 | 119 exception (known by me): NaNDub and <A HREF="encoding.html">MEncoder</A>.</P> |
120 | |
2745 | 121 |
122 <P><B><A NAME=2.1.1.3>2.1.1.3. ASF/WMV files</A></B></P> | |
123 | |
2865 | 124 <P>ASF (active streaming format) comes from Microsoft. They developed two |
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's | |
128 just another legal game). <B>MPlayer</B> supports only v1.0, as nobody has ever seen | |
129 v2.0 files :) . Note, that .ASF files nowdays come with the extension .WMA or | |
130 .WMV.</P> | |
2745 | 131 |
132 | |
2865 | 133 <P><B><A NAME=2.1.1.4>2.1.1.4. QuickTime/MOV files</A></B></P> |
134 | |
135 <P>These are from Macintosh. Usually have extensions of .QT or .MOV . Note | |
136 that since the MPEG4 Group chose QuickTime as the recommended file format | |
3027 | 137 for MPEG4, their .MOV files come with .MPG or .MP4 extension (interesting |
138 that in these files the video stream is a real .MPG file. With the | |
139 <CODE>-dumpvideo</CODE> option you can even extract it.).</P> | |
2745 | 140 |
2865 | 141 <P><B>Codecs</B>: any codecs allowed, both CBR and VBR. Note: most new mov files use |
142 <B>Sorenson</B> video and QDesign Music audio. These formats are completely | |
143 secret, and only Apple's quicktime player is able to play these files (on | |
144 win/mac only).</P> | |
145 | |
2745 | 146 |
147 <P><B><A NAME=2.1.1.5>2.1.1.5. VIV files</A></B></P> | |
148 | |
2865 | 149 <P><B>MPlayer</B> happily demuxes VIVO file formats. The format's big |
150 disadvantage is that it has no index block, nor fixed packetsize or sync bytes, | |
151 and most files lack even keyframes, so forget seeking!</P> | |
152 | |
153 <P>VIVO/1.0 files' video codec is standard <B>h.263</B> . The VIVO/2.0 files' | |
154 video codec is a modified, nonstandard <B>h.263</B> . Audio is the same, | |
155 it may be <B>g.723</B> (standard), or <B>Vivo Siren</B> .</P> | |
156 | |
157 <P>See the <A HREF=codecs.html#2.2.1.4>VIVO video codec</A> | |
3239
ef38487113b1
"Software AC3 decoding" section. Patch by Stephen Davies <steve@daviesfam.org>
gabucino
parents:
3027
diff
changeset
|
158 and <A HREF=codecs.html#2.2.2.4>VIVO audio codec</A> sections for installation |
2855 | 159 instructions.</P> |
2745 | 160 |
161 | |
3806 | 162 <P><B><A NAME=2.1.1.6>2.1.1.6. FLI files</A></B></P> |
163 | |
164 <P><B>FLI</B> is a very old fileformat used by Autodesk Animator, but it's | |
165 a common fileformat for short animations on the Net. <B>MPlayer</B> demuxes | |
166 and decodes FLI movies and is even able to seek within them (useful when | |
167 looping with the -loop option). FLI files don't have keyframes, so picture | |
168 will be messy for a short time after seeking.</P> | |
169 | |
170 | |
171 <P><B><A NAME=2.1.1.7>2.1.1.7. RealMedia (RM) files</A></B></P> | |
172 | |
173 <P>Yes, <B>MPlayer</B> can read (demux) RealMedia (.rm) files. Seeking | |
174 is under implementation, and RM has keyframes so it will be flawless. | |
175 Here are the lists of the supported <A HREF="codecs.html#2.2.1.8">RealVideo</A> | |
176 and <A HREF="codecs.html#2.2.2.5">RealAudio</A> codecs. | |
177 | |
178 | |
3816 | 179 <P><B><A NAME=2.1.1.8>2.1.1.8. NuppelVideo files</A></B></P> |
180 | |
181 <P><A HREF="http://mars.tuwien.ac.at/~roman/nuppelvideo">NuppelVideo</A> | |
182 is a TV grabber tool (AFAIK:). <B>MPlayer</B> can read its <CODE>.nuv</CODE> | |
183 files (only NuppelVideo 5.0). Those files can contain uncompressed YV12, | |
184 YV12+RTJpeg compressed, YV12 RTJpeg+lzo compressed, and YV12+lzo compressed | |
185 frames, <B>MPlayer</B> decodes (and also <B>encodes</B> them with MEncoder to | |
186 DivX/etc!) them all. Seeking is under implementation.</P> | |
187 | |
188 | |
3818 | 189 <P><B><A NAME=2.1.1.9>2.1.1.9. yuv4mpeg files</A></B></P> |
190 | |
191 <P><A HREF="http://mjpeg.sourceforge.net">yuv4mpeg / yuv4mpeg2</A> is | |
192 also a fileformat for TV grabbing, or so :) I know only one thing about it: | |
193 we support it.</P> | |
194 | |
195 | |
2745 | 196 <P><B><A NAME=2.1.2>2.1.2. Audio formats</A></B></P> |
197 | |
198 <P>Currently <B>MPlayer</B> is still a <B>Movie</B> and not a <B>Media</B> | |
199 player, thus the pure audio formats (for example MP3, WAV, audio ASF) are | |
200 unplayable. Use <A HREF="http://www.xmms.org">xmms</A>, <A HREF="http://www.mpg123.de">mpg123</A> | |
201 or whatever.</P> | |
202 | |
203 </BODY> | |
204 </HTML> |