Adventures In uPnP Media Servers

rojo

rojo

Audioholic Samurai
Firstly, this isn't so much a plea for help as a chronicle of my adventures. Feel free to offer advice, sympathy, testimonials, insults, whatever you feel is appropriate.

My receiver is a Marantz SR6008. My media server is a PC running Win 7 Home Premium. Marantz offers a nifty Android and iOS app that lets me remote control my receiver from my phone and iPad. This lets me do neat stuff like streaming music from uPnP / DLNA sources without having to turn on my television or even be in the same room.

Spoiler: I've settled on PS3 Media Server for serving local streams (for now).

The best part about DLNA and uPnP is also the worst part. DLNA is supposed to be completely transparent to the end user. This means it's magic when it just works; but, without any configuration interface, impossible to troubleshoot when it doesn't.

At first, I used Windows Media Player 12's built-in "Allow access" stuff. WMP works great for natively supported formats, but I have quite a few FLAC files I want to include in my available library. At first, FLACs weren't visible to my receiver. Installing the Xiph.org open codecs made them visible, but grayed out and without metadata. WMPTagPlus fixed the metadata issue, but my receiver still refused to play FLAC files. (Oddly enough, FLAC files were simply grayed out in the Android app. On the television interface, they had a jpeg icon.)

Then I tried turning off WMP's streaming and enabling uPnP in XBMC. I should mention that XBMC is my preferred media player at the desktop. XBMC + Harmony Remote = win. It would've been nice if XBMC had solved my problem, but I never was able to get a folder listing over the network. Still, it'd be nice to run a server for which I don't need to keep a GUI open.

Then I tried foobar2000 with the uPnP / DLNA add-in. Finally, I was able to play my FLAC files. But foobar2000's uPnP plugin insisted on transcoding and streaming my FLAC files as 44.1khz 16-bit WAV regardless of my efforts to configure otherwise. I'd rather stream FLAC as FLAC, but I'd take a WAV stream if I had to. Nevertheless, it itched my OCD. foobar2000 had some other displeasing issues, such as no option to run as a background service and no worthwhile interface that I could find for managing file associations.

Serviio looked interesting, but it required a separate 64-bit Java Runtime Environment. To be honest, I don't even want the 32-bit Java that I already have and regard as a necessary evil. I uninstalled Serviio before ever getting to run it. (Are there any good Python-based DLNA servers?)

Then came the PS3 Media Server. After poking around with it for a few minutes, lo and behold! I can now browse my FLAC files, and the Marantz reports an honest-to-God FLAC stream. About time, right?

It's not without its niggles though. PS3MS is also Java-based, but at least it includes its own portable version of what it needs. The most annoying thing is that it does offer an option to install as a Windows service, but I never could make it work. I followed a couple of how-to guides, tried configuring the service to run as my desktop user account as well as Local System, and generously applied firewall exemptions. But no amount of effort would allow me to browse my music folders with the service started and without the GUI. I'm apprehensive about seeking help from the PS3MS community, as all the Google results seem to indicate typical responses of RTFM and GTFO, even though TFM isn't exactly what I would call polished. The PS3MS forums make me sad.

Ultimately, I decided just to drag a shortcut into my Start menu --> All Programs --> Startup folder, and check the option within PS3MS to start minimized. So now PS3MS runs with a systray icon that I can easily ignore, and nothing on the taskbar unless I open the GUI. Close enough.

There's a fork of PS3MS called Universal Media Server that I might try later. Maybe that'll fix the background service issue? Since things are working well enough as-is, I'll have to see what sort of mood I'm in the next time I get time to mess with stuff.

Edit: BoredSysAdmin pointed me to another project that looks very promising, MinimServer. I'll be giving this one an audition next.
 
Last edited:
Lulimet

Lulimet

Full Audioholic
Forget about all of that and get a Western Digital MyBook Live like this one Amazon.com : WD My Book Live 2TB Personal Cloud Storage NAS Share Files and Photos : Networked Attached Storage : Electronics

Connect it to your router, do the initial setup and never mess with it again. No need for your PC to be on or other nonsense like that.
I have the Marantz 6008 and use that same WD NAS with good success. I have WAV, Apple Lossless, MP3, and FLAC files in there and the 6008 plays them with no problem.
One thing you have to know is that the album image has to be inside the album folder otherwise the 6008 won't display it.
 
rojo

rojo

Audioholic Samurai
Nah, my white whale isn't worth spending money on. I've already got over 9TB of storage in my HTPC. I agree that an appliance with DLNA (or at least DLNA-compliant uPnP) functionality built in would probably be easier and would free up some CPU cycles in my HTPC though.
 
BoredSysAdmin

BoredSysAdmin

Audioholic Slumlord
Then I tried turning off WMP's streaming and enabling uPnP in XBMC. I should mention that XBMC is my preferred media player at the desktop. XBMC + Harmony Remote = win. It would've been nice if XBMC had solved my problem, but I never was able to get a folder listing over the network. Still, it'd be nice to run a server for which I don't need to keep a GUI open.
Why insist on upnp in Xbmc then you just browse on XBMC cifs/nfs shares from you nas?
Just add a cifs root music folder to xbmc - tell it it has music in it and done... (I don't have gui on my nas server, other few python app interfaces which I access on thru browser)

both DLNA and uPnP are great ideas, but executed horribly wrong due to lack of solid standards
 
rojo

rojo

Audioholic Samurai
I don't have a headless NAS. My music is on the same box that runs the XBMC front-end, located in D:\Music. I was thinking earlier that maybe I defined a location for my music in XBMC but somehow didn't define a library? That might explain why XBMC showed up as a uPnP source on my receiver, but all the categories were empty. I usually just browse my music by folder hierarchy within XBMC and Windows Explorer.

Anyway, I don't always run XBMC (for example, when I'm browsing the web or in a VNC session), so it'd be nice to have a background service handling the uPnP media sharing.

You're right about the horribly wrong execution. I'm on a mission to find the least bad Windows implementation that can be had for free. :)
 
rojo

rojo

Audioholic Samurai
No, and it looks very interesting. I'll give it a test drive tonight if I get a chance.
 
rojo

rojo

Audioholic Samurai
Rojo is on matter of principle is not interested in premium software :)
Imo UPNP streaming is limited Subsonic Premium ($1/month subscription )
Yeah, I see that under the "upgrade to premium for the following features" in the right column of the homepage.

I think all the worthwhile options for Windows are going to be Java-based. Know of any better Posix offerings I might be able to compile in cygwin?

I use subsonic and it is great. Streams to my phone too. Very nice.
Streams to your phone, huh? I could stream to my phone through an ssh tunnel, connect my phone back to my htpc with Bluetooth / a2dp+aptX, and play back through my receiver over hdmi. It's the Rube Goldberg method for high fidelity. If the universe suddenly implodes centered at my house, sorry all.

Sent from my LG-VS980 using Tapatalk
 
Last edited:
BoredSysAdmin

BoredSysAdmin

Audioholic Slumlord
Rojo, you seem to know what you are doing. Why limit oneself to the "all in one" Windows box?
Build or reuse old pc. Put some flavor of *nix on it and have it running headless 24/7.
 
rojo

rojo

Audioholic Samurai
I've got a fanless PC designed for use in a car. It's about the size of an external CD drive, and the top and sides of the enclosure are a giant heat sink. It's got a Celery 1.3GHz and half a gig of RAM IIRC. I've been running it as an Ubuntu shell server for years, but a brown-out a couple of nights ago just killed the power supply I think. I haven't cracked it open to see what it'll look like to replace, but it doesn't use a standard or even micro-ATX sized PSU.

I might be better off just replacing the whole thing with a Raspberry Pi. I'm not sure what I'm going to do yet.

By the way, I really dig MinimServer's flexible media organization. It has replaced the PS3MS as my preferred streamer. I was a little irritated at having to install Java x64, but I guess it's worth it. I still wish I could find a good Python or TCL or similar based uPnP media streamer, or anything really. Anything that doesn't require loading a bloated runtime environment like Java or .NET.
 
BoredSysAdmin

BoredSysAdmin

Audioholic Slumlord
hmm, if it's designed to be used in car, I find it's usual if it does indeed has 120v psu, I could see it's using car power - about 14v
And you know - celery is much, much faster than raspberry :D
 
rojo

rojo

Audioholic Samurai
Finally got around to yanking my 12v shell server out of the spaghetti for a closer look. It appears that the external power adapter's transformer blew That should be pretty easy to replace. Indeed, I think I already found one on Amazon for < 8 bucks shipped prime (which usually arrives the next day for me). Cool.
 
brabus

brabus

Audioholic Intern
Wild Media Server has been fantastic with my Denon X4000 and I believe its Python based. Never an issue playing any of the flac files I have. I've ran it head to head with Plex and find that Plex pales in comparison. I really don't understand why people like it so much, I've found it to be horrible.
 
BoredSysAdmin

BoredSysAdmin

Audioholic Slumlord
Wild Media Server has been fantastic with my Denon X4000 and I believe its Python based. Never an issue playing any of the flac files I have. I've ran it head to head with Plex and find that Plex pales in comparison. I really don't understand why people like it so much, I've found it to be horrible.
I have an issue with software which is not much more than custom gui (and imo a bad looking one) to open source software and charge $45 for it...
As for python - the only snake here is the oily one you're trying to push - The screenshots shows clearly a windows based gui and requirement to running in mac/linux require a Wine. I would bet it's ether VB or Delphi

Just my 2c

Plex server/client is not just DLNA server it is so much more. You're comparing apples to oranges
 
rojo

rojo

Audioholic Samurai
Well, the replacement power adapter fixed my fanless Celery PC, so now I'm experimenting with MediaTomb accessing my media over cifs via autofs. It's... well, I have no idea what I'm doing. :) I'm trying to tell MediaTomb to auto transcode ogg files, video/* and application/* mimetypes to 48KHz PCM24, but my receiver isn't playing them yet. And I think I still prefer minimserver's organization of my media, but I'm sure I haven't scratched the surface of what MediaTomb is capable yet.

Edit: Epiphany. (I'm reminding myself to try something like this when I get time.)
 
Last edited:
BoredSysAdmin

BoredSysAdmin

Audioholic Slumlord
Well, the replacement power adapter fixed my fanless Celery PC, so now I'm experimenting with MediaTomb accessing my media over cifs via autofs. It's... well, I have no idea what I'm doing. :) I'm trying to tell MediaTomb to auto transcode ogg files, video/* and application/* mimetypes to 48KHz PCM24, but my receiver isn't playing them yet. And I think I still prefer minimserver's organization of my media, but I'm sure I haven't scratched the surface of what MediaTomb is capable yet.

Edit: Epiphany. (I'm reminding myself to try something like this when I get time.)
Congrats on the resurrected celery :) and as for that you're trying to do - I have not idea :)
 
rojo

rojo

Audioholic Samurai
I found a note that ffmpeg can't readily write to a fifo because its default behavior is to open the destination file for reading before writing to it, and there's nothing in a fifo to read basically. Adding the -y switch makes ffmpeg do its voodoo. But now I'm struggling to find the appropriate way to trigger the transcode with MediaTomb. If I can figure it out, I can, for example, stream flv and mp4 files downloaded from YouTube as 24-bit PCM.

For now, I'm primarily streaming through minimserver. It doesn't have ogg support yet, but I think enough people have asked for it that it's finally on the author's to-do list.

I'm starting to wonder if I should try to write a uPnP media server. There are like 8000 of them, but none of them (the free ones, anyway) do everything exactly right. minimserver is pretty close, though.
 
brabus

brabus

Audioholic Intern
I have an issue with software which is not much more than custom gui (and imo a bad looking one) to open source software and charge $45 for it...
As for python - the only snake here is the oily one you're trying to push - The screenshots shows clearly a windows based gui and requirement to running in mac/linux require a Wine. I would bet it's ether VB or Delphi

Just my 2c

Plex server/client is not just DLNA server it is so much more. You're comparing apples to oranges
You are correct, it is not written in python its written in delphi, though I did say that I thought it may be written in python, not that I was sure. A bit of a rude comment, as I was simply sharing my experience, not pushing snake oil. The software works great for me, and yes it cost me $15 per device to use it but it works in streaming .flac files where Plex more often than not doesn't, at least in my experience.

Sure the Plex gui looks great, but when I open the Network input on my Denon the folders are presented in the same fashion and look identical with both programs as I am using Denon's on-screen display. The difference is when I click on a flac file one works and the other doesn't. Perhaps its a simple xml configuration change that needs to be made on Plex I don't know, but my point is out of the box one works and the other doesn't as it relates solely to streaming flac files. That is the only comparison I was trying to make and I'm sorry if I offended you.

Simply trying to offer my experience.
 

Latest posts

newsletter

  • RBHsound.com
  • BlueJeansCable.com
  • SVS Sound Subwoofers
  • Experience the Martin Logan Montis
Top