About.
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.
The GUPnP framework consists of the following libraries:
- GSSDP implements resource discovery and announcement over SSDP.
- GUPnP implements the UPnP specification: resource announcement and discovery, description, control, event notification, and presentation (GUPnP includes basic web server functionality through libsoup). GUPnP does not include helpers for construction or control of specific standardized resources (e.g. MediaServer); this is left for higher level libraries utilizing the GUPnP framework.
- GUPnP-AV is a collection of helpers for building AV (audio/video) applications using GUPnP.
- GUPnP-UI is a collection of GTK+ widgets on top of GUPnP. It features a GtkTreeModel exposing devices discovered by a GUPnPControlPoint and a GtkTreeView for exposing such models.
The GUPnP framework was born out of frustration with libupnp and its mess of threads. GUPnP is entirely single-threaded (though asynchronous), integrates with the GLib main loop, and provides the same set of features as libupnp while hiding most of the UPnP internals through an elegant object-oriented design.
The GUPnP framework is free software released under the GNU LGPL.
Also available is a collection of developer tools utilising GUPnP and GTK+, as well as a MediaRenderer version 1 reference implementation.
News.
- June 30, 2008: GUPnP Media Renderer 0.1 released. This is a reference implementation of the MediaRenderer version 1 device type, written in Vala. libowl-av is used for rendering. GUPnP Media Renderer can be downloaded here.
- June 30, 2008: GUPnP 0.12.1 released. Support for the HTTP Range header has been improved, and a crasher has been fixed. See NEWS for details.
- June 19, 2008: Initial version of GUPnP Vala bindings released!
- June 17, 2008: GUPnP-AV 0.2.1 and GUPnP developer tools 0.6 released. The new AV release features small fixes necessary for the Vala bindings. The new tools release has been updated to the GUPnP 0.12 API and includes a couple of new features outlined in the NEWS file.
Download.
Visit http://gupnp.org/sources for source tarballs. Prebuilt Debian packages are available at http://debian.o-hand.com and in Debian Unstable.
Documentation.
Participate.
GUPnP Subversion Repo.
Check out with:
svn co http://svn.o-hand.com/repos/gupnp/trunk gupnpBrowseable via http://svn.o-hand.com/view/gupnp/.
Bugs.
Report using the OpenedHand Bugzilla.
Mailing List.
Send a blank message to `gupnp+subscribe
Messages sent to the list are archived. The archive is accessable here.
Authors.
GUPnP is an OpenedHand production with significant contributions from Zeeshan Ali.
