Posts

Maemo based Nokia N900 phone

So the Maemo-based Nokia N900 is finally announced. We are finally free to tell everyone the cool stuff we have been cooking all this time. My work on this device was mostly with UPnP/DLNA and MAFW , not counting my work from n800 that was re-used. GUPnP will soon be in your pocket, so those out there who doubt the greatness of this library, time to face the facts. :) So now is the time to ask all the questions you have on our soon-in-the-shelves mobile phone. :)

GUPnP 0.12.8 released

Changes since 0.12.7 - Don't crash if device descriptions don't contain a root element. - Fix pkg-config paths. - Avoid using asserts. - Use the closest match instead of using the icon that was last checked. - Expect xmlRecoverMemory to fail. - Reject action messages with zero content length. - Change version in action answer. Bug fixes in this release: - bug#1570: gupnp doesn't set the pkgconfig lib dir correctly in 64 bit env. - bug#1574: Avoid using asserts. - bug#1592: gupnp_device_info_get_icon_url() does not return the closest match. - bug#1604: Crash on action without any content. All contributors to this release: Ross Burton Zeeshan Ali (Khattak) Steven Dorigotti Sven Neumann Jens Georg Download at: http://gupnp.org/sources/gupnp/gupnp-0.12.8.tar.gz

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

GUPnP Tools 0.7.1 released

Changes in this release: - Use g_printerr() instead of g_critical() in case of problems. - Initialize the GError to NULL at declaration. - Declare variables as const to setisfy the compiler. - Add missing casts. - Use g_content_type_is_a() to compare mimetypes. - Correct the order of mimetype check. - Iterate over item resources rather than renderer protocols. - Port all UIs to use GtkBuilder. - Bump-up Gtk+ requirement to 2.16. Removed dependency in this release: libglade. Contributors to this release: Sven Neumann < s.neumann@phase-zero.de > Zeeshan Ali (Khattak) < zeeshanak@gnome.org > Download tarball here: http://gupnp.org/sources/ gupnp-tools/gupnp-tools-0.7.1. tar.gz

GUPnP 0.12.7 released

GUPnP 0.12.7 released. Changes in this release: - Chain up dispose and finalize in GUPnPDeviceInfo - Use a dedicated SoupSession for event handling - Fix device icon fallback logic - Fix user agent string - Sanity check UDN while parsing Download source tarball from: http://gupnp.org/sources/gupnp/gupnp-0.12.7.tar.gz Contributors to this release: Sven Neumann Ross Burton Zeeshan Ali

GUPnP on windows

I have been asked several times in the past if gupnp is portable enough. I always told them that I don't know for sure but the only problem i see is the low-level networking bits. Nobody really showed interest in actually trying it out on windows but then came Jens Georg. He managed to make gupnp stack and network-light working on windows within a weekend, despite the fact that some of his hours were wasted due to firewalls being enabled after a reboot and him forgetting about it. He has a small video of network-light running nicely on win32 on his blog .

My first Javascript app

Last night I tried to make a small app/script in javascript (gjs) and it actually worked. :) Here is the code: const GLib = imports.gi.GLib; const GUPnP = imports.gi.GUPnP; const Mainloop = imports.mainloop; // This doesn't start any threads GLib.thread_init (null); let context = new GUPnP.Context ({ main_context: null, host_ip: null, port: 0 }); let cp = new GUPnP.ControlPoint ({ client: context, target: "ssdp:all" }); function onDeviceProxyAvailable (cp, proxy) { log (proxy.get_friendly_name ()); } // Tell us when there is a new device available cp.connect ("device-proxy-available", onDeviceProxyAvailable); // Search and listen for UPnP resources on the network cp.set_active (true); Mainloop.run ("0");