<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
]>
-<section id="implementing-media-engines">
+<chapter id="implementing-media-engines">
+<title>Implementing Rygel Media Engines</title>
+
+<section id="implementing-media-engines-overview">
+<title>Implementing Media Engines: Overview</title>
<para>
This library may be used to create Rygel media engines by
</orderedlist>
</para>
+</section>
+
+
+<section id="implementing-server-plugins-full-example">
+<title>Implementing Media Engines: Full Example</title>
+
<para>In addition, the external <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-media-engine">rygel-gst-0-10-media-engine</ulink> project provides a Rygel media engine that uses an older GStreamer version and is an example of an external Rygel media-engine implemented in C.</para>
</section>
+
+</chapter>
<!ENTITY url_git_browse_base_src "http://git.gnome.org/browse/rygel/tree/src/">
]>
-<section id="implementing-server-plugins">
+<chapter id="implementing-server-plugins">
+<title>Implementing Rygel Server Plugins</title>
+
+<section id="implementing-server-plugins-overview">
+<title>Implementing Server Plugins: Overview</title>
<para>
This library may be used to create Rygel server plugins by
-implementing the <link linkend="RygelMediaServerPlugin">RygelMediaServerPlugin</link> class.
+implementing the <link linkend="RygelMediaServerPlugin">RygelMediaServerPlugin</link> class.</para>
+
+<para>The <link linkend="RygelMediaServerPlugin">RygelMediaServerPlugin</link> reference documentation
+and these examples explain how to implement these plugins.
</para>
+</section>
+
+<section id="implementing-server-plugins-simple-example">
+<title>Implementing Server Plugins: Simple Example</title>
+
<!-- TODO: Find a way to mention this C example code in the RygelMediaServer valadoc comments instead. -->
<para>
This example source code shows how to implement a Rygel Server plugin.</para>
populate themselves dynamically. For instance, they might add and remove items based on some source
such as a file system or database. See, for instance, the
<ulink url="&url_git_browse_base_src;plugins/tracker">Rygel Tracker Plugin</ulink> or the
-<ulink url="&url_git_browse_base_src;plugins/media-export">Rygel MediaExport Plugin</ulink>.
+<ulink url="&url_git_browse_base_src;plugins/media-export">Rygel MediaExport Plugin</ulink> plugins,
+implemented in Vala.
</para>
<!-- Do not indent the xi:include node. That puts spaces at the start of the code. -->
</section>
+<section id="implementing-server-plugins-full-example">
+<title>Implementing Server Plugins: Full Example</title>
+
+<para>In addition, the external <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">rygel-gst-0-10-plugins</ulink> project provides a Rygel Server plugin that uses an older GStreamer version and is an example of an external Rygel Server plugin implemented in C. Its <ulink url="http://git.gnome.org/browse/rygel-gst-0-10-plugins">media-export</ulink> plugin </para>
+
+</section>
+
+</chapter>
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
]>
-<section id="implementing-servers">
+<chapter id="implementing-servers">
+<title>Implementing Servers</title>
+
+<section id="implementing-servers-overview">
+<title>Implementing Servers: Overview</title>
<para>
This library may be used to create UPnP or DLNA servers via its <link linkend="RygelMediaServer">RygelMediaServer</link> class.
</para>
+<para>The <link linkend="RygelMediaServer">RygelMediaServer</link> reference documentation
+and this example explains how to implement a server.
+</para>
+
+</section>
+
+<section id="implementing-servers-simple-example">
+<title>Implementing Servers: Simple Example</title>
+
<!-- TODO: Find a way to mention this C example code in the RygelMediaServer valadoc comments instead. -->
<para>
This example program shows how to fill a container with media items and then instantiate a server to serve
</programlisting>
</section>
+
+</chapter>
<xi:include href="overview.xml"/>
</preface>
- <chapter>
- <title>Implementing Servers</title>
- <xi:include href="implementing-servers.xml"/>
- </chapter>
-
- <chapter>
- <title>Implementing Rygel Server Plugins</title>
- <xi:include href="implementing-server-plugins.xml"/>
- </chapter>
-
- <chapter>
- <title>Implementing Rygel Media Engines</title>
- <xi:include href="implementing-media-engines.xml"/>
- </chapter>
+ <xi:include href="implementing-servers.xml"/>
+ <xi:include href="implementing-server-plugins.xml"/>
+ <xi:include href="implementing-media-engines.xml"/>
<!-- These are generated: -->
<chapter>