A Python UPnP Media Server
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.5 KiB

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 <localip> [ <http server port> ]

Good Luck!

John-Mark Gurney <gurney_j@resnet.uoregon.edu>