Sunday, December 28, 2008

Rygel and DVB

I had been working on adding a DVB plugin to Rygel lately so that people can easily watch TV on all their UPnP-capable Renderers without having to swap DVB cards around (people typically have one). Although I had finished the basic version of the plugin 1-2 weeks ago, the live streams never worked for me. Yesterday, I realized my mistake (wasn't handling the dynamic pads from the gst source element) and when i corrected that, here is what happend:




There are still some issues to fix, especially the artifacts that happen because RTP headers are not getting stripped off when Rygel proxies the RTSP stream over HTTP but I am hopeful I'll be able to fix them soon.

UPDATE: The artifects issue i mentioned above has already been fixed in the trunk so now you can enjoy a smooth live tv experience. :) Also! before you ask, no this doesn't work with PS3 yet (most probably because of some missing metadata in the DIDL-Lite fragments).

Tuesday, December 9, 2008

Rygel now part of maemo plan

So it is no secret anymore that Rygel will be part of maemo platform. If you are interested in contributing to maemo, here is yet another chance. I have a big pile of TODO for Rygel so if you are interested, do contact me. In case you prefer IRC like I do, I am always on #gupnp on irc.gimp.org.

Wednesday, December 3, 2008

DVB-T on Linux

One of the excuses I had to not implement DVB-Daemon integration in Rygel was that I didn't have the needed hardware to do so. Some days ago, I decided to get rid of this excuse by buying myself a Hauppauge Nova-T DVB-T stick. After a few days of trying different things, fiddling around and filing ivalid bugs, I finally manged to get it working with both DVB Daemon and Totem. Here is some advice based on my experience so far:


  • If you happen to have the same DVB card as I do, make sure you have the recent enough (>= 2.6.25) Linux kernel that provides the needed driver (dib0700)
    out of the box.


  • Get yourself the latest firmware from here and place it under /lib/firmware. The driver still looks for it by it's old filename so make a symlink in the same directory to this file by the name "dvb-usb-dib0700-1.10.fw".


  • Unless you know exactly what kind of channels file needs to be created, DO NOT use w_scan for creating a channels file. Use gnome-dvb-setup.py (part of DVB Daemon) to do that.


  • If gnome-dvb-setup.py is unable to find your local channels, concider the possibility that the small antenna provided with the DVB-T card might not be big enough to do the trick. I had this problem and I solved it by connecting to the cable from the bigger antenna on the top of my house.



Also, I must say I am very much impressed by how much great work Sebastian 'sebp' Pölsterl has put together in such a short amount of time. This could possibly be one of the best GSoC projects ever. It's not that it just works but the quality (architecture and design) of the code seems to be pretty good as well. Implementing featurefull software in a short amount of time without compromising quality is something even many very experienced developer can't seem to be able to do but Sebastian has done it.