by looking at all available elements in a system. This process is called
autoplugging, and &GStreamer; contains high-quality autopluggers. If
you're looking for an autoplugger, don't read any further and go to
- <xref linkend="chapter-components"/>. This chapter will explain the
+ <xref linkend="chapter-playback-components"/>. This chapter will explain the
<emphasis>concept</emphasis> of autoplugging and typefinding. It will
explain what systems &GStreamer; includes to dynamically detect the
type of a media stream, and how to generate a pipeline of decoder
<sect1 id="section-dynamic">
<title>Dynamically autoplugging a pipeline</title>
<para>
- See <xref linkend="chapter-components"/> for using the high level
- object that you can use to dynamically construct pipelines.
+ See <xref linkend="chapter-playback-components"/> for using the high
+ level object that you can use to dynamically construct pipelines.
</para>
</sect1>
</chapter>
-<chapter id="chapter-components">
- <title>Components</title>
+<chapter id="chapter-playback-components">
+ <title>Playback Components</title>
<para>
&GStreamer; includes several higher-level components to simplify an
command <command>gst-launch-1.0 filesrc location=file.ogg ! decodebin
! audioconvert ! audioresample ! autoaudiosink</command>.
</para>
+ </sect1>
+
+ <sect1 id="section-components-uridecodebin">
+ <title>URIDecodebin</title>
<para>
The uridecodebin element is very similar to decodebin, only that it
automatically plugs a source plugin based on the protocol of the URI
given.
</para>
+ <para>
+ Uridecodebin will also automatically insert buffering elements when
+ the uri is a slow network source. The buffering element will post
+ BUFFERING messages that the application needs to handle as explained
+ in <xref linkend="chapter-buffering"/>.
+ The following properties can be used to configure the buffering method:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The buffer-size property allows you to configure a maximum size in
+ bytes for the buffer element.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The buffer-duration property allows you to configure a maximum size
+ in time for the buffer element. The time will be estimated based on
+ the bitrate of the network.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ With the download property you can enable the download buffering
+ method as described in <xref linkend="section-buffering-download"/>.
+ Setting this option to TRUE will only enable download buffering
+ for selected formats such as quicktime, flash video, avi and
+ webm.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ You can also enable buffering on the parsed/demuxed data with the
+ use-buffering property. This is interesting to enable buffering
+ on slower random access media such as a network file server.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ URIDecodebin can be easily tested on the commandline, e.g. by using the
+ command <command>gst-launch-1.0 uridecodebin uri=file:///file.ogg !
+ ! audioconvert ! audioresample ! autoaudiosink</command>.
+ </para>
</sect1>
-
</chapter>
effectswitch.c: $(top_srcdir)/docs/manual/advanced-dataaccess.xml
$(PERL_PATH) $(srcdir)/extract.pl $@ $<
-playbin.c decodebin.c: $(top_srcdir)/docs/manual/highlevel-components.xml
+playbin.c decodebin.c: $(top_srcdir)/docs/manual/highlevel-playback.xml
$(PERL_PATH) $(srcdir)/extract.pl $@ $<
testrtpool.c: $(top_srcdir)/docs/manual/advanced-threads.xml