Helium – a M-DMC for your N9

What’s Helium?

Helium is a so-called UPnP A/V ControlPoint (or as DLNA puts it, a M-DMC). It allows you to browse UPnP/DLNA media servers from your N9 and show or play its contents on a rendering device as well as offering basic playback controls on those devices.

Where do I get it?

 

spacer

The current version is 0.6. It is available on this website or via openrepos.net. An issue tracker is available at github.

How to use

After starting

spacer After launching Helium you will see a list of available media servers on your current network. Helium has two views, a “Server view” which you are currently in and a “Player view” which can be reached by clicking on the “Play” button in the bottom tool bar.

If you need to refresh the list of available devices because a device you believe is available but isn’t shown you can use the refresh button in the top bar to force a scan for available devices.

You can simply start browsing the server by tapping on it.

Browsing and playing media

spacer

The browse view looks similar to the initial server view. You go deeper into the hierarchy by tapping on the item if it indicates that there’s more to come. You can navigate up the hierarchy by using the tool bar’s back button.

You can refresh the current listing by clicking on the refresh button in the header.

spacer

To play back an item on the selected renderer, use a long press. By default this will open a pop-up menu where you can either chose to play the file on the currently selected player (“Play on current device”) or chose another player from a list of currently available players.

 

If the currently selected renderer does not support an item, Helium will tell you this by adding an exclamation mark to the item’s icon.

spacer

Player View

spacer The player view does not look very different from the initial server view. You can refresh the list of available devices and switch back to the server view. To select a player tap on it. Helium will then show you extended playback controls as seen in the image.

You can start and stop a playback as well as see its current progress.

If the player supports it (some may not as those actions are optional), you can also pause a playback and seek in the media by tapping on the progress bar.

You can close the extended player view by tapping on the “up arrow” right to the device’s name.

Settings

Some details may be fine-tuned. It is possible enable or disable the use of album art and spacer thumbnails which speeds up the display of the media list. It is also possible now to show the device icons.

If you prefer the old way of using long press to play a file on the currently selected renderer, the settings panel has an option to revert to the old behaviour.

It is also possible to start the on-device media sharing every time you launch Helium. This does not show the status icon yet.

37 thoughts on “Helium – a M-DMC for your N9

  1. Pingback: Helium 0.4.0 beta | The adventures of Foo
  2. Pingback: Helium porta le funzionalità DLNA su MeeGo Harmattan
  3. spacer werty1st says:

    sadly it does not see my samsung tv. i will try xbmc player later

  4. spacer Fernando says:

    Is it possible play music from dlna server in N9? Using the phone like a renderer?
    Great App!

  5. spacer Jens says:

    Not yet.

  6. Pingback: Helium 0.5.0 available | The adventures of Foo
  7. spacer Igor says:

    How can i play music/video from my mediatomb server? “Play on current device” option isn’t active and when i tap renderer&refresh i get “connection lost” message…
    Great app anyways, guess im doing smth wrong

  8. spacer Jens says:

    You can’t use Helium to play music from your UPnP server on your phone yet. It’s a planned feature but it doesn’t work right now. “Current device” means the currently selected renderer in the renderer view.

  9. spacer Ajit says:

    Nice app, two observations

    1. Can’t play a folder, need to play song by song

    2. Doesn’t give the functionality of a renderer to the N9.

    Hope the app will be updated, thanks and keep up the good work.

  10. spacer Jens says:

    Both are planned, but there’s only so much time in a day …

  11. spacer Ajit says:

    No probs, take your time. Thanks again for the app, its very nice.

  12. spacer Timur says:

    Good app.But error is:very long passes to the next photo ,das not transmit video in AVI format end some others.You can fix it?

  13. spacer Jens says:

    Unfortunately those are things that are completely out of my control.

    I know that some renderer take ages to display photos, but that’s an issue in the devices. Same holds for AVI. If the renderer does not support AVI and the server does not support transcoding to something that the renderer understands, there’s nothing I can do about that. Sorry.

  14. spacer AzP says:

    Hi! I’ve been waiting for a UPnP-controller for the N9 ever since I bought it! I have a Linn Sneaky DS (www.linn.co.uk), and right now I can only control it through their quite simple web-based UI, which leaves a lot to wish for. I can only turn it on and change the volume, as well as walk through an already defined playlist. This means that my girlfriend is currently choosing all the music, and we can’t have it like that, right 😉

    I was so glad to see Helium, but the problem is that I can’t see neither servers nor renderers on my network through it. I’m using Mediatomb on my desktop computer, MiniDLNA on my NAS, but I can see my N9 and my Windows 7 share.

    Have you tested its compliance with MiniDLNA? It would be great to see if you get any other results.

  15. spacer AzP says:

    What the hell! Just after writing the post my NAS showed up among the servers! But then it disappeared again…

  16. spacer AzP says:

    And now the Linn Sneaky showed up as well, but it took a couple of minutes (at least 3-4 minutes of waiting in the Renderer view). After switching to Servers and back, it’s gone again. Sorry to spam you, I just had to update you on the issue!

    I’ll follow your repository on GitHub to check the progress! I’ve started development on my own UPnP controller a couple of months back, but haven’t really gotten anywhere, just a program that finds devices on the network. I’m using HUPnp (Herqq) since that is written in C++ and already utilizing Qt.

  17. spacer Jens says:

    Well let’s say the N9’s hardware is a little bit challenged when it comes to handling massive UDP packet burst. miniDLNA should work fine, at least it does here.

  18. spacer AzP says:

    Thanks for your answer! How long does it take for you to see the server?

  19. spacer Timur says:

    In shop there was a Vid?oEditor app which converts video in files and your server transfers them without problems.(on my TV precisely)

  20. spacer Jens says:

    Well it works instantly here, it depends on the network, accesspoint and the overall load. I only said it might be the reason, hard to be sure.

  21. spacer AzP says:

    I managed to reproduce the problem and also find a solution for it. It looks like it’s a bug, but I guess you’ll know more about that than I.

    At first, I didn’t find either Renderer or Server, even after waiting for 5 minutes. But if I went to the website of my NAS (with the N9), it suddenly popped up in Helium as well. And the same thing happened with the Renderer! When going to it’s website, it popped up in Helium, and it automatically started when I pressed on it in the list.

    Is there some sort of “wakeup”-message in the UPnP protocol, for clients that are somehow sleeping? Does that need to be sent before scanning for servers/clients?

  22. spacer Dam says:

    Keep up the good work. Once this app will be able to make the n9 available as a renderet, that’d be perfect

  23. spacer Andreas says:

    Hello,

    I have got several suggestions of integrating DLNA media rendering into the QSpot Spotify client for N9. It currently uses QtMultimedia (QAudioOutput) for audio playback. Would it be possible to use your DLNA (Helium) solution in some way to achieve this (i.e, is it technically feasible)?

  24. spacer Jens says:

    That depends. If by renderer it means a true UPnP remote accessible renderer, then no. There’s no code in Helium to help you with that.

    If it means renderer as in DLNA player, meaning browse remote UPnP shares and play locally, then you can reuse the browsing code in Helium to get the URI you need for playback. This is on my TODO list as well.

  25. spacer Andreas says:

    Thanks for the reply. So if I have understand this correctly, audio DLNA playback is not possible at all at the moment? Not event using e.g., the Korva d-bus (media push) interface?

  26. spacer Jens says:

    Hm, wait – maybe I’ve misunderstood you – Do you want to play back the music from Spotify on a UPnP media renderer?

  27. spacer Andreas says:

    yes that was my intention, therefore I wanted to check with you about its feasibility and the best way to implement it (if possible). spacer

  28. spacer Jens says:

    Ah. In an ideal world, korva would be the way to go. If on the N9, you can’t really depend on it since it’s not in base, though. (and it only handles local file:// URIs, but that would be fixable).

    Otherwise you can reuse the code from Helium, you need to basically just call SetAVTransportURI on the renderer.

  29. spacer Andreas says:

    Thanks for the suggestion. I have been studying the Helium sourcecode (in particular, SetAVTransportURI). What kind of URIs are supported (e.g., do I need to store the Spotify data locally and the provide the URI to the local audio data). And could it cope with audio streaming?

  30. spacer Jens says:

    That largely depends on the device. They’re implicitly listed in the “sink” variable of the GetProtocolInfo call. the format is “protocol:mime-type:*:other-stuff”. However you can safely assume that everything speaks HTTP.