This code was abandoned by Tim Potter. It is licensed under the MIT license at: http://opensource.org/licenses/mit-license.php As I should be getting my D-Link DSM-520 today, I need a UPnP Media Server that I could use to stream data with. I tried one, but it had issues running under FreeBSD's Linux emulation, so I found this code that was was a good framework. After a few days, I have the code working sucessfully with Intel's Media Control Point, and Intel's Media Renderer. I have streamed both mp3's and wmv's to the renderer. They are good tools for testing and available at: http://www.intel.com/cd/ids/developer/asmo-na/eng/downloads/upnp/index.htm I have added a number of new features: Don't bind the UDP socket to the multicast address, so replies go out on our local IP. Send out notify requests when we register the services with SSDP. Send out byebye notifications when we are shutting down. Randomize the UUID for the server (this should be part of the saved state). Randomize the port, or optionally set it on the command line. Teach ContentDirectory.py the basics on handling Containers and generic browse support. You can addItem and addContainer, which each return either respective ObjectID. We already support partial chunking of responses, but we don't yet support filtering or sorting. Either make a directory media and put the files there, or make a symlink named media to your media files. Either will work. Run it as: ./pymediaserv [ ] Good Luck! John-Mark Gurney