Skip to content

UPnP/DLNA clients in Ubuntu 13.04

Banshee and UPnP remoteStream­ing con­tent from a UPnP server (in my case, the XBMC media centre in my lounge room) to an Ubuntu machine is fairly simple. But there didn’t seem to be any doc­u­ment­a­tion that I could find, and I ended up spend­ing a sur­pris­ing amount of time futz­ing around mak­ing it work. This is how I did it in Ubuntu 13.04. I use GNOME for my desktop, but con­firmed that it also works just fine with the default Unity desktop. Other envir­on­ments may need to tweak how the ser­vice starts, as well as clients.

Install soft­ware

We’re using the Rygel UPnP pack­age, spe­cific­ally its MPRIS inter­face to enable UPnP ren­der­ing to desktop media play­ers. In addi­tion, we install GUPnP to provide a UPnP Con­trol Point, and finally ban­shee. I had a crack at using Totem as a ren­derer, as of April 2013 the ver­sion in Ubuntu registered as a Medi­aR­en­derer but quietly refused to play any con­tent I asked it to. The upnp-inspector pack­age is nice for check­ing everything works.
sudo aptitude install rygel rygel-preferences gupnp-tools banshee upnp-inspector

Con­fig­ure rygel

Open Rygel’s con­fig­ur­a­tion file:
nano ~/.config/rygel.conf
And enable the MPRIS inter­face by adding the fol­low­ing at end of the file:

Rygel is designed as a UPnP media server, and by default will start offer­ing up local video, music and pic­ture shares as media serv­ers. If you don’t want this, it can be dis­abled by run­ning the Rygel Pref­er­ences GUI tool, or by adding this to the [gen­eral] sec­tion of your rygel.conf:

Auto­start Rygel at login

cp /usr/share/applications/rygel.desktop ~/.config/autostart
Log out and back in to start the Rygel service.

Con­fig­ure Banshee

Finally, the MPRIS inter­face needs to be enabled in Ban­shee. Start it up, nav­ig­ate to Edit -> Pref­er­ences. Click the Exten­sions tab, scroll down to the util­it­ies sec­tion, and ensure the MPRIS D-Bus Inter­face is enabled.

Play­ing things

UPnP Inspector window

Inspector win­dow show­ing my XBMC server, the local Rygel share, ban­shee, and BubbleUPnP on my android phone.

Start UPnP Inspector. It should list any avail­able Medi­aServ­ers on your net­work and, if you didn’t dis­able them, local shares from Rygel. Start ban­shee, and it should also appear as a Medi­aR­en­derer in the inspector window.

Any UPnP con­trol point on the net­work will be able to send con­tent to ban­shee (I’m fond of BubbleUPnP on Android). Or start the UPnP AV Remote con­trol pro­gram. I’ve only been play­ing with it for an hour or two, but get best res­ults from external con­trol point soft­ware. The GUPnP remote occa­sion­ally stalls try­ing to play things.