mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 11:41:09 +00:00
docs: updates
MIME-type -> Media type Fix some old gst-inspect output
This commit is contained in:
parent
9bc261f6d9
commit
a87e95f38f
8 changed files with 143 additions and 80 deletions
|
@ -194,75 +194,137 @@ gst-inspect mad
|
||||||
|
|
||||||
<screen>
|
<screen>
|
||||||
Factory Details:
|
Factory Details:
|
||||||
Long name: Audio Sink (OSS)
|
Rank: secondary (128)
|
||||||
Class: Sink/Audio
|
Long-name: Audio Sink (OSS)
|
||||||
|
Klass: Sink/Audio
|
||||||
Description: Output to a sound card via OSS
|
Description: Output to a sound card via OSS
|
||||||
Version: 0.3.3.1
|
Author: Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim.taymans@chello.be>
|
||||||
Author(s): Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim.taymans@chello.be>
|
|
||||||
Copyright: (C) 1999
|
Plugin Details:
|
||||||
|
Name: ossaudio
|
||||||
|
Description: OSS (Open Sound System) support for GStreamer
|
||||||
|
Filename: /home/wim/gst/head/gst-plugins-good/sys/oss/.libs/libgstossaudio.so
|
||||||
|
Version: 1.0.0.1
|
||||||
|
License: LGPL
|
||||||
|
Source module: gst-plugins-good
|
||||||
|
Source release date: 2012-09-25 12:52 (UTC)
|
||||||
|
Binary package: GStreamer Good Plug-ins git
|
||||||
|
Origin URL: Unknown package origin
|
||||||
|
|
||||||
GObject
|
GObject
|
||||||
|
+----GInitiallyUnowned
|
||||||
+----GstObject
|
+----GstObject
|
||||||
+----GstElement
|
+----GstElement
|
||||||
|
+----GstBaseSink
|
||||||
|
+----GstAudioBaseSink
|
||||||
|
+----GstAudioSink
|
||||||
+----GstOssSink
|
+----GstOssSink
|
||||||
|
|
||||||
Pad Templates:
|
Pad Templates:
|
||||||
SINK template: 'sink'
|
SINK template: 'sink'
|
||||||
Availability: Always
|
Availability: Always
|
||||||
Capabilities:
|
Capabilities:
|
||||||
'osssink_sink':
|
audio/x-raw
|
||||||
MIME type: 'audio/raw':
|
format: { S16LE, U16LE, S8, U8 }
|
||||||
format: String: int
|
layout: interleaved
|
||||||
endianness: Integer: 1234
|
rate: [ 1, 2147483647 ]
|
||||||
width: List:
|
channels: 1
|
||||||
Integer: 8
|
audio/x-raw
|
||||||
Integer: 16
|
format: { S16LE, U16LE, S8, U8 }
|
||||||
depth: List:
|
layout: interleaved
|
||||||
Integer: 8
|
rate: [ 1, 2147483647 ]
|
||||||
Integer: 16
|
channels: 2
|
||||||
channels: Integer range: 1 - 2
|
channel-mask: 0x0000000000000003
|
||||||
law: Integer: 0
|
|
||||||
signed: List:
|
|
||||||
Boolean: FALSE
|
|
||||||
Boolean: TRUE
|
|
||||||
rate: Integer range: 1000 - 48000
|
|
||||||
|
|
||||||
|
|
||||||
Element Flags:
|
Element Flags:
|
||||||
GST_ELEMENT_THREADSUGGESTED
|
no flags set
|
||||||
|
|
||||||
Element Implementation:
|
Element Implementation:
|
||||||
No loopfunc(), must be chain-based or not configured yet
|
Has change_state() function: gst_audio_base_sink_change_state
|
||||||
Has change_state() function: gst_osssink_change_state
|
|
||||||
Has custom save_thyself() function: gst_element_save_thyself
|
|
||||||
Has custom restore_thyself() function: gst_element_restore_thyself
|
|
||||||
|
|
||||||
Clocking Interaction:
|
Clocking Interaction:
|
||||||
element requires a clock
|
element is supposed to provide a clock but returned NULL
|
||||||
element provides a clock: GstOssClock
|
|
||||||
|
Element has no indexing capabilities.
|
||||||
|
Element has no URI handling capabilities.
|
||||||
|
|
||||||
Pads:
|
Pads:
|
||||||
SINK: 'sink'
|
SINK: 'sink'
|
||||||
Implementation:
|
Implementation:
|
||||||
Has chainfunc(): 0x40056fc0
|
Has chainfunc(): gst_base_sink_chain
|
||||||
|
Has custom eventfunc(): gst_base_sink_event
|
||||||
|
Has custom queryfunc(): gst_base_sink_sink_query
|
||||||
|
Has custom iterintlinkfunc(): gst_pad_iterate_internal_links_default
|
||||||
Pad Template: 'sink'
|
Pad Template: 'sink'
|
||||||
|
|
||||||
Element Arguments:
|
Element Properties:
|
||||||
name : String (Default "element")
|
name : The name of the object
|
||||||
device : String (Default "/dev/dsp")
|
flags: readable, writable
|
||||||
mute : Boolean (Default false)
|
String. Default: "osssink0"
|
||||||
format : Integer (Default 16)
|
parent : The parent of the object
|
||||||
channels : Enum "GstAudiosinkChannels" (default 1)
|
flags: readable, writable
|
||||||
(0): Silence
|
Object of type "GstObject"
|
||||||
(1): Mono
|
sync : Sync on the clock
|
||||||
(2): Stereo
|
flags: readable, writable
|
||||||
frequency : Integer (Default 11025)
|
Boolean. Default: true
|
||||||
fragment : Integer (Default 6)
|
max-lateness : Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)
|
||||||
buffer-size : Integer (Default 4096)
|
flags: readable, writable
|
||||||
|
Integer64. Range: -1 - 9223372036854775807 Default: -1
|
||||||
Element Signals:
|
qos : Generate Quality-of-Service events upstream
|
||||||
"handoff" : void user_function (GstOssSink* object,
|
flags: readable, writable
|
||||||
gpointer user_data);
|
Boolean. Default: false
|
||||||
|
async : Go asynchronously to PAUSED
|
||||||
|
flags: readable, writable
|
||||||
|
Boolean. Default: true
|
||||||
|
ts-offset : Timestamp offset in nanoseconds
|
||||||
|
flags: readable, writable
|
||||||
|
Integer64. Range: -9223372036854775808 - 9223372036854775807 Default: 0
|
||||||
|
enable-last-sample : Enable the last-sample property
|
||||||
|
flags: readable, writable
|
||||||
|
Boolean. Default: false
|
||||||
|
last-sample : The last sample received in the sink
|
||||||
|
flags: readable
|
||||||
|
Boxed pointer of type "GstSample"
|
||||||
|
blocksize : Size in bytes to pull per buffer (0 = default)
|
||||||
|
flags: readable, writable
|
||||||
|
Unsigned Integer. Range: 0 - 4294967295 Default: 4096
|
||||||
|
render-delay : Additional render delay of the sink in nanoseconds
|
||||||
|
flags: readable, writable
|
||||||
|
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
|
||||||
|
throttle-time : The time to keep between rendered buffers
|
||||||
|
flags: readable, writable
|
||||||
|
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
|
||||||
|
buffer-time : Size of audio buffer in microseconds, this is the minimum latency that the sink reports
|
||||||
|
flags: readable, writable
|
||||||
|
Integer64. Range: 1 - 9223372036854775807 Default: 200000
|
||||||
|
latency-time : The minimum amount of data to write in each iteration in microseconds
|
||||||
|
flags: readable, writable
|
||||||
|
Integer64. Range: 1 - 9223372036854775807 Default: 10000
|
||||||
|
provide-clock : Provide a clock to be used as the global pipeline clock
|
||||||
|
flags: readable, writable
|
||||||
|
Boolean. Default: true
|
||||||
|
slave-method : Algorithm to use to match the rate of the masterclock
|
||||||
|
flags: readable, writable
|
||||||
|
Enum "GstAudioBaseSinkSlaveMethod" Default: 1, "skew"
|
||||||
|
(0): resample - GST_AUDIO_BASE_SINK_SLAVE_RESAMPLE
|
||||||
|
(1): skew - GST_AUDIO_BASE_SINK_SLAVE_SKEW
|
||||||
|
(2): none - GST_AUDIO_BASE_SINK_SLAVE_NONE
|
||||||
|
can-activate-pull : Allow pull-based scheduling
|
||||||
|
flags: readable, writable
|
||||||
|
Boolean. Default: false
|
||||||
|
alignment-threshold : Timestamp alignment threshold in nanoseconds
|
||||||
|
flags: readable, writable
|
||||||
|
Unsigned Integer64. Range: 1 - 18446744073709551614 Default: 40000000
|
||||||
|
drift-tolerance : Tolerance for clock drift in microseconds
|
||||||
|
flags: readable, writable
|
||||||
|
Integer64. Range: 1 - 9223372036854775807 Default: 40000
|
||||||
|
discont-wait : Window of time in nanoseconds to wait before creating a discontinuity
|
||||||
|
flags: readable, writable
|
||||||
|
Unsigned Integer64. Range: 0 - 18446744073709551614 Default: 1000000000
|
||||||
|
device : OSS device (usually /dev/dspN)
|
||||||
|
flags: readable, writable
|
||||||
|
String. Default: "/dev/dsp"
|
||||||
</screen>
|
</screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
|
|
@ -241,10 +241,10 @@ link_to_multiplexer (GstPad *tolink_pad,
|
||||||
<command>gst-inspect vorbisdec</command>. You will see two pads:
|
<command>gst-inspect vorbisdec</command>. You will see two pads:
|
||||||
a source and a sink pad. Both of these pads are always available,
|
a source and a sink pad. Both of these pads are always available,
|
||||||
and both have capabilities attached to them. The sink pad will
|
and both have capabilities attached to them. The sink pad will
|
||||||
accept vorbis-encoded audio data, with the mime-type
|
accept vorbis-encoded audio data, with the media type
|
||||||
<quote>audio/x-vorbis</quote>. The source pad will be used
|
<quote>audio/x-vorbis</quote>. The source pad will be used
|
||||||
to send raw (decoded) audio samples to the next element, with
|
to send raw (decoded) audio samples to the next element, with
|
||||||
a raw audio mime-type (in this case,
|
a raw audio media type (in this case,
|
||||||
<quote>audio/x-raw</quote>). The source pad will also
|
<quote>audio/x-raw</quote>). The source pad will also
|
||||||
contain properties for the audio samplerate and the amount of
|
contain properties for the audio samplerate and the amount of
|
||||||
channels, plus some more that you don't need to worry about
|
channels, plus some more that you don't need to worry about
|
||||||
|
|
|
@ -60,13 +60,14 @@
|
||||||
<para>
|
<para>
|
||||||
If you need a new format that has not yet been defined in our <xref
|
If you need a new format that has not yet been defined in our <xref
|
||||||
linkend="section-types-definitions"/>, you will want to have some general
|
linkend="section-types-definitions"/>, you will want to have some general
|
||||||
guidelines on mimetype naming, properties and such. A mimetype would
|
guidelines on media type naming, properties and such. A media type would
|
||||||
ideally be one defined by IANA; else, it should be in the form
|
ideally be equivalent to the Mime-type defined by IANA; else, it should
|
||||||
type/x-name, where type is the sort of data this mimetype handles (audio,
|
be in the form type/x-name, where type is the sort of data this media type
|
||||||
video, ...) and name should be something specific for this specific type.
|
handles (audio, video, ...) and name should be something specific for
|
||||||
Audio and video mimetypes should try to support the general audio/video
|
this specific type. Audio and video media types should try to support the
|
||||||
properties (see the list), and can use their own properties, too. To get
|
general audio/video properties (see the list), and can use their own
|
||||||
an idea of what properties we think are useful, see (again) the list.
|
properties, too. To get an idea of what properties we think are useful,
|
||||||
|
see (again) the list.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
Take your time to find the right set of properties for your type. There
|
Take your time to find the right set of properties for your type. There
|
||||||
|
@ -206,7 +207,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
<entry>Mime Type</entry>
|
<entry>Media Type</entry>
|
||||||
<entry>Description</entry>
|
<entry>Description</entry>
|
||||||
<entry>Property</entry>
|
<entry>Property</entry>
|
||||||
<entry>Property Type</entry>
|
<entry>Property Type</entry>
|
||||||
|
@ -634,7 +635,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
<entry>Mime Type</entry>
|
<entry>Media Type</entry>
|
||||||
<entry>Description</entry>
|
<entry>Description</entry>
|
||||||
<entry>Property</entry>
|
<entry>Property</entry>
|
||||||
<entry>Property Type</entry>
|
<entry>Property Type</entry>
|
||||||
|
@ -878,7 +879,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
<entry>1, 2 or 4</entry>
|
<entry>1, 2 or 4</entry>
|
||||||
<entry>
|
<entry>
|
||||||
Version of the MPEG codec that this stream was encoded with.
|
Version of the MPEG codec that this stream was encoded with.
|
||||||
Note that we have different mimetypes for 3ivx, XviD, DivX and
|
Note that we have different media types for 3ivx, XviD, DivX and
|
||||||
"standard" ISO MPEG-4. This is <emphasis>not</emphasis> a good
|
"standard" ISO MPEG-4. This is <emphasis>not</emphasis> a good
|
||||||
thing and we're fully aware of this. However, we do not have a
|
thing and we're fully aware of this. However, we do not have a
|
||||||
solution yet.
|
solution yet.
|
||||||
|
@ -1021,7 +1022,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
<entry></entry>
|
<entry></entry>
|
||||||
<entry>
|
<entry>
|
||||||
There are currently no specific properties defined or needed for
|
There are currently no specific properties defined or needed for
|
||||||
this type. Note that we have different mimetypes for VP-3 and
|
this type. Note that we have different media types for VP-3 and
|
||||||
Theora, which is not necessarily a good idea. This could probably
|
Theora, which is not necessarily a good idea. This could probably
|
||||||
be improved.
|
be improved.
|
||||||
</entry>
|
</entry>
|
||||||
|
@ -1132,7 +1133,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
<entry>Mime Type</entry>
|
<entry>Media Type</entry>
|
||||||
<entry>Description</entry>
|
<entry>Description</entry>
|
||||||
<entry>Property</entry>
|
<entry>Property</entry>
|
||||||
<entry>Property Type</entry>
|
<entry>Property Type</entry>
|
||||||
|
@ -1281,7 +1282,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
<entry>Mime Type</entry>
|
<entry>Media Type</entry>
|
||||||
<entry>Description</entry>
|
<entry>Description</entry>
|
||||||
<entry>Property</entry>
|
<entry>Property</entry>
|
||||||
<entry>Property Type</entry>
|
<entry>Property Type</entry>
|
||||||
|
@ -1317,7 +1318,7 @@ plugin_init (GstPlugin *plugin)
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
<entry>Mime Type</entry>
|
<entry>Media Type</entry>
|
||||||
<entry>Description</entry>
|
<entry>Description</entry>
|
||||||
<entry>Property</entry>
|
<entry>Property</entry>
|
||||||
<entry>Property Type</entry>
|
<entry>Property Type</entry>
|
||||||
|
|
|
@ -360,9 +360,9 @@ gst_my_filter_init (GstMyFilter * filter)
|
||||||
The last argument in a template is its type
|
The last argument in a template is its type
|
||||||
or list of supported types. In this example, we use 'ANY', which means
|
or list of supported types. In this example, we use 'ANY', which means
|
||||||
that this element will accept all input. In real-life situations, you
|
that this element will accept all input. In real-life situations, you
|
||||||
would set a mimetype and optionally a set of properties to make sure
|
would set a media type and optionally a set of properties to make sure
|
||||||
that only supported input will come in. This representation should be
|
that only supported input will come in. This representation should be
|
||||||
a string that starts with a mimetype, then a set of comma-separates
|
a string that starts with a media type, then a set of comma-separates
|
||||||
properties with their supported values. In case of an audio filter that
|
properties with their supported values. In case of an audio filter that
|
||||||
supports raw integer 16-bit audio, mono or stereo at any samplerate, the
|
supports raw integer 16-bit audio, mono or stereo at any samplerate, the
|
||||||
correct template would look like this:
|
correct template would look like this:
|
||||||
|
|
|
@ -139,15 +139,15 @@ gst_my_filter_setcaps (GstPad *pad,
|
||||||
{
|
{
|
||||||
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
||||||
GstMyFilter *filter = GST_MY_FILTER (GST_OBJECT_PARENT (pad));
|
GstMyFilter *filter = GST_MY_FILTER (GST_OBJECT_PARENT (pad));
|
||||||
const gchar *mime;
|
const gchar *media;
|
||||||
|
|
||||||
/* Since we're an audio filter, we want to handle raw audio
|
/* Since we're an audio filter, we want to handle raw audio
|
||||||
* and from that audio type, we need to get the samplerate and
|
* and from that audio type, we need to get the samplerate and
|
||||||
* number of channels. */
|
* number of channels. */
|
||||||
mime = gst_structure_get_name (structure);
|
media = gst_structure_get_name (structure);
|
||||||
if (strcmp (mime, "audio/x-raw") != 0) {
|
if (strcmp (media, "audio/x-raw") != 0) {
|
||||||
GST_WARNING ("Wrong mimetype %s provided, we only support %s",
|
GST_WARNING ("Wrong media type %s provided, we only support %s",
|
||||||
mime, "audio/x-raw");
|
media, "audio/x-raw");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -181,9 +181,9 @@ gst_my_filter_getcaps (GstPad * pad)
|
||||||
}
|
}
|
||||||
--><!-- example-end caps.func b --></programlisting>
|
--><!-- example-end caps.func b --></programlisting>
|
||||||
<para>
|
<para>
|
||||||
In here, we check the mimetype of the provided caps. Normally, you don't
|
In here, we check the media type of the provided caps. Normally, you don't
|
||||||
need to do that in your own plugin/element, because the core does that
|
need to do that in your own plugin/element, because the core does that
|
||||||
for you. We simply use it to show how to retrieve the mimetype from a
|
for you. We simply use it to show how to retrieve the media type from a
|
||||||
provided set of caps. Types are stored in <ulink type="http"
|
provided set of caps. Types are stored in <ulink type="http"
|
||||||
url="../../gstreamer/html/gstreamer-GstStructure.html"><classname>GstStructure
|
url="../../gstreamer/html/gstreamer-GstStructure.html"><classname>GstStructure
|
||||||
</classname></ulink> internally. A <ulink
|
</classname></ulink> internally. A <ulink
|
||||||
|
|
|
@ -72,7 +72,7 @@ gst_avi_mux_audio_link (GstPad *pad,
|
||||||
{
|
{
|
||||||
GstAviMux *mux = GST_AVI_MUX (gst_pad_get_parent (pad));
|
GstAviMux *mux = GST_AVI_MUX (gst_pad_get_parent (pad));
|
||||||
GstStructure *str = gst_caps_get_structure (caps, 0);
|
GstStructure *str = gst_caps_get_structure (caps, 0);
|
||||||
const gchar *mime = gst_structure_get_name (str);
|
const gchar *media = gst_structure_get_name (str);
|
||||||
|
|
||||||
if (!strcmp (str, "audio/mpeg")) {
|
if (!strcmp (str, "audio/mpeg")) {
|
||||||
/* get version, make sure it's 1, get layer, make sure it's 1-3,
|
/* get version, make sure it's 1, get layer, make sure it's 1-3,
|
||||||
|
|
|
@ -163,10 +163,10 @@ the left of it to the element right of it.
|
||||||
|
|
||||||
.B Caps
|
.B Caps
|
||||||
|
|
||||||
MIMETYPE \fI[, PROPERTY[, PROPERTY ...]]]\fR \fI[; CAPS[; CAPS ...]]\fR
|
MEDIATYPE \fI[, PROPERTY[, PROPERTY ...]]]\fR \fI[; CAPS[; CAPS ...]]\fR
|
||||||
|
|
||||||
Creates a capability with the given mimetype and optionally with given
|
Creates a capability with the given media type and optionally with given
|
||||||
properties. The mimetype can be escaped using " or '.
|
properties. The media type can be escaped using " or '.
|
||||||
If you want to chain caps, you can add more caps in the same format afterwards.
|
If you want to chain caps, you can add more caps in the same format afterwards.
|
||||||
|
|
||||||
.B Properties
|
.B Properties
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
.TH GStreamer 1 "May 2003"
|
.TH GStreamer 1 "May 2003"
|
||||||
.SH "NAME"
|
.SH "NAME"
|
||||||
gst\-typefind - print MIME type of file
|
gst\-typefind - print Media type of file
|
||||||
.SH "SYNOPSIS"
|
.SH "SYNOPSIS"
|
||||||
.B gst\-typefind <file>
|
.B gst\-typefind <file>
|
||||||
.SH "DESCRIPTION"
|
.SH "DESCRIPTION"
|
||||||
.PP
|
.PP
|
||||||
\fIgst\-typefind\fP uses the GStreamer type finding system to
|
\fIgst\-typefind\fP uses the GStreamer type finding system to
|
||||||
determine the relevant GStreamer plugin to parse or decode \fBfile\fP,
|
determine the relevant GStreamer plugin to parse or decode \fBfile\fP,
|
||||||
and the corresponding MIME type.
|
and the corresponding media type.
|
||||||
.
|
.
|
||||||
.SH "OPTIONS"
|
.SH "OPTIONS"
|
||||||
.l
|
.l
|
||||||
|
|
Loading…
Reference in a new issue