File: implementing-media-engines.html

package info (click to toggle)
rygel 0.36.2-4
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 40,656 kB
  • sloc: ansic: 237,502; sh: 4,986; xml: 1,706; makefile: 1,203; sed: 16
file content (59 lines) | stat: -rw-r--r-- 3,885 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Implementing Rygel Media Engines: librygel-server Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="librygel-server Reference Manual">
<link rel="up" href="index.html" title="librygel-server Reference Manual">
<link rel="prev" href="implementing-server-plugins-full-example.html" title="Implementing Server Plugins: Full Example">
<link rel="next" href="implementing-media-engines-full-example.html" title="Implementing Media Engines: Full Example">
<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
<td><a accesskey="p" href="implementing-server-plugins-full-example.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="implementing-media-engines-full-example.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h1 class="title">
<a name="implementing-media-engines"></a>Implementing Rygel Media Engines</h1></div></div></div>
<div class="toc"><dl class="toc">
<dt><span class="section"><a href="implementing-media-engines.html#implementing-media-engines-overview">Implementing Media Engines: Overview</a></span></dt>
<dt><span class="section"><a href="implementing-media-engines-full-example.html">Implementing Media Engines: Full Example</a></span></dt>
</dl></div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="implementing-media-engines-overview"></a>Implementing Media Engines: Overview</h2></div></div></div>
<p>
This library may be used to create Rygel media engines by 
implementing the <a class="link" href="RygelMediaEngine.html" title="RygelMediaEngine">RygelMediaEngine</a> class.
Rygel media engines contain knowledge about the streaming and (optionally) the 
transcoding and seeking capabilites of the media library in use.</p>
<p>The actual media engine used by Rygel at runtime is specified
by the media-engine configuration key. For instance, in <code class="literal">rygel.conf</code>:
<code class="code">media-engine=librygel-media-engine-gst.so</code>
</p>
<p>A media engines should derive its own <a class="link" href="RygelDataSource.html" title="RygelDataSource">RygelDataSource</a>,
returning an instance of it from its create_data_source() implementation.</p>
<p>Optionally, a derived RygelMediaEngine may implement the get_dlna_profiles() and get_transcoders() virtual functions.</p>
<p>Rygel itself provides two media engines:
</p>
<p>
</p>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><p><a class="ulink" href="http://git.gnome.org/browse/rygel/tree/src/media-engines/gstreamer" target="_top">gstreamer</a>: A media engine that uses GStreamer for transcoding and seeking.</p></li>
<li class="listitem"><p><a class="ulink" href="http://git.gnome.org/browse/rygel/tree/src/media-engines/simple" target="_top">simple</a>: A media engine that uses no multimedia framework, and therefore offers no transcoding or time-based seeking.</p></li>
</ol></div>
<p>
</p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.27</div>
</body>
</html>