mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-11 20:01:35 +00:00
docs/random/mimetypes: Update docs to point to correct elements for various mimetypes, and some more errors pointed o...
Original commit message from CVS: 2004-01-29 Ronald Bultje <rbultje@ronald.bitfreak.net> * docs/random/mimetypes: Update docs to point to correct elements for various mimetypes, and some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier) <stephane.loeuillet@tiscali.fr>.
This commit is contained in:
parent
7a5223b57a
commit
520d5c37f5
2 changed files with 43 additions and 109 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2004-01-29 Ronald Bultje <rbultje@ronald.bitfreak.net>
|
||||||
|
|
||||||
|
* docs/random/mimetypes:
|
||||||
|
Update docs to point to correct elements for various mimetypes, and
|
||||||
|
some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
|
||||||
|
<stephane.loeuillet@tiscali.fr>.
|
||||||
|
|
||||||
2004-01-28 David Schleef <ds@schleef.org>
|
2004-01-28 David Schleef <ds@schleef.org>
|
||||||
|
|
||||||
* docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
|
* docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
|
||||||
|
|
|
@ -22,20 +22,14 @@ key/value pairs).
|
||||||
An example of a MIME type is 'video/mpeg'. A corresponding GstCaps could be
|
An example of a MIME type is 'video/mpeg'. A corresponding GstCaps could be
|
||||||
created using code:
|
created using code:
|
||||||
|
|
||||||
GstCaps *caps = gst_caps_new("video_mpeg_type",
|
GstCaps *caps = gst_caps_new_simple ("video/mpeg",
|
||||||
"video/mpeg",
|
"width", G_TYPE_INT, 384,
|
||||||
gst_props_new("width", GST_PROPS_INT(384),
|
"height", G_TYPE_INT, 288,
|
||||||
"height", GST_PROPS_INT(288),
|
NULL);
|
||||||
NULL));
|
|
||||||
or by using a macro:
|
|
||||||
|
|
||||||
GstCaps *caps = GST_CAPS_NEW("video_mpeg_type",
|
MIME types and their corresponding properties are of major importance in
|
||||||
"video/mpeg",
|
GStreamer for uniquely identifying media streams. Therefore, we define them
|
||||||
"width", GST_PROPS_INT(384),
|
per media type. All GStreamer plugins should keep to this definition.
|
||||||
"height", GST_PROPS_INT(288));
|
|
||||||
|
|
||||||
Obviously, MIME types and their corresponding properties are of major importance
|
|
||||||
in GStreamer for uniquely identifying media streams.
|
|
||||||
|
|
||||||
Official MIME media types are assigned by the IANA. Current assignments are at
|
Official MIME media types are assigned by the IANA. Current assignments are at
|
||||||
http://www.iana.org/assignments/media-types/.
|
http://www.iana.org/assignments/media-types/.
|
||||||
|
@ -100,14 +94,14 @@ Container formats
|
||||||
3 - MPEG (MPEG LA)
|
3 - MPEG (MPEG LA)
|
||||||
MIME type: video/mpeg
|
MIME type: video/mpeg
|
||||||
Properties: 'systemstream' = TRUE (BOOLEAN)
|
Properties: 'systemstream' = TRUE (BOOLEAN)
|
||||||
Parser: mp1videoparse
|
Parser: mpegdemux
|
||||||
Formatter:
|
Formatter: mplex
|
||||||
|
|
||||||
4 - ASF (Microsoft)
|
4 - ASF (Microsoft)
|
||||||
MIME type: video/x-ms-asf
|
MIME type: video/x-ms-asf
|
||||||
Properties:
|
Properties:
|
||||||
Parser: asfdemux
|
Parser: asfdemux
|
||||||
Formatter:
|
Formatter: asfmux
|
||||||
|
|
||||||
5 - WAV (PCM)
|
5 - WAV (PCM)
|
||||||
MIME type: audio/x-wav
|
MIME type: audio/x-wav
|
||||||
|
@ -130,14 +124,14 @@ Container formats
|
||||||
8 - Ogg (Xiph)
|
8 - Ogg (Xiph)
|
||||||
MIME type: application/ogg
|
MIME type: application/ogg
|
||||||
Properties:
|
Properties:
|
||||||
Parser: vorbisfile
|
Parser: oggdemux
|
||||||
Formatter: vorbisenc
|
Formatter:
|
||||||
|
|
||||||
9 - Matroska
|
9 - Matroska
|
||||||
MIME type: video/x-mkv
|
MIME type: video/x-mkv
|
||||||
Properties:
|
Properties:
|
||||||
Parser:
|
Parser: matroskademux
|
||||||
Formatter:
|
Formatter: matroskamux
|
||||||
|
|
||||||
10 - Shockwave (Macromedia)
|
10 - Shockwave (Macromedia)
|
||||||
MIME type: application/x-shockwave-flash
|
MIME type: application/x-shockwave-flash
|
||||||
|
@ -183,7 +177,8 @@ Container formats
|
||||||
|
|
||||||
Please note that we try to keep these MIME types as similar as possible to the
|
Please note that we try to keep these MIME types as similar as possible to the
|
||||||
MIME types used as standards in Gnome (Gnome-VFS/Nautilus) and KDE
|
MIME types used as standards in Gnome (Gnome-VFS/Nautilus) and KDE
|
||||||
(Konqueror).
|
(Konqueror). Both will (in future) stick to a shared-mime-info database that
|
||||||
|
is hosted on freedesktop.org, and bases itself on IANA.
|
||||||
|
|
||||||
Also, there is a very thin line between audio codecs and audio containers
|
Also, there is a very thin line between audio codecs and audio containers
|
||||||
(take mp3 vs. sid, etc.). This is just a per-case thing right now and needs to
|
(take mp3 vs. sid, etc.). This is just a per-case thing right now and needs to
|
||||||
|
@ -216,8 +211,8 @@ framerate = 0 - MAXFLOAT (FLOAT)
|
||||||
Properties:
|
Properties:
|
||||||
Optional properties: divxversion = 3/4/5 (INT)
|
Optional properties: divxversion = 3/4/5 (INT)
|
||||||
Known fourccs: DIV3, DIV4, DIV5, DIVX, DX50, DIVX, divx
|
Known fourccs: DIV3, DIV4, DIV5, DIVX, DX50, DIVX, divx
|
||||||
Encoder:
|
Encoder: divxenc
|
||||||
Decoder: dvdreadsrc, dvdnavsrc
|
Decoder: divxdec, ffdec_mpeg4
|
||||||
|
|
||||||
3 - Microsoft MPEG 4.1, 4.2 and 4.3
|
3 - Microsoft MPEG 4.1, 4.2 and 4.3
|
||||||
MIME type: video/x-msmpeg
|
MIME type: video/x-msmpeg
|
||||||
|
@ -231,14 +226,14 @@ framerate = 0 - MAXFLOAT (FLOAT)
|
||||||
MIME type: video/x-jpeg
|
MIME type: video/x-jpeg
|
||||||
Properties:
|
Properties:
|
||||||
Known fourccs: MJPG (YUY2 MJPEG), JPEG (any), PIXL (Pinnacle/Miro), VIXL
|
Known fourccs: MJPG (YUY2 MJPEG), JPEG (any), PIXL (Pinnacle/Miro), VIXL
|
||||||
Encoder:
|
Encoder: jpegenc
|
||||||
Decoder:
|
Decoder: jpegdec, ffdec_mjpeg
|
||||||
|
|
||||||
5 - Sorensen (Quicktime - SVQ1/SVQ3)
|
5 - Sorensen (Quicktime - SVQ1/SVQ3)
|
||||||
MIME types: video/x-svq
|
MIME types: video/x-svq
|
||||||
Properties: svqversion = 1/3 (INT)
|
Properties: svqversion = 1/3 (INT)
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_svq1, ffdec_svq3
|
||||||
|
|
||||||
6 - H263 and related codecs
|
6 - H263 and related codecs
|
||||||
MIME type: video/x-h263
|
MIME type: video/x-h263
|
||||||
|
@ -252,7 +247,7 @@ framerate = 0 - MAXFLOAT (FLOAT)
|
||||||
Properties: systemstream = FALSE (BOOLEAN)
|
Properties: systemstream = FALSE (BOOLEAN)
|
||||||
Known fourccs: RV10, RV20, RV30
|
Known fourccs: RV10, RV20, RV30
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder: rmdemux
|
Decoder:
|
||||||
|
|
||||||
8 - Digital Video (DV)
|
8 - Digital Video (DV)
|
||||||
MIME type: video/x-dv
|
MIME type: video/x-dv
|
||||||
|
@ -265,14 +260,14 @@ framerate = 0 - MAXFLOAT (FLOAT)
|
||||||
MIME type: video/x-wmv
|
MIME type: video/x-wmv
|
||||||
Properties: wmvversion = 1/2 (INT)
|
Properties: wmvversion = 1/2 (INT)
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_wmv1, ffdec_wmv2
|
||||||
|
|
||||||
10 - XviD (xvid.org)
|
10 - XviD (xvid.org)
|
||||||
MIME type: video/x-xvid
|
MIME type: video/x-xvid
|
||||||
Properties:
|
Properties:
|
||||||
Known fourccs: xvid, XVID
|
Known fourccs: xvid, XVID
|
||||||
Encoder:
|
Encoder: xvidenc
|
||||||
Decoder:
|
Decoder: xviddec, ffdec_mpeg4
|
||||||
|
|
||||||
11 - 3IVX (3ixv.org)
|
11 - 3IVX (3ixv.org)
|
||||||
MIME type: video/x-3ivx
|
MIME type: video/x-3ivx
|
||||||
|
@ -291,26 +286,26 @@ framerate = 0 - MAXFLOAT (FLOAT)
|
||||||
MIME type: video/x-vp3
|
MIME type: video/x-vp3
|
||||||
Properties:
|
Properties:
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_vp3
|
||||||
|
|
||||||
14 - Ogg/Theora (Xiph, VP3-like)
|
14 - Ogg/Theora (Xiph, VP3-like)
|
||||||
MIME type: video/x-theora
|
MIME type: video/x-theora
|
||||||
Properties:
|
Properties:
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_vp3
|
||||||
|
|
||||||
15 - Huffyuv
|
15 - Huffyuv
|
||||||
MIME type: video/x-huffyuv
|
MIME type: video/x-huffyuv
|
||||||
Properties:
|
Properties:
|
||||||
Known fourccs: HFYU
|
Known fourccs: HFYU
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_hfyu
|
||||||
|
|
||||||
16 - FF Video 1 (FFMPEG)
|
16 - FF Video 1 (FFMPEG)
|
||||||
MIME type: video/x-ffv
|
MIME type: video/x-ffv
|
||||||
Properties: ffvversion = 1 (INT)
|
Properties: ffvversion = 1 (INT)
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_ffv1
|
||||||
|
|
||||||
17 - H264
|
17 - H264
|
||||||
MIME type: video/x-h264
|
MIME type: video/x-h264
|
||||||
|
@ -341,76 +336,6 @@ TODO: divx4/divx5/xvid/3ivx/mpeg-4 - how to make them overlap? (all
|
||||||
|
|
||||||
3c) Audio Codecs
|
3c) Audio Codecs
|
||||||
----------------
|
----------------
|
||||||
for convenience, the two-byte hexcodes (as are being used for identification
|
|
||||||
in AVI files) are also given
|
|
||||||
|
|
||||||
Preface - (optional) properties for all audio formats:
|
|
||||||
'rate' = X (int) <- sampling rate
|
|
||||||
'channels' = X (int) <- number of audio channels
|
|
||||||
|
|
||||||
1 - Raw Audio (integer format)
|
|
||||||
mimetype: audio/x-raw-int
|
|
||||||
properties: 'width' = X (INT) <- memory bits per sample
|
|
||||||
'depth' = X (INT) <- used bits per sample
|
|
||||||
'signed' = X (BOOLEAN)
|
|
||||||
'endianness' = 1234/4321 (INT)
|
|
||||||
|
|
||||||
2 - Raw Audio (floating point format)
|
|
||||||
mimetype: audio/x-raw-float
|
|
||||||
properties: 'width' = X (INT) <- 32=float, 64=double
|
|
||||||
'endianness' = 1234/4321 (INT) <- use G_BIG/LITTLE_ENDIAN!
|
|
||||||
'buffer-frames' = (INT)
|
|
||||||
number of samples per buffer, 0 means undefined
|
|
||||||
With regards to the signal: 0.0 represents no signal, +/- 1.0 is 0 dB.
|
|
||||||
|
|
||||||
3 - Alaw Raw Audio
|
|
||||||
mimetype: audio/x-alaw
|
|
||||||
|
|
||||||
4 - Mulaw Raw Audio
|
|
||||||
mimetype: audio/x-mulaw
|
|
||||||
|
|
||||||
5 - MPEG-1 layer 1/2/3 audio
|
|
||||||
mimetype: audio/mpeg
|
|
||||||
properties: 'mpegversion' = 1 (INT)
|
|
||||||
'layer' = 1/2/3 (INT)
|
|
||||||
|
|
||||||
6 - Ogg/Vorbis
|
|
||||||
mimetype: audio/x-vorbis
|
|
||||||
|
|
||||||
7 - Windows Media Audio 1 and 2 (WMA)
|
|
||||||
mimetype: audio/x-wma
|
|
||||||
properties: 'wmaversion' = 1/2 (INT)
|
|
||||||
|
|
||||||
8 - AC3
|
|
||||||
mimetype: audio/x-ac3
|
|
||||||
|
|
||||||
9 - FLAC (Free Lossless Audio Codec)
|
|
||||||
mimetype: audio/x-flac
|
|
||||||
|
|
||||||
10 - MACE 3/6 (Quicktime audio)
|
|
||||||
mimetype: audio/x-mace
|
|
||||||
properties: 'maceversion' = 3/6 (INT)
|
|
||||||
|
|
||||||
11 - MPEG-4 AAC
|
|
||||||
mimetype: audio/mpeg
|
|
||||||
properties: 'mpegversion' = 4 (INT)
|
|
||||||
|
|
||||||
12 - (IMA) ADPCM (Quicktime/WAV/Microsoft/4XM)
|
|
||||||
mimetype: audio/x-adpcm
|
|
||||||
properties: 'layout' = "quicktime"/"wav"/"microsoft"/"4xm" (STRING)
|
|
||||||
|
|
||||||
Note: the difference between each of these is the number of
|
|
||||||
samples packaed together per channel. For WAV, for
|
|
||||||
example, each sample is 4 bit, and 8 samples are packed
|
|
||||||
together per channel in the bytestream. For the others,
|
|
||||||
refer to technical documentation.
|
|
||||||
We probably want to distinguish these differently, but
|
|
||||||
I don't know how, yet.
|
|
||||||
|
|
||||||
13 - RealAudio (Real)
|
|
||||||
mimetype: audio/x-pn-realaudio
|
|
||||||
properties: 'bitrate' = 14400/28800 (INT)
|
|
||||||
|
|
||||||
For convenience, the two-byte hexcodes (as used for identification in AVI files)
|
For convenience, the two-byte hexcodes (as used for identification in AVI files)
|
||||||
are also given.
|
are also given.
|
||||||
|
|
||||||
|
@ -447,13 +372,13 @@ channels = 1 - MAXINT (INT, number of audio channels)
|
||||||
MIME type: audio/x-wma
|
MIME type: audio/x-wma
|
||||||
Properties: wmaversion = 1/2 (INT)
|
Properties: wmaversion = 1/2 (INT)
|
||||||
Encoder:
|
Encoder:
|
||||||
Decoder:
|
Decoder: ffdec_wmav1, ffdec_wmav2
|
||||||
|
|
||||||
6 - AC3
|
6 - AC3
|
||||||
MIME type: audio/x-ac3
|
MIME type: audio/x-ac3
|
||||||
Properties:
|
Properties:
|
||||||
Encoder:
|
Encoder: ffenc_ac3
|
||||||
Decoder:
|
Decoder: a52dec
|
||||||
|
|
||||||
7 - FLAC (Free Lossless Audio Codec)
|
7 - FLAC (Free Lossless Audio Codec)
|
||||||
MIME type: audio/x-flac
|
MIME type: audio/x-flac
|
||||||
|
@ -470,8 +395,8 @@ channels = 1 - MAXINT (INT, number of audio channels)
|
||||||
9 - MPEG-4 AAC
|
9 - MPEG-4 AAC
|
||||||
MIME type: audio/mpeg
|
MIME type: audio/mpeg
|
||||||
Properties: mpegversion = 4 (INT)
|
Properties: mpegversion = 4 (INT)
|
||||||
Encoder:
|
Encoder: faac
|
||||||
Decoder:
|
Decoder: faad
|
||||||
|
|
||||||
10 - (IMA) ADPCM (Quicktime/WAV/Microsoft/4XM)
|
10 - (IMA) ADPCM (Quicktime/WAV/Microsoft/4XM)
|
||||||
MIME type: audio/x-adpcm
|
MIME type: audio/x-adpcm
|
||||||
|
@ -619,6 +544,8 @@ endianness = 1234/4321 (INT) <- use G_BIG/LITTLE_ENDIAN
|
||||||
4 - Raw audio (floating point format)
|
4 - Raw audio (floating point format)
|
||||||
MIME type: audio/x-raw-float
|
MIME type: audio/x-raw-float
|
||||||
Properties: width = 32/64 (INT)
|
Properties: width = 32/64 (INT)
|
||||||
|
endianness: 1234/4321 (INT)
|
||||||
|
buffer-frames: number of audio frames per buffer, 0=undefined
|
||||||
|
|
||||||
Plugin Guidelines
|
Plugin Guidelines
|
||||||
=================
|
=================
|
||||||
|
|
Loading…
Reference in a new issue