Philips Streamium MC-i200

Description of the PC-Link protocol (this is the network protocol used by the MC-i200 to share music across the network): http://www.siteswap.org/streamium/protocol.html. I made a backup and published it here.

streamiumd - a great pearl software by David Witt and Nathan Peterson

streamiumd is a streaming software that can be run on computer to offer mp3s for the MC-i200 to be played. It replaces the PC-Link Software (special version of MusicMatch Jukebox).
A copy of the code is to be found at https://github.com/vLj2/streamiumd.

Download the script: http://www.witt.tv/streamiumd/streamiumd and save it somewhere:

cd ~/Downloads
wget http://www.witt.tv/streamiumd/streamiumd
chmod +x streamiumd
chmod 700 streamiumd
sudo apt-get install libmp3-info-perl

Start the server, make it show up as Philipp's Server, and serve mp3s from ~/music/JohnnyCash:

./streamiumd ~/music/JohnnyCash -d "Philipp's Server"

Start the server, make it show up as Philipp's Server, serve mp3s from ~/music/JohnnyCash, and stream mp3s on port 8081 (note: separate ports are NOT required if running on multiple machines with different IPs, but then you probably want to use different server names):

./streamiumd ~/music/JohnnyCash -d "Philipp's Server" -p 8081

The same, but watch it in action using the -n switch (don't daemonize.. useful for testing):

./streamiumd ~/music/JohnnyCash -d "Philipp's Server" -p 8081

To end the streamiumd deamon:

kill -9 $(ps ax | grep streamiumd | grep -v grep | grep perl | awk '{print $1}')

If you encounter network problems, they may be due to restrictions imposed by your firewall. You may need to set your firewall to allow broadcasts (in the case of Firestarter, disable "Block broadcasts from external networks" in the settings). Also allow traffic on ports 42591, 42951, and the port you choose when running streamiumd (8081).
(I found out about these settings experimentally by observing the network traffic with Wireshark and filtering with eth.dst == 00:90:3e:xx:yy:zz || ip.dst == 192.168.1.10 || ip.src == 192.168.1.10.)

Resources

People who wrote software for the Streamium and found out about the protocol:

Comments