N9 media pushing

 

Ever since the announcement of the N9′s DLNA support people were looking for a feature called DLNA +PU+ which allows you to send media files to e.g. DLNA-capable TVs without enabling content sharing on your device, giving you a really fine-grained control about what and where to share to.

PushUp is a small utility that hooks into the N9′s sharing framework and allows to you push an image or a video to your TV just like you would with Bluetooth or NFC. Get it on this site (or later through the Nokia Store).

It is an offspring of my Korva project, a D-Bus specification and its implementation for media pushing. While still work-in-progress, it’s already fully functional.

Edit: I had to update the package because the icon was missing and cancelling the device selector was broken.
Edit2: Updated again since it was broken on PR < 1.2.

Helium 0.4.0 beta

TL;DR: First release of Helium! Please try it out and reports issues at https://github.com/phako/Helium/issues or as a comment if you don’t want to register with github,

The first installable version of Helium is out. Grab the debian package for your N9 here. As usual it’s signed with my public key 6BA1DF74.

This version is not submitted to the store (yet) since I felt it needs a bit more testing, especially on the interaction with media renderers. I’ve only two renderers that are not Rygel-based and one of them is severely broken when it comes to UPnP.

So please, try it out and report any issue you find either via its issue tracker at github or as a comment here.

Basic usage instructions are available on this site.

Call for translation

Currently TweakUp only speaks English. I’ve modified the source and setup a Transifex instance to change that in a future release. Since the only two languages I can express myself in without sounding too stupid are English and German, my translation skills are a bit limited. So if anyone is interested in contributing a translation, feel free.

Links:

TweakUp your media sharing experience

ScreenshotAs I mentioned on several places already, due to the aim of getting the N9 DLNA-certified we had to introduce some restrictions. One of the most annoying limitation from an end user point of view is that you can’t share arbitrary videos or music which you may have put on your device. Another, though minor, issue is that it’s not possible to change the name shown in UPnP or DLNA clients on the network.

While it is possible to change all this by editing the configuration file, it is somewhat inconvenient to do this on the device. That’s why I’ve written a small application called TweakUp which allows all these settings (and a few more, see the screenshot) to be changed more comfortably. It is available in the Nokia Store and on this website. It has been signed with my public key 6BA1DF74.

Its source code is available at https://gitorious.org/helium/tweakup

DLNA certified

Today we have reached step two of what we aimed for when using Rygel on the N9. This morning I got notified that it has been certified by DLNA as a M-DMS device. After a very long struggle (more than two years) with the sometimes nearly insane requirements DLNA imposes on a project, the weird tooling and the testing process, after all the effort that multiple people have thrown into this goal, by the end of last month, it looked like we were not going to make it. The reasons were very, very stupid and didn’t have to do anything at all with Rygel. Getting the news today was a great relief, a huge reward and a very fitting finish for working on this project.

A big thank you to Zeeshan and all the other people involved in making this happen.

Introducing Helium

What’s Helium?

Helium is a UPnP control point that is supposed to accompany Rygel, but can of course work without it. It offers browsing of media servers, selecting a renderer from a list of devices available on the network and can (currently) play back a single media files from the current server listing to the currently selected renderer (by long-push). This is supposed to change in short-term, giving proper playlist and player controls. Also it needs to get aware of servers and renderers disappearing from the network and get some proper error reporting.

Where’s the code?

Current state is available at Gitorious

Screenshots

Lately, in Rygel land…

In General

I know I have been quite silent about Rygel in general lately because I was quite busy with my day job. Since Zeeshan left Nokia after the MeeGo turmoil I took over his task of bringing Rygel in good shape to form the basis for Harmattan’s DLNA functionality.

These efforts, started long ago by Zeeshan, are finally coming to a close and entering the wild. With the release of PR1.2 beta for the N950, the alert reader might have spotted the release note entry “Media sharing with DLNA compatible devices”. You can probably guess what that’s powered by ;-)

One of the goals that we’d set ourselves has already been reached. The device is UPnP certified. The DLNA compatibility is in really good shape as well.

That is one of the reasons why the upstream Rygel development looks kind of stalled. The other one is that we’ve been focusing on ironing out the rough edges with emphasis on stability. Naturally, all of the patches that resulted here have been upstreamed, either to Rygel, GUPnP or libsoup.

On the device

So what’s on the device? A more or less pristine upstream snapshot taken several commits after 0.11.3 with later patches cherry-picked and some minor adjustments to adapt ourselves to the environment, like different device details and icons.

What can it do?

It implements a M-DMS, a mobile media server, enabling you to share the media content of your phone in your home network.

In addition to the rather useless mandatory media formats defined by DLNA we have decided to include a LPCM transcoder and the necessary profiles to share all the videos and images you’re going to take or already have taken on the device.

The server runs in a strict sharing mode where only media files that conform to one of the supported DLNA profiles are shared. This is configurable and we plan to release a “tweaking app” later to help the average end user to fine-tune and undo some of the limitations that had to be done due to the DLNA guidelines.

So, to all that already can, enjoy Rygel on your mobile phone.