Posts

Showing posts with the label MediaServer

Rygel 0.7.4 (Look at the Princess)

Rygel 0.7.4 (Look at the Princess) released! A new release in the current unstable 0.7.x series for upcoming GNOME 2.32.0 release. - Fix wildcard handling in search request. - Distribute correct copy of scallable icons. - Provide icons in DLNA standard sizes. - Provide icons in JPEG format as well. - Don't offer transcoding from video to audio and viceversa. This makes sense anyway and reduces network traffic. - Only offer time seeking if duration is known. - Report correct DLNA profile for MPEG-TS HD and WMV transcoder. - List DLNA formats first in the list of supported formats. - Provide correct values for out parameters of GetCurrentConnectionInfo action. - Correctly handle HTTP 'POST' requests. - Correct checks for vala bindings. - Use new 64-bit size property in GUPnP resource API so that we can deal with resources bigger than 2GB. - Fix some (potential) crashes. - Correctly handle a translated string involving plurals. - Don't use deprecated libsoup API. - ...

Rygel 0.7.2 (Dream A Little Dream)

Rygel 0.7.2 (Dream A Little Dream) is out! A new release in the current unstable 0.7.x series for upcoming GNOME 2.31.5 release. * MediaExport: * Support DLNA's 'AnyContainer' upload extenstion. * Only harvest media files. We use a positive list for file extensions to include in the metadata extraction. * Implement fallback to the default (slow) search implementation. * Lower severity for some of the console messages. * Update code according to latest GStreamer Vala API fixes. * Tracker: * Improve Sparql query builder to achieve much better performance and reduced D-Bus traffic. * GstRenderer: * Relicense from GPL to LGPL. * More descriptive default title. - Localization: - Add Simplified Chinese translation. - Add Traditional Chinese translation (Hong Kong and Taiwan). - Updated Spanish translation. - Various non-functional improvements to core and plugins. All contributors to this release: Aron Xu Chao-Hsiung Liao Jens Georg Jorge Go...

Part of GNOME 3.0

The decision for inclusion of modules into GNOME (3.0) just came-in and proposal for Rygel was approved. \o/ Now I better get it working. :)

Future of Rygel

Image
While you can follow the progress of Rygel through the release announcements on my blog, mailing-lists and even git log, I feel that I am not providing enough information about the future plans. Also there are some things that are not (or so far have not been) in a shape to be part of a release so here is some of what is coming: Logo I've been looking for an artist to make me a nice logo ever since the start of the project. A few artists gave it a try but they didn't succeed in creating anything worth showing to anyone. I couldn't possibly blame them since: Its not very clear to everyone what Rygel is and I suck at explaining things. Its hard to represent it even when you learn what it is. So what happened was that I told Sebastian that I was so jealous of his new logo , he asked Klaus to attempt to do the same for Rygel. He did and after a bit of talking and him trying different ideas, we finally agreed on this: 64x64: 32x32: 16x16: Some people like it, s...

Rygel 0.3 (Berlin is cool if it doesn't rain) is out

Image
Rygel 0.3 (Berlin is cool if it doesn't rain) is out! Here are is relase announcement: Brief summary of changes since 0.2.2: - Transcoding from any format (that gstreamer's decodebin2 can handle) to mp3, linear PCM and mpeg transport stream containing mpeg 2 video and mp2 audio. - Plugin API to deal with user preferences. - User preferences UI: rygel-preferences. - New plugins: * Folder: Recursively exports folders specified in the user preferences. * ZDFMediathek: Exports online media from 2nd German TV station. * External: Exports media hierarchies provided by external applications through implementation of this spec: http://live.gnome.org/Rygel/MediaServer. The first application that utilizes this feature is PulseAudio. - Drop xbox support. It didn't work anyway and we better concentrate on implementing standard stuff that it at least worthy of being called "UPnP" ( at least for now). - Tracker and DVB plugins are only loaded if their corre...

Writing Rygel plugins

While I had been trying my best to make sure writing Rygel plugins is easier than frying eggs before my FOSDEM presentation, I was quite disappointed about how the presentation actually went. I thought I simply lost everyone in there by the end of th presentation and didn't get to make a very good impression. But seems the ease of writing Rygel plugins didn't go unnoticed in that presentation after all since I happen to catch the attention of at least one developer, Jens Georg who is working on two plugins for Rygel and you can follow the progress on his blog .

FOSDEM2009

Like many other Hacker fellows, I'll also be attending FOSDEM this year. I even have a talk at the GNOME devroom just like last year but this time I'll be mostly talking about Rygel rather than GUPnP . If you are coming to FOSDEM and happen to have any interest in Rygel, especially in how to write plugins for it don't forget to attend it.

Rygel the GNOME UPnP Media Server

I am pleased to announce that gupnp-media-server project has been moved to GNOME SVN under the new name, Rygel . Currently it's a basic implementation on top of GUPnP and Tracker but I'll be putting a lot of time and love staring from next week to turn it into a very great project. Special emphases will be put into making it fit the UPnP needs of GNOME. This would be a very good time to convince me to implement all the features you would want to see in a UPnP Media Server so I can add them to my TODO file. :) UPDATE : While updating the jhbuild moduleset, I found out that rygel isn't buildable with latest vala/bindings. I'll try to correct the issue(s) tommorrow so don't panic if it doesn't build for you. It's just the demo effect. :)

We have plugins

Just pushed my commits to gupnp-media-server SVN trunk . Now we support plugable media providers, which can be written either in Vala or C. Also included in these commits is gstreamer-based metadata-extractor. Still not done (due to lack of time :() is a standalone media provider based on this extractor, GIO and SQLite.

GUPnP MediaServer 0.1 released

GUPnP is an object-oriented open source framework for creating UPnP devices and control points, written in C using GObject and libsoup. The GUPnP API is intended to be easy to use, efficient and flexible. GUPnP MediaServer is an implementation of the UPnP MediaServer V 2.0 specification based on GUPnP and tracker . It is written (mostly) in Vala language. Download at http://gupnp.org/sources/gupnp-media-server/

tracker dep will soon be dropped

This is just to inform everyone that I do realize that a hard dependency on tracker is not the way to go and this is just a temporary measure. I am writing a gstreamer/gio based metadata extractor as we speak. Although I'll try my best to get this done before GUADEC at least, it might take longer since I do this on my spare-time (something I don't have in abundance). Disclaimer: I am not against tracker and I *will* keep the current tracker-based media source (as a plugin), though i might need to drop that as a temporary measure for while until i get the plugin system implemented.

gupnp-media-server now written in Vala

I finally managed to port all the existing C code to Vala. What did i achieve from this exercise? For one thing, the code got much simpler, with LOCs being reduced from 2101 to 1117 (46.8 %). Also this proves that (at least the server-side) GUPnP's Vala bindings are already in a stable/usable state. Special thanks to Jürg Billeter , Ali Sabil and Jussi Kukkonen for their continuous support during this exercise and for quickly fixing bugs that I reported.

A week of Xbox fun

While my MediaServer implementation is still in it's very infancy, I was already asked by more than two people if it will work with Xbox. I didn't have a clue since I don't have an Xbox so I asked Naba if i can visit him on some weekend to find some clues but he was kind enough to lend it for a week instead. For the past one week I had been having lots of fun with it. This nice page by Frank Scholz gave me headstart and I was able to get Xbox see my MediaServer rather sooner. The only other achievement I had in the whole week is that Xbox is able to see the videos but can't play it (most probably because I don't give it all the metadata it requests). The good thing is that now i have a very good idea of what Xbox expects from my MediaServer and I am very hopeful on getting my MediaServer working with Xbox at some point. Here is the log of all the SOAP messages I get from Xbox for anyone interested.

gupnp-media-server coming soon..

Image
Next on my TODO is a desktop-wide UPnP MediaServer based on tracker . Basically, it will make all of your media availabe to other UPnP devices that is tagged as "shared via UPnP". I already have a working dummy implementation, based on code from Jorn's rhythmbox plugin. I call it "dummy" because ATM it only exports a hardcoded list of media files. Here is a screenshot of Windows Media Player playing music from it using on2share plugin: