Universal Plug and Play, an Intel-centric norm that is used for things like dynamical location and configuration of network devices (it is quite different from Rendezvous in the sense that it covers both service discovery and interaction).
It can used for remote control of Windows Internet Sharing, punching holes in UPNP-enabled firewalls (MSN and most Bittorrent clients use it for precisely that purpose), etc., but most recently for configuration and media sharing among entertainment devices under “DLNA”:Wikipedia:Digital_Living_Network_Alliance.
Of course, Apple seem to keep wanting to do their own thing, and their own thing only, so there is no native UPnP support in Mac OS X – nor is it likely to ever happen, thanks to AirPlay and the like.
|Libraries||Oct’11||miranda-upnp||The simplest possible Python library, weighing in at 50K of code. Includes discovery, enumeration, the works.|
|Apr 12’11||Brisa||Another Python implementation with Qt bindings.|
|upnpx||A Cocoa and C++ library for iOS and OSX.|
|Apr 2’11||minidlna||A DLNA server and tools|
|Jan 6’11||miniupnp||Heartily recommended, includes an easy-to-use IGD port mapping tool|
|Older||gupnp-igd||for poking ports through Internet Gateway Devices|
|upnpportmapping||a cross-platform library and tool|
|Miranda||a UPNP administration tool|
|Coherence||a Python framework, featuring an inspector for debugging.|
|gUPnP||a C and GTK single-threaded framework to implement UPnP browsing and manipulation (including the creation of graphical tools)||
||GUPNP Network Camera||a server and control point based on the above|
|libupnp||The basic stuff||
||Tools||Mar 4’11||UPnP Help||Test cases and tools|
|Servers||Feb 2||ps3mediaserver||Java “DLNA”:Wikipedia:Digital_Living_Network_Alliance server specifically developed to stream media to the “PS3”:Wikipedia:PS3||
||Older||FUPPES||seems to play along well with MacPorts|
|uShare UPnP A/V Media Server||simple, straightforward, written in C.|
|MediaTomb||trendy, somewhat ugly UI.|
|TwonkyVision Media Server||(commercial, Mac OS X installer requires you to reboot, which is preposterous)|
|djmount||an installable filesystem, might work with MacFUSE|
|Programatically Controlling a UPNP Firewall||fear.|
|CyberGarage||lots of sample code and packages (even for Mac OS X), including “CyberLink”:SourceForge:projects/cgupnpjava/ for Java and “CyberMediaGate”:SourceForge:projects/clinkcc/ for C++|