What is Rygel?
+=============
-Rygel is a collection of UPnP/DLNA[1][2] devices, implemented through a plug-in
-mechanism.
+Rygel is a home media solution that allows you to easily share audio, video and
+pictures, and control of media player on your home network. In technical terms
+it is both a UPnP AV MediaServer and MediaRenderer implemented through a plug-in
+mechanism. Interoperability with other devices in the market is achieved by
+conformance to very strict requirements of DLNA and on the fly conversion of
+media to format that client devices are capable of handling.
+
+Important facts and features
+============================
-== Important facts and features ==
* Specifically designed for GNOME (Mobile) and is therefore planned to be one
- of the key new features of Maemo[3] platform in the Harmattan[4] release.
- * Based on GUPnP[5].
- * Written (mostly) in Vala language[6]
- * APIs to ease the implementation of AV devices (currently only MediaServer[7]
- version 2.0 specification[8].
+ of the key new features of GNOME 3.0 and Maemo platform in the Harmattan
+ release.
+ * Based on GUPnP.
+ * Written entirely in Vala language.
+ * APIs to ease the implementation of AV devices.
* Export of on-disk media:
- * tracker[9] plugin.
- * Folder: Recursively exports folders specified in the user preferences.
- * Export of online media from 2nd German TV station[11].
+ * Tracker plugin.
+ * MediaExport plugin: Recursively exports folders and files specified in
+ the user configuration. This plugin supports all
+ types of URIs that gio/gvfs and gstreamer can handle.
+ * Export of online media from 2nd German TV station.
* Export of media hierarchies provided by external applications through
- implementation of D-Bus MediaServer spec[12]. Applications that utilize
+ implementation of D-Bus MediaServer spec. Applications that utilize
this feature are:
- * PulseAudio[13]: Provides streams for input/output devices on the system.
- * DVB Daemon[10]: Provides live TV (DVB) channel streams.
+ * DVB Daemon
+ * Rhythmbox
+ * Export of GStreamer pipelines as media items on the network, specified
+ through gst-launch syntax in the user configuration.
* Audio and Video Transcoding: source format could be anything GStreamer's
decodebin2 can handle but output formats are currently limited to: mp3, PCM
and MPEG TS. Fortunately the transcoding framework is flexible enough to
easily add more transcoding targets.
+ * Standalone MediaRenderer plugin based on GStreamer playbin2 element.
+ * Export of media players that implement MPRIS2 D-Bus interface, as
+ MediaRenderer devices. Known implementing applications are:
+ * Rhythmbox
+ * VLC
+
+Requirements
+============
+
+ * Build-time:
+ * Core:
+ * gupnp
+ * gupnp-av
+ * dbus-glib
+ * gstreamer
+ * gio (part of glib source package)
+ * libgee
+ * libuuid
+ * libsoup
+ * vala (not if building from release tarballs)
+ * Preferences UI:
+ * gtk+
+ * MediaExport:
+ * sqlite3
+ * Run-time:
+ * Definitely needed:
+ * gst-plugins-base
+ * shared-mime-info
+ * Might be needed (depending on your usage and media collection):
+ * gst-plugins-good
+ * gst-ffmpeg
+ * gst-plugins-bad
+ * gst-plugins-ugly
+
+To build without gstreamer, use:
+ --with-media-engine=simple
+This will also disable any plugins that use gstreamer.
+
+References
+==========
-[1] http://www.upnp.org
-[2] http://www.dlna.org
-[3] http://maemo.org/intro/platform
-[4] http://wiki.maemo.org/Task:Maemo_roadmap/Harmattan|Harmattan
-[5] http://www.gupnp.org
-[6] http://www.vala-project.org
-[7] http://www.wikipedia.org/wiki/Media_server
-[8] http://www.upnp.org/specs/av/UPnP-av-MediaServer-v2-Device-20060531.pdf
-[9] http://www.gnome.org/projects/tracker
-[10] http://live.gnome.org/DVBDaemon
-[11] http://www.zdf.de
-[12] http://live.gnome.org/Rygel/MediaServerSpec
-[13] http://www.pulseaudio.org
+ * http://www.dlna.org
+ * http://www.upnp.org
+ * http://maemo.org/intro/platform
+ * http://wiki.maemo.org/Task:Maemo_roadmap/Harmattan
+ * http://www.gupnp.org
+ * http://www.vala-project.org
+ * http://www.wikipedia.org/wiki/Media_server
+ * http://www.upnp.org/specs/av/UPnP-av-MediaServer-v2-Device-20060531.pdf
+ * http://www.gnome.org/projects/tracker
+ * http://live.gnome.org/DVBDaemon
+ * http://www.zdf.de
+ * http://live.gnome.org/Rygel/MediaServer2Spec
+ * http://www.mpris.org/2.0/spec/