This document describes the setup of SlimServer for transcoding of WMA (Windows Media Audio) and RM (RealPlayer Media) files for use with SlimDevices’ SqueezeBox music player on Windows 2000/XP/2003 Server
Author: Bernard Condrau, Version 1.0 written 22 November 2005, email: bernard@condrau.com
This description is not copyrighted, but I would appreciate if you let me know your findings when setting up your system
I own a SqueezeBox3, but I would expect that any SqueezeBox would show the same behaviour as described in this document.
Any computer which can run SlimDevices' SlimServer software. You can either use your PC you use to access the internet or establish a small home LAN with a dedicated server computer which always stays switched on. The requirements for a server computer are moderate, in my environment I use a Pentium III 200 MHz computer which is more than sufficient.
SlimServer 6.2.1 software works fine with my system. Download this version from SlimDevices’ support page at http://www.slimdevices.com/su_downloads.html.
LAME 3.96.1 is an open-source MP3 encoder which is not included in the SlimServer download package for copyright reasons. Older versions of LAME should work as well. You find compiled versions of LAME 3.96.1 at various sites, for the windows platform for example at http://www.rarewares.org/mp3.html. Find more information about LAME at http://lame.sourceforge.net.
Mplayer 1.0pre7try2 is an open-source RM decoder which you need to decode RealMedia Audio Files. If you will not need to listen to RealMedia-Audio, then you do not need to download and install Mplayer, Windows essentials and AlienBBC. You can download Mplayer at http://www.mplayerhq.hu/homepage/design7/dload.html.
Windows essentials codecs package which contains the codecs necessary for Mplayer. Please use the following link to download: http://www.mplayerhq.hu/homepage/design7/codecs.html.
AlienBBC 1.00 sets up the plugin for SlimServer and was originally created to allow to listen to BBC RealMedia streams. Download from http://www.x2systems.com/alienbbc.
SqueezeBox3 has genuine WindowsMedia streaming capabilities which is not available for previous versions of SqueezeBox. Therefore, if you own a SqueezeBox3 you can listen to WindowsMedia radio streams through SqueezeNetwork (access without computer possible), whereas for previous versions you need to set up your server software as described below.
Please refer to last chapter of this document to find some popular Swiss and German radio stations I tested the SqueezeBox with. So far, I have not found any streams which would not play on the SqueezeBox3.
To be able to play RealMedia streams, you need to transcode RealMedia radio streams to a MP3 stream in realtime. This job is done by the SlimServer software using Mplayer to decode and LAME to encode to MP3.
First, set up the SlimServer software. After having downloaded the software to your server computer (see link above), install SlimServer.
Download LAME and copy 2 files from the download package to the SlimServer directory. Extract “lame.exe” and “lame_enc.dll” to “C:\Program Files\SlimServer\server\Bin\ MSWin32-x86-multi-thread”. This path works for SlimServer 6.2.1 and Windows 2003 Server English edition, modify the path according to the SlimServer and Operating Systems’ version you are using.
Download Mplayer and extract “mplayer.exe” to “C:\Program Files\SlimServer\server\Bin\ MSWin32-x86-multi-thread”. Leave the newly created “mplayer” directory, but move the file “mplayer.exe” to “C:\Program Files\SlimServer\server\Bin\ MSWin32-x86-multi-thread”.
Download the Windows Essentials Codecs and extract “cook3260.dll”, “atrc3260.dll”, “sipr3260.dll” and “pncrt.dll” to C:\. Then copy these files from “C:\windows-essentials-20050412” to “C:\Program Files\SlimServer\server\Bin\ MSWin32-x86-multi-thread\codecs”.
Download AlienBBC and extract the whole package to “C:\Program Files\SlimServer\server”.
You might want to take look at the configuration file of SlimServer, but in normal cases no modification to this file are necessary to play WindowsMedia- or RealMedia-files. This configuration file contains the transcoding settings for SlimServer and is located at “C:\Program Files\SlimServer\server\convert.conf”. The following 2 lines are an extract from this configuration file and tell the SlimServer how to decode WMA files. You can leave these settings by default, but understanding the settings as explained in “switches.html” (included in LAME's download package) allows you to tune the performance of SlimServer.
For SlimServer version 6.2 and newer, use the following line: wma mp3 * *
[wmadec] -r 44100 -b 16 -n 2 $FILE$ | [lame] -x --resample 44100 --silent -q $QUALITY$ -b $BITRATE$ - -
For SlimServer versions prior to 6.2, use the following line: wma mp3 * *
[wmadec] -r 44100 -b 16 -n 2 $FILE$ | [lame] -x --resample 44100 --silent -q 9 -b $BITRATE$ - -
Relevant settings: Use SlimServer’s web interface to modify the parameters $BITRATE$ and $QUALITY$ if necessary. By default, the bitrate is not limited in SlimServer. This means that SlimServer streams the music in uncompressed PCM to the music player. Should your home-network experience difficulties when streaming, try to limit the bitrate to 192 kBit/s. This will force SlimServer to transcode to MP3 and still garantee excellent quality but reduce the amount of data streamed. I experienced playback drop-outs when playing AAC-files from my iTunes library which I could also solve by forcing SlimServer into transcoding to 192 kBit/s MP3 format. The quality parameter can also be modified through SlimServer’s web interface. This will influence the quality LAME applies when encoding to MP3 format.
More sophisticated changes to the way SlimServer transcodes can be done in the file “convert.conf”. Be sure to understand the command line switches of LAME before you make modifications. Don't forget to restart SlimServer once you have modified the configuration file.
NOTE: Should you use Mplayer version 1.0pre6 or older, then you need to modify the file “C:\Program Files\SlimServer\server\slimserver-convert.conf” and restart the SlimServer software.
You also need to pay special consideration to your server computer's IP address. The following suggestions work best for the setups below:
SlimServer on a dedicated server: allocate a fixed IP address outside the dynamic IP range of your network. Example: 192.168.1.20 would work for a standard configuration with a router, where the dynamic IP range would start at 192.168.1.100. Access your router’s web interface to make the necessary changes, the router’s IP address is normally 192.168.1.1. Check your router setup through your router’s web interface.
If you plan to use SoftSqueeze on a stationary client computer (e.g. desktop computer), it is a good idea to assign a fixed IP address to your client computer also. In doing so, SlimServer will always recognize SoftSqueeze as the same player, since it identifies players through their IP address.
Access the SlimServer web interface through your web browser on the client computer and enter the following web page: http: 192.168.1.20:9000 SlimServer on a client computer: If your client has a fixed IP address (e.g. 192.168.1.30): Access the SlimServer web interface through your web browser on the client computer and enter the following web page: http://192.168.1.30:9000 If your client has a dynamically allocated IP address: Access the SlimServer web interface through your web browser and enter the following web page: http://localhost:9000, or double-click the SlimServer Icon in the system tray. If you answered “yes” to the question wether SlimServer should start automatically, the SlimServer service will start automatically every time Windows starts. If the server is located on your client computer and you do not always need SlimServer active you might want to change this setting. Open “Services” from within “Administrative Tools” which is located in the Control Panel, find the SlimServer service and change the behaviour from “automatic” to “manual”. Furtheron, start SlimServer through the Icon in the system tray of Windows.