Configuring Squeeze Center
Now that you have the NAS and the SqueezeCenter software running, you can define where SqueezeCenter should look for music and playlists. I created a folder on the share called music, then inside that I created subfolders for MP3s, FLACs, and playlists. These paths get loaded into the SqueezeCenter settings (Figure 27).
Figure 27: SqueezeCenter path settings
Next, I copied some files to the NAS. In my case I copied about 180 GB to the drive, in a mix of FLAC and high-bitrate MP3 formats. As you might imagine, this process takes some time. Once the files are on the system, you can use the web interface to invoke a scan of the library. Upon completion of the scan, you can start the music playing.
There is an optional SqueezeCenter setting that forces the server to transcode the streams on-the-fly to MP3 at a user-defined bit rate. This is intended for use when streaming over a bandwidth-limited wireless network. It's not appropriate for most situations and so by default is disabled. This is optimal for the T5700, since transcoding presents increased CPU load.
Finally, Slim Devices periodically updates the SqueezeCenter software. When you run the software within FreeNAS you cannot simply install the update as you would on a normal PC. You must check Michael Herger's web site to see if he has released a revision of SlimNAS supporting the upgrade you wish to load.
At the time of this writing I am running SqueezeCenter v7.01 on SlimNAS v1.01. SqueezeCenter v7.1 has been released but requires SlimNAS v1.1.
Performance Testing - Streaming
It should be obvious that the little T5700 is not going to be as responsive as the P4-2.8 tower that it replaced. Interaction with the web GUI is not as snappy, but it's good enough for my needs.
Since I have several Squeezeboxes, I decided to do some simple throughput testing to ensure the 1 GHz CPU and one little 2.5" disk would suffice when feeding various combinations of music streams from disk and Internet sources. FreeNAS makes such testing very simple as it provides a dynamic graphic of both CPU usage and network traffic.
I started start by checking the baseline CPU usage when merely logged into the FreeNAS web interface and watching the CPU graph (Figure 28).
Figure 28: CPU usage while idle, caused by using web GUI
Before we can play any music we need to let the SqueezeCenter software scan the storage and build a database of the files it finds (Figure 29).
Figure 29: CPU usage at start of scanning music library
The highest CPU usage was displayed when the server was actively scanning the music library to build its database. This only needs to happen occasionally, after you've added some new content. The process of scanning my 40,000 songs took about 30 minutes, during which time the server was completely unresponsive, unable to play and even unable to offer its web GUI.
Once the database was built, the server returned to normal operation. I then proceeded with further CPU and throughput tests, starting with listening to a song in FLAC format (Figure 30).
Figure 30: CPU usage with one FLAC file playing
The CPU use shown during the idle period reflects the load presented by the FreeNAS web GUI including the graphing utility. The CPU load spiked during interaction with the Squeeze Center web GUI. The music stream only consumed about 10% of CPU power.
I next started an Internet Radio Stream, then added a FLAC stream (Figure 31). The heaviest CPU usage was once again encountered when interacting with the web interface.
Figure 31: CPU usage with one flac stream and one internet radio stream
The Internet radio stream consumed about 5% of CPU, and the FLAC file about 10%. By this measure, users with a single Squeezebox would find the little T5700 more than adequate.
Next, I measured CPU usage and network traffic while streaming music to two Squeezeboxes (Figures 32 and 33).
Figure 32: CPU usage with two FLAC streams
Figure 33: Network traffic with two FLAC streams
Then finally, all three Squeezeboxes (Figures 34 and 35).
Figure 34: CPU usage with three FLAC streams
Figure 35: Network traffic with three FLAC streams
In all cases the music played without interruption and during playback the Squeeze Center web interface remained functional.
I also tried playing three separate streams, that is, a different song on each system, as well as all three systems in sync. This did not seem to make any difference to either CPU usage or network throughput.