Site Tools

Table of Contents

Rygel

Rygel implements several of the UPnP media protocols. Given that several UPnP media servers are already packaged for OpenWrt, the most interesting functionality of rygel in this context is the implementation of the MediaRenderer protocol, which allows remote control of a media player using a standardized interface.

For trunk, you can add the rygel packages to feeds.conf with this entry (make sure to add it before the main packages repository):

src-git rygel https://github.com/aandyl/openwrt-packages.git;rygel

Building the rygel packages with openwrt trunk currently requires some patches to the openwrt build tree. The necessary patches are available in the openwrt patchwork and are linked from the README in the git repo.

For attitude adjustment, use the rygel-aa branch. feeds.conf entry (again, must be before the main packages repository):

src-git rygel https://github.com/aandyl/openwrt-packages.git;rygel-aa

System requirements

My squashfs images for TL-WR1043ND containing rygel and dependencies are around 6 MB. That covers audio playback only. If you wanted to do video playback, the size would increase. Note that when installing packages to the JFFS with opkg, they are not compressed, so the space requirements will increase. (I don't expect an opkg install to fit in an 8 MB device.)

Running rygel uses most of the 32 MB of memory in the WR1043ND.

Installing

There are several rygel plugins available, and packages are defined for all of them. Only the rygel-playbin plugin implementing the MediaRenderer protocol has been tested. When installing the playbin plugin, you likely want to install the rygel-playbin-gst-suggested package as well, which will pull in a set of useful gstreamer plugins for playing a variety of common audio formats. Using a smaller set of plugins is definitely possible if you only use a limited set of formats. Note, however, that identifying the needed plugins for a given format can be tricky.

Additional packages may be needed to support your audio output. For the case of USB audio adapters, information can be found in usb.audio.

Configuring

The name of the media renderer is displayed when selecting a network destination in player applications. The default name is 'Audio/Video playback on <hostname>'. You can set the name by doing: