Rygel progress in current master

It’s been a while since I last blogged about Rygel. Many things have happened since, mainly in features and documentation.


  • Exchangeable media engines: We’ve loosened the dependency on GStreamer a bit. While it is still our first-class transcoding and general media handling library, it is now possible to substitute it with other media processing libraries. A simple example is included in the source.
  • Change tracking. This is a feature introduced in the UPnP content directory specification version 3. It allows clients to, well, track the changes that happen on the server in detail for synchronization purposes. It’s implemented in the framework and as a demonstration in the MediaExport plug-in.
  • GStreamer 1.0 support. As the rest of GNOME, we transitioned to GStreamer 1.0.
  • Playlist support. Rygel now generates playlists for containers on-the-fly and the renderer framework supports automatic playback of them. The only format that’s supported currently is one of the two formats defined by DLNA, DIDL_S, which is just the same format that is used by UPnP AV to describe the media content on a server.
  • Playspeed support. A renderer now can announce that it supports different speeds and directions than normal forward playback.


There was another split-up into a renderer framework library and a specific implementation of a renderer using GStreamer which again may be used in your own programs. This is mainly due to the aforementioned change in media backend flexibility.
Otherwise we’re working on making the API easier to use from C and other languages through introspection.


There’s been a lot of effort into extending our sparse documentation. It is currently concentrating on the API side of things but will be extended to a higher level as well soon.


  • There is an example now that implements a DLNA renderer which is running in full-screen
  • There are several examples for the most common init systems to run Rygel as a system service if wanted
  • A load of bugfixes

5 thoughts on “Rygel progress in current master

  1. Great Job. 😉
    Have you any plan to support Firewalld to automatically open ports of the firewall when Rygel is enabled?

  2. I don’t talk about the firewall on your modem but the firewall on your computer. If, in your computer, you don’t open UPNP ports Rygel don’t work.
    Open ports with Firewalld is talking on D-Bus with firewalld ans ask for open some ports. Then, firewalld ask user “Do you wan’t automatically change settings of your firewall for Rygel?”. If user say yes, the ports are open.
    Look: https://fedoraproject.org/wiki/FirewallD https://fedorahosted.org/firewalld/

Leave a Reply

Your email address will not be published. Required fields are marked *