new proggy I never checked in
[platform/upstream/gstreamer.git] / docs / manual / advanced-schedulers.xml
1 <chapter id="cha-scheduler">
2   <title>Understanding schedulers</title>
3   <para> 
4     The scheduler is responsible for managing the plugins at runtime. Its
5     main responsibilities are:
6     <itemizedlist>
7       <listitem>
8         <para>
9           Preparing the plugins so they can be scheduled. 
10         </para>
11       </listitem>
12       <listitem>
13         <para>
14           Monitoring state changes and enabling/disabling the element in the
15           chain.
16         </para>
17       </listitem>
18       <listitem>
19         <para>
20           Choosing an element as the entry point for the pipeline.
21         </para>
22       </listitem>
23       <listitem>
24         <para>
25           Selecting and distributing the global clock.
26         </para>
27       </listitem>
28     </itemizedlist>
29   </para>
30   <para> 
31     The scheduler is a plugable component; this means that alternative
32     schedulers can be written and plugged into GStreamer. The default scheduler
33     uses cothreads to schedule the plugins in a pipeline. Cothreads are fast
34     and lightweight user-space threads.
35   </para>
36   <para> 
37     There is usually no need to interact with the scheduler directly, however
38     in some cases it is feasible to set a specific clock or force a specific
39     plugin as the entry point in the pipeline.
40   </para>
41
42 </chapter>