Entertainment/Media Links (Last updated: Sunday, Apr. 06, 2008)


Introduction

In my book (Linux Smart Homes For Dummies, Chapter 7) Terry Collins wrote about installing and using the TwonkyMedia server. Well I now have a, Linksys Linksys WMLS11B Wireless-B Music System, a D-Link DSM320 (Terry used a DSM320) and a Linksys NLSU with Unslung 6.8-beta (I think Terry was using an x86 Linux box). My DSM320 has arrived and I've been busy finding out everything I can about it. My friends and I spent one night setting the Linksys WMLS11B and NSLU project up and it worked quite well. I intend to write another 'chapter' using the NSLU2 and either post it as a magazine article or as a web page, we'll see. I did learn a few neat things while doing this. I'll also be posting that various links to various information I found on all of this to help other with such a setup. As usual, more to follow.

The DSM320 seems to work well enough. I can put video on the Twonky media server and it plays the OGG, MP3 and WMV formats pretty well. I haven't tried anything fancier. So far I've spent a lot of my time investigating how Linux gets put on the DSM320. I've managed to rip apart the firmware image and mount the CRAM FS on my existing x86 box (the DSM320 is an ARM processor). The Linux Journal has a good article on the CRAM FS. I can now get to the Busybox binary and everything else. The Linux Journal has a good flash based tutorial on Busybox. Now that the CRAMFS image is loaded I'll save the 'proprietary' files and see how I can fix in the others. This Linux image uses uClibc so I'll be setting up for it's usage. I need to match my dev environment to that of the binaries used by the DSM320 as I can't recompile the 'proprietary' binaries and I don't want to loose the functionality. I think it's uClib 0.9.15 and GCC 3.2.

I've also spent some time playing with MediaTomb on the NSLU. And I'm now beginning to work with it some more on my main x86 server. What I want is to transcode a few local radio stations so my WMLS11Bs can get them. There are quite a few radio stations that I can't pick up off the air. Probably because I'm too cheap to buy a proper antenna. ;-) Mediatomb has support for transcoding (decoding a stream, and re-encoding it into a nother stream such as Ogg to Wav or some of those crazy asf to mp3. This allows things like the WMLS11B, which has no support for Ogg to still listen to the stream.

One more thing to note: the WMLS11B doesn't like my WRT54G with Sveasoft Alchemy firmware. I've got to swap in my WRT54GL with OpenWRT (White Russian) to see if it works better. One of the little nasty things I've noticed with Alchemy is the the wireless devices all get NAT'd to the WRT's address, that's not bridging! The WRT54G also causes problems with Radio updates. The same WMLS11B works fine with my friends D-Link router so I know it's not the WMLS11B.

Software list - UPnP Servers

UPnP Servers - This page is currently under construction. So pardon the mess. Over all it should be operation (working links) it just that it's missing the diagram, a working explaination of UPnP and a few other things like logical text. I'll work on that. In the mean time here are the links.

UPnP Diagram

Need a diagram of the WMLS talking to a UPnP server and out to the internet. UPnP diagram

DLNA - Digital Living Network Archetecture

I'm working on this. I'm currently a little confused about the relationship between DLNA and UPnP. As far as I can tell DLNA is a subset of UPnp but with tighter rules and a slightly modified set of protocols (so their incompatible). Of course more to follow.

Server Price Windows Mac Linux Music Photo Video Transcoding
Cidero Internet Radio Station Server (Java) Free X X X X X X
Cyber Media Gate (Java) Free X X X X X X
MediaTomb Free
X X X X X
MythTV Free

X X X X X
uShare Free

X X X X
Rhapsody 12.99/month X X X X


TwonkyMedia 39.95 X X X X X X X

What is UPnP

UPnP (short for "Universal Plug and Play") is a set of computer network protocols from the UPnP Forum. The goals of UPnP are to allow UPnP devices on a network to detect each other and connect seamlessly, without the need for manual configuration on the users end, and then be able to share/stream data (usually video and audio files). For a more detailed explaination on the inner working of UPnP please read the "Developers notes on UPnP" section at the end of this article. There are three main types of UPnP AV (Audio/Video) device control protocols (also called profiles); there is the "UPnP AV MediaServer" which sole purpose is to share content, and there rhe "UPnP AV MediaRenderer" which render content to exposes an interface to control the playback, and then there is the "UPnP AV MediaServer ControlPoint" which can detect/find "UPnP AV MediaServer" and browse them to read media/data from them. A DMP (Digital Media Player) like XBMC typically only implements the "UPnP AV MediaServer ControlPoint" device profile.

Much of this information comes from the XBox Media Center (XBMC) Wiki

UPnP links and Libraries

DLNA links

MythTV

At this moment MythTV may not be a UPnP media server but I'm betting that it will go in that direction if it hasn't already. So I'm making sure it gets a prominent postion at the front of the page. :-)

Now to make a bit of a mess of this. The following links are related to MythTV but also to control of lights and appliances. Seems that Pluto Home integrated MythTV and Zwave in it's suite. Then a few folks started putting things together and build systems. Then LinuxMCE (running KUbuntu) creates a ready made distribution that make the whole thing a lot easier to use!

Free UPnP MediaServers

Linux Media Players

UPnP Clients

Streaming Servers

This section is for stuff that doesn't quite fit elsewhere. These servers are not UPnP but are streaming servers.

Commercial UPnP MediaServers

UPnP MediaServer hardware

Links