It looks like the PR1.2 update for the N9 is starting to get rolled out now, so your favourite MediaServer implementation will reach your phone soon.
A short hint if you’re eager to try it and you don’t see any files shared: For complicated and mostly non-technical reasons the device needs to assign so-called DLNA media profiles to images and media files. To start this, the device needs to go into idle mode once, so just let it rest for a while and all media created on the device should be available after that. This is a one-shot thing after the update, any files added afterwards will be fine.
Tag Archives: Linux
GStreamer 0.11 + JHbuild
If you try to test GStreamer 0.11 there’s this nice gst-uninstalled script; somehow that didn’t work for me as soon as I tried to use more non-gst interdependent libraries so I opted to use jhbuild. Luckily that’s quite easy with the stock gnome jhbuild moduleset.
To do that, I created a new .jhbuildrc-gst-0.11
with the following modifications. skip
and modules
can of course be adjusted to own needs.
moduleset = 'gnome-world-3.4'
modules = [ 'vala', 'libgee', 'gstreamer', 'gst-plugins-good', 'gst-plugins-bad', 'gst-plugins-ugly', 'gst-ffmpeg', 'gssdp', 'gupnp', 'gupnp-av' ]
skip = ['gtk+', 'atk', 'gcr', 'gtk+-2', 'rarian', 'NetworkManager', 'gnutls', 'polkit', 'p11-kit', 'gnutls', 'cantarell-fonts', 'gtk-engines', 'librsvg', 'gnome-themes-standard', 'libgnome-keyring', 'pango', 'expat', 'libgpg-error', 'libgcrypt', 'glib-networking']
os.environ['JHBUILDPS1'] = '[gst-0.11] '
branches = {
'gstreamer' : '0.11',
'gst-plugins-base' : '0.11',
'gst-plugins-good' : '0.11',
'gst-plugins-bad' : '0.11',
'gst-plugins-ugly' : '0.11',
'gst-ffmpeg' : '0.11'
}
FOSDEM 2012 Talk
Here are my slides to the short talk I did today about Rygel here at FOSDEM.
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.
Rygel & pulseaudio
Looks like we have found and fixed the recent issues in the PulseAudio MediaServer2 implementation that led to weird behavior when trying to browse the PA server; it is available in PulseAudio master.
So after applying this, streaming from PA should be possible again if your client natively supports LPCM. If not, then most likely not. There seems to be an issue in setting up the transcoding (this includes the XBox e.g.)
Feature complete
At least with regard to XBox support. Thanks to a hint on our IRC channel (#gupnp on GimpNet) we now have video thumbnail support for the XBox 360 in Rygel master.
Don't know if it's useful…
… for others but I wrote myself a small “cp” replacement that tries to imitate the behavior of P2P clients by copying a file block-wise randomly with a small delay between each write. I use this to trigger bugs in test the media-export back-end of Rygel.
The repository is at https://github.com/phako/random-copy
Properties and Probabilities
I just tagged version 0.2 of my tracker browser tool
What’s new?
- It has a location bar with backward and forward navigation buttons
- It is also possible to use prefixed names instead of IRIs
- You can use your keyboard to navigate backward and forward
- It has a in-page search bar which can be reached by familiar keystrokes like “/” or “Ctrl-f”
- If you browse a rdf:Property, you will now be shown all resources with the value the property has
Where to get it?
https://github.com/phako/tracker-zilla/tree/0.2
Mandatory screenshots
Tracker and me
While working with tracker I find myself rather often calling “tracker-info” on resources, looking for linked resources, running tracker-info on those, then needing to get back etc. A bit ugly and time-consuming.
Wouldn’t it be cool to just browse through all that info, being able to go back and forth through the links? Yes, it would. That’s why I wrote tracker-zilla:
You can navigate through the resources just like on the interwebs, using the back and forward feature of the context menu. It shows you not only the resources and properties of the object but also resources that link to the one you’re currently browsing:
It’s not that feature-rich and probably never will be. You can either pass a urn to it via command-line or nothing, then it will show you all rdfs:Classes available in the current ontology where you can just click on e.g. nco:PersonContact. What I’m planning to add is a simple in-page search and a breadcrumb navigation.
That said. it’s a pleasure to work with libtracker-sparql (especially from Vala). You need Vala 0.11.6, gtk+-3 and webkitgtk-3.0 to build it. ?The code is available at github.
Update: Due to popular demand, there’s now a –with-gtk=2 option to enable Gtk+-2 UI.
Debunking Rygel myths
Somehow Rygel seems to have gained some interest by users lately, a number of new users show up on mailing list, IRC and Bugzilla. But it seems there are some misinformations flowing around:
Rygel is a UPnP server
Well yes, that’s how it started out. But since then, we’ve evolved to be a UPnP/DLNA framework or even SDK providing easy means of implementing servers and renderer.
Speaking of renderer, we not only have one renderer to offer but actually a multitude. Rygel is a consumer of the MPRIS2 D-Bus specification which means it can turn any player, like Banshee or Rhythmbox, which implements this specification into a UPnP/DLNA media renderer.
Rygel is Gnome-only
While being part of Gnome, using its infrastructure, there’s no reason not to use Rygel as a system service. You might, however, experience some minor drawbacks since some of the plug-ins heavily make use of D-Bus. People already have contributed init scripts to ease this part.
Rygel is badly documented
Hm, yes. That one is actually true. Its documentation is a bit scattered in our wiki at http://live.gnome.org/Rygel and the man-pages. On the other hand we hope that Rygel working out of the box for most people out there.
Hope that sheds some light.
Ps: Hello Planet Gnome! Great to be here finally.