summaryrefslogtreecommitdiffstats
path: root/DOCS/formats.html
blob: e6cc328651afc2ca6b338c3d86391b373b470988 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<HTML>
<BODY BGCOLOR=WHITE>

<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>


<P><B><A NAME=2.1>2.1. Supported formats</A></B></P>

<P><B>MPlayer</B> can read/play from the following devices/formats:<BR>
<UL>
<LI> <A HREF="#2.1.1.1">VCD</A> (Video CD) directly from CD-ROM or from CDRwin's .bin image file     
<LI> <A HREF="#2.1.1.1">DVD</A>, directly from your DVD disk, using libdvdread for decryption
<LI> <A HREF="#2.1.1.1">MPEG 1/2</A> System Stream (PS/PES/VOB) and Elementary Stream (ES) file
     formats
<LI> <A HREF="#2.1.1.2">RIFF AVI</A> file format
<LI> <A HREF="#2.1.1.3">ASF/WMV</A> 1.0 file format
<LI> <A HREF="#2.1.1.4">QT/MOV</A> file format with (un)compressed headers
<LI> <A HREF="#2.1.1.5">VIVO</A> format (.viv files)
<LI> supports <A HREF="documentation.html#3.3">reading from stdin</A>, or network via HTTP
</UL></P>

<P>Note: about realmedia (.ra/.rm) support read the FAQ!</P>

<P>It's important to clarify a popular mistake. When people see a file with
<B>.AVI</B> extension, they instantly declare that isn't an MPEG file.
That's not true. At least not entirely. If you tell them that such a file
can contain MPEG1 video, they laugh at you. Feel free to kick their dumbass
faces, then tell them to RTFM.</P>

<P>You see, a <B>codec</B> isn't equal to a <B>file format</B>.<BR>
Video <B>codecs</B> are: MPEG1, MPEG2, DivX, Indeo5, 3ivx.<BR>
Video <B>formats</B> are: MPG, VOB, AVI, ASF.<BR>
</P>

<P>In theory, you can happily put an OpenDivX video and MP3 audio
into a <B>.MPG</B> format file. Though most players won't play it, since
they expect MPEG1 video and MP2 audio (<B>.MPG</B> doesn't have the
necessary fields to describe its video and audio streams, like <B>.AVI</B>
does). Or put MPEG1 video to an .AVI. For example <A HREF="http://ffmpeg.sourceforge.net">ffmpeg</A> can
create these files.</P>

<P>Audio <B>codecs</B> and <B>formats</B> are basically the same terms.</P>


<P><B><A NAME=2.1.1>2.1.1. Video formats</A></B></P>


<P><B><A NAME=2.1.1.1>2.1.1.1. MPG, VOB, DAT files</A></B></P>

<P>
<LI>MPG : this is the most <B>basic</B> form of MPEG file formats. Contains
MPEG1 video, and MP2 audio.</LI>
<LI>VOB : this is the MPEG file format on <B>DVD</B>s. Contains optionally
encoded MPEG2 video, and usually AC3 audio.<BR>
<B>Read the <A HREF="cd-dvd.html#4.2">DVD section</A> !</B></LI>
<LI>DAT : this is the MPEG file format on <B>Video CD</B>s. It's the same
as the MPG, but due to the nature VCDs are created and Linux is designed,
the DAT files can't be played nor copied from VCDs. You have to use the
<CODE>-vcd</CODE> option to play the VideoCD.</LI>
</P>

<P>One important feature for 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
it's played at 640x480. AVI files don't have this field, so one has to
scale it during encoding.</P>


<P><B><A NAME=2.1.1.2>2.1.1.2. AVI files</A></B></P>

<P>Designed by Micro$oft, the <B>AVI (Audio Video Interleaved)</B> is a
widespread multipurpose format, currently used mostly for DivX and DivX4
videos. Has many known drawbacks, and inabilities (for example in streaming).
Has support for one video stream, and 99 audio streams. Can be as big as
2Gb. There exists an extension for it to be bigger, called <B>OpenDMS</B>.
M$ currently strongly discourages its use and propagates ASF/WMV. Not if
anybody cares.<BR>
<B>NOTE</B> : DV cameras can create two types of AVI format, one is the usual and
playable, the other is neither.</P>


<P><B><A NAME=2.1.1.3>2.1.1.3. ASF/WMV files</A></B></P>

<P>ASF is a new very undocumented fileformat from M$, and WMV is its
successor. They are very commercial, and anyone who writes an opensource
parser for them, soon meets certain doom. While creating the parser, it
was obvious to see how bulky, shit, and unusable they are. Not if anybody
would expect something else from M$.


<P><B><A NAME=2.1.1.4>2.1.1.4. QT/MOV files</A></B></P>

<P>They are Apple's formats. Not much to say, basically well designed,
multipurpose, streamable, many features etc. Kinda hard to find documentation,
but we think the parser is perfect.

<P><B><A NAME=2.1.1.5>2.1.1.5. VIV files</A></B></P>

<P>Hey this is new code in <B>MPlayer</B>, be gentle! Seeking is
currently nonexistent, audio too. TODO : complete this section.</P>


<P><B><A NAME=2.1.2>2.1.2. Audio formats</A></B></P>

<P>Currently <B>MPlayer</B> is still a <B>Movie</B> and not a <B>Media</B>
player, thus the pure audio formats (for example MP3, WAV, audio ASF) are
unplayable. Use <A HREF="http://www.xmms.org">xmms</A>, <A HREF="http://www.mpg123.de">mpg123</A>
or whatever.</P>

</BODY>
</HTML>