gstreamer/docs/manual/advanced-schedulers.xml

43 lines
1.2 KiB
XML
Raw Normal View History

<chapter id="cha-scheduler">
<title>Understanding schedulers</title>
<para>
The scheduler is responsible for managing the plugins at runtime. The
main responsabilities are:
<itemizedlist>
<listitem>
<para>
Preparing the plugins so they can be scheduled.
</para>
</listitem>
<listitem>
<para>
Monitoring state changes and enabling/disabling the element in the
chain.
</para>
</listitem>
<listitem>
<para>
Choosing an element as the entry point for the pipeline.
</para>
</listitem>
<listitem>
<para>
Selecting and distributing the global clock.
</para>
</listitem>
</itemizedlist>
</para>
<para>
The scheduler is a plugable component, this means that alternative schedulers
can be written and plugged into GStreamer. The default scheduler uses cothreads
to schedule the plugins in a pipeline. Cothreads are fast and lightweight
user-space threads.
</para>
<para>
There is usually no need to interact with the scheduler directly, however it some
cases it is feasable to set a specific clock or force a specific plugin as the
entry point in the pipeline.
</para>
</chapter>