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.

19 thoughts on “Lately, in Rygel land…

  1. So, does it allow using the media player on the phone to stream the music to my DLNA-capable Marantz receiver? Or browsing the media content on the NAS (running twonkymedia) and direct the receiver to play stuff directly from there? If I’ve understood things correctly, the DLNA-spec should allow this (and Rygel too?)

    1. No. The only thing implemented by Rygel is sharing the media content on the device (like the NAS). The other use-cases were planned but not implemented by our team and I’ve no idea what happened to them.
      I know that DLNA spec allows this but those are different types of “devices”. Your first example would be a so-called push controller and the second use-case a control point.

  2. ok, too bad.. not that useful for me then :/ Controlling the media from the receiver is a big PITA, and was hoping this would allow a more Airplay-like functionality. The music player on the N9 is rather nice 🙂

  3. @Jens
    So due to 802.11an + DLNA server (Rygel) + DLNA client…
    Is it now technically feasible to stream 1080p content from our N9’s?
    This is what so many of us were/are dearly hoping for….
    As we were bitterly disappointed that there’s no MHL or HDMI.
    Thank-you,
    Jed
    *among so many other disappointing hw limitations.

    1. In theory yes. Practically, due to limitations that the new DLNA certification process imposes, we can’t do that on the device out of the box since we had to limit the number of supported video formats. But there will be an easy way to enable that, I’m already working on a user-friendly way to do that without dropping to developer mode (aka an app).

  4. Can we not just stream 1080p content to the appropriate DLNA client.
    Or do we have to go into some sort of interface in the DLNA client.
    (assuming most media-players in peoples AV racks has one)
    Find the content on the N9 from there, & initiate a download/stream from there?

  5. Ah email notifications for your blog now, nice!
    “Sorry, that plugin seems to be broken.”
    But it’s probable LT that someone in the F/OSS community will fix that plug-in right?
    As you sad before…
    Nokia’s not doing much more for the back-end after 1.2, but it’s possible to leverage the upstream plug-in system etc.
    http://jensge.org/2012/01/slides-from-dlna-talk/comment-page-1/#comment-8148
    “But there will be an easy way to enable that, I’m already working on a user-friendly way to do that without dropping to developer mode”
    When “roughly” do you expect this app to be available? Keen to test, TY!

  6. “Yes, it covers everything except for two settings keys. From Nokia side, that’s all there will be, apart from some bugfixes in the next PR. That said, the upstream plug-in system is still available, we just ship one plug-in (the interface to Tracker) by default.”
    What obstacles impede getting those plugins into the back-end, any limitations w/current API’s/Doco?
    And is there any issues with integrating their config options into the current native UI?
    “I’m currently hacking on two apps, one that will enable the normal user to fiddle a bit more with the settings and undo some stuff we had to do”
    This is the one that will give us the ability to stream 1080p content.
    I don’t suppose you could elaborate on the extra things it’ll allow us to do?
    Will it be well doco’d, what aspects of the back-end won’t it touch?
    If you’ll be posting about it soon then don’t worry…
    “and another that allows to control DLNA renderers and, together with the DLNA server on the N9, can be thought of as some kind of push.”
    But not true push until some upstream plugins are fixed & brought into the back-end?
    More detail about exactly what this app does, & enables one to do would be great too.
    I think this one’s already released by you, so I guess we can find out for ourselves!
    Thank-you very much.

    1. @Jed:
      With “broken plugin” I mean the one in my blog for email notifications. I announced the application that lets you share everything you want in this blog yesterday.
      I’m not sure if you understand what push is supposed to mean. Push is “sending” media to a UPnP renderer without the need of a UPnP server. Hence Helium + Media sharing on the N9 isn’t “true” push since it needs the local UPnP server. This has nothing to do with the back-end or missing fixes.
      What do you mean by “getting plugins in the back-end”? What’s back-end for you? Why are you so keen on modifying the default settings panel? You can’t modify that.

  7. “Push is “sending” media to a UPnP renderer without the need of a UPnP server. Hence Helium + Media sharing on the N9 isn’t “true” push since it needs the local UPnP server.”
    Is there any inherent disadvantages to this approach or is not being “true push” a non-issue?
    “What do you mean by “getting plugins in the back-end”?
    As you said before….
    Nokia’s not doing much more for the back-end after 1.2, but it’s possible to leverage the upstream plug-in system.
    http://jensge.org/2012/01/slides-from-dlna-talk/comment-page-1/#comment-8148
    Nokia’s walking away from major feature-add releases* maybe as soon as 1.2 (wow).
    So of course it’s natural for the community to want to be able to extend further.
    Which is why I asked…
    What obstacles impede getting those plugins into the back-end, any limitations w/current API’s/Doco?
    It’s probable that you don’t know, having not tried or investigated closely etc.
    It’s just a question, you don’t need to provide a extremely detailed/nuanced answer.
    *I dont mean primarily bug-fix releases like 1.3.
    “Why are you so keen on modifying the default settings panel?
    So that once new plug-ins have been brought in, one can leverage them in the GUI.
    Or as it’s closed, design a separate app that integrates nicely into the native UI.
    “You can’t modify that.”
    Yes I know. The insanity that is most of Harmattan’s UX still being closed.
    Maemo 5x was nowhere near as closed at the UX layer…
    The project’s basically dead yet you guys still refuse to open up large chunks.
    It’s not like most of the Apps/UI will ever be used on wannabe smartphones at the bottom-end w/Meltemi.
    And even if much will be, you can easily anticipate what will/won’t & open accordingly.
    Personally I don’t see what the big issue is with “all” of it being open.
    But I do understand the pragmatic reasons why you may chose not to for elements that are likely to be used in real products.

    1. Fake vs. true push

      The difference is that with “true” push you don’t have to share the file in question via DLNA. With the “fake” solution (Helium + DLNA on N9) you have to.

      Additional plug-ins

      The main obstacle are the OVI store policies. /usr/lib/rygel-1.0 is not listed in the system path exceptions

      As for the API documentation, this has not been generated for a long time since it was always problematic with valadoc + Rygel. It’s not that complicated, the Test plugin should give a good example

  8. @Jens
    I don’t suppose you could spare a few minutes to address my prior post?
    Posted 16-days ago now….
    Thank-you very much in advance if you can oblige.
    All the best!

  9. @Jens
    Any idea if there’s been ANY progress on additional plugins for the back-end?
    Has it been made easier in any way for others to step-up & contribute?
    Thank-you.

Leave a Reply

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