Last year, I had a heckuva time getting my Linux box to serve music to an OmniFi DMS-1 via UPnP [musicstorage4, musicstorage6, musicstorage1, musicstorage2, musicstorage-solved3, musicstorage3, musicstorage-solved1, musicstorage8, musicstorage-solved2, musicstorage5, musicstorage7]. Since then, there has been a lot of progress with UPnP
in the open source community. There are now several open source UPnP media servers available, including uShare, GMediaServer, and MediaTomb.
I've been running the same Linux config since 1999, which makes compiling new software more difficult each year. Of all the UPnP servers I tried, only uShare would compile and run, and only after a little coaxing. Fortunately, uShare is a simple and elegant UPnP server, which is exactly what I was looking for.
uShare requires libupnp, which needs a little installation help. Once libupnp was installed, I was able to untar the uShare source and run ./configure without errors.
However, during compilation, I got some errors with the log_verbose function. It turned out to be some typos in the header file trace.h which were easily fixed. Here is a corrected trace.h file: trace.h
After building and running uShare, I added the UPnP multicast route as spec'd by the UPnP docs (route add -net 239.0.0.0 netmask 255.0.0.0 eth0), fired up the OmniFi, and it found the uShare server immediately! MP3 files played perfectly, but WMA files wouldn't. Turns out there is another typo, this time in mime.c: line 88 reads "http-get:*:audio/audio/x-ms-wma:*", but it should read "http-get:*:audio/x-ms-wma:*".
Finally, thanks to the uShare project over at GeexBox.com, I have a simple UPnP Media Server running on my Linux box. I still can't play WMA Lossless files on the OmniFi, but I might try my hand at realtime UPnP transcoding next…
Dear MikeyP,
How do you do. My name is Tooru Kosugi in Japan.
I have built the linux media server(fedora core5). I installed uShare. But this did not work well.
I can not play WMA and MP3. So I search about same trouble via internet and I found your blog site.
After changing in mime.c: line 88, WMA files played perfectly. Thank you very much !
But still MP3 files can not be palyed. After clicking MP3 files to play, uShare is shut down.
Please let me know, if you have any idea about this trouble.
Thanks,
Hi Kosugi-san, I'm happy that my blog post helped you. I'm afraid I've had more trouble with uShare. When I purchased an Xbox360, I saw that uShare 0.9.7 added Xbox360 support. I updated to libupnp 1.3.1 and uShare 0.9.7, and now nothing works. The Xbox360 does not see the uShare server, and my OmniFi DMS1 locks up when I select the music directory. I have no idea why this is happening, but in a few weeks, I hope to have time to figure it out.
I'll let you know if I get it working again.
Well, I gave up on uShare and tried gmediaserver. It works. Please read my gmediaserver post for more info.