My Audio System
I've been into audio stuff for a long time. This page describes my stereo system as it is hooked-up right now.
First, the conventional stuff: I use my home made LM3886 chip based amplifier and my rebuilt Quad ESL-63 electrostatic speakers.
Thanks to the overactive imaginations of marketing executives at cable companies and subjective reviewers in audio magazines, there is more mythology about cables than even the ancient Greeks were able to make up about the whole nature of existence. I am not a believer in mythology. I like to see numbers. If there aren't any numbers, there isn't any engineering.
The interconnect cables I use are each made from three, Teflon-insulated, silver-plated wires braided together and soldered to gold plated RCA plugs. I use them because I made them and they work so why not? I was NOT able to hear any difference in the system after comparing them to several cheap coaxial cables that I have acquired over the years. Of course, when it comes to audio, I am an objectivist and realize that it wasn't really a valid test procedure...
My speaker cables are made from twisted pair ribbon cable. The idea of using such a cable is to minimize the inductance of the cable by having multiple insulated conductors connected in parallel. It works great for minimizing the inductance, but it raises the capacitance quite a bit. One can wax poetic for many a dull hour about cables but no one is interested in reading that sort of nonsense, so lets just say that I am unable to detect any audible difference between my cables and the $0.25/ft., 12 gauge zip cord that I used to use and still recommend to anyone who asks.
The rest of the system
is the interesting stuff. About a year ago I boxed up and put away my Teac VRDS-20 CD player, McIntosh MR-74 tuner, and the preamp that I used to switch between them. I also packed up all my CDs and put them away. The CD player, tuner, and preamp have been replaced by a small box with a nice blue vacuum fluorescent display. That box is called a Squeezebox 3 (SB3).
The CD is dead. As a music storage medium it is as dead as Edison cylinder records. They take up space and clutter up the living room. They can be lost or damaged. They have to be taken out of jewel cases, inserted into players and after playing they have to be put back into their cases. There is a new paradigm in the audio world. Music as data. The pod people (you know who you are) almost get it, but have been dazzled into accepting proprietary audio formats and DRM (Digital Restrictions Management) by clever marketing people and pretty hardware. Open source is the real wave of the future. Proprietary formats suck. They will only go away if people stop buying them.
All my CDs have been ripped and stored on a hard disk drive in a PC. There is an audio server program called Slimserver (SS) running on the PC. SS sends the data from the PC via my wireless computer network to the SB3 that is connected to the amp and speakers. The SB3 houses the digital to analog converters that turn the digital data back into music.
Where can a person to go to hear new and varied music these days? Forget AM and FM radio. You can pay a monthly subscription fee to listen to Howard Stern (boy, was I glad when he left the terrestrial broadcast stations for the satellite!) and a bunch of commercial free stations programmed by genre, or you can do what us cheapskates do and turn to the internet, of course! I'm not talking about downloading pirated music. I'm talking about the thousands of internet only "radio" stations that play the 99.9% of stuff that never gets played on broadcast radio. Some of that stuff is pretty good!
Previously I said I replaced my tuner with the SB3. This is the really interesting part of the SB3: it can directly access internet radio stations and the internet feeds of real radio stations, not just from the US but from all over the world. Even if you don't have your CDs ripped to a hard disk drive and don't run a PC with SS, you can plug in an SB3 and access all those internet "broadcasters" that can play what they want, when they want, without any interference by the FCC or the big companies that bought and control all the real radio broadcasters.
What can you hear? Check out Shoutcast, RadioIO, Pandora, and Live365 for starters. Do a search for "internet radio" and you'll get thousands of hits. All these stations can be accessed via the SB3. I like to listen to North African, Indian, and occasionally Middle Eastern music via the radio station internet feeds. If you like Jazz, Blues, Country, Rave, Trance, Hip Hop, Gangsta Rap, comedy, drama, whatever you're into, you can find it on internet radio. Even NPR is available from several different cities around the US.
The audio quality of these feeds can vary depending upon the broadcaster's connection bandwidth and the number of people that are listening to a given feed at the same time. The music on the internet radio feeds usually hasn't had its dynamic range compressed like radio broadcast station tend to do, and the S/N ratio is always high, like a CD. When the quality degrades due to large audiences, the high frequencies start to roll off .
and now a brief pause for a message from our sponsors...
For audio discussions and answers to queries, join the Home Theater Systems Forum now!
We now resume our regularly scheduled program...
Controlling the system:
The system comes with a small IR remote control. Using that remote I can create playlists consisting of any song on any CD in my collection. I can select the songs by searching or browsing by artist, genre, year, song title, or disc title. This all works surprisingly well even though I have the display on the SB3 set to display a single, large, scrolling line of text. You can try out the system (including the remote control operation) by downloading Slimserver and "Softsqueeze", an SB3 and remote control simulator that works exactly like the real thing.
Since the system uses a wireless computer network, there are other ways to control it. You can control the music playback from any computer on the network by accessing a web page. If the computer is the same one that is running Slimserver, you simply direct your browser to http://localhost:9000 If you are trying to control the server from a different computer on the network, just go to http://192.168.1.xxx/localhost:9000 where xxx is the appropriate value for the IP address of the host computer. That means you can control the audio server from a laptop, or even a PDA! I can use my wife's Palm TX to control the server. You can use any computer, any OS, any web browser to control the server. Here is a full size image of the web page interface:
All this functionality and simplicity is because the server is an open-source project. That means that the source code is made freely available and can be modified by anyone. At least a few of the developers at Slimdevices were hired by the company after they wrote some nice features for the server. The server is written in Perl, and text string manipulation language, and it can be ported to almost any computer running any OS. You can download Slimserver for free from the Slimdevices web site. They have Windows, Mac OS, and Linux versions available for FREE. I run the AMD64 version on my PC with 64 bit ubuntu Linux.
I have been looking into a nicer way to control the system. I could use a laptop computer, but they tend to be expensive, big, and heavy. I tried using my wife's Palm TX and it works OK but I found the experience less than satisfying because of the small screen and the fact that the browser doesn't cache pages (makes it pretty slow). I decided what I need is something between a PDA and a laptop... a tablet! I did some digging and found that older tablet PCs are available for the price of one of those fancy control-everything remote controls.
After looking at the options I settled on the Fujitsu Stylistic 3500 as the controller of choice. It is 8.5" x 11" x 1.1", weighs just over 3 lbs, and has a 10.4", 800 x 600, backlit, color touch-screen. The one I bought on ebay has a 6GB HDD, MS Win 2K Pro installed, 256 MB of RAM, and came with two batteries. All for a little over $200. Now I can use the tablet to select music using the touch-screen. I can now do everything I could do with the IR remote and I can even browse the CD collection by cover art.
Here's the touch-screen web page interface that is part of the Slimserver software package running on my ST3500:
Setting up the system
Now we get to the less than wonderful part of a Squeezebox/Slimserver system. Setting it all up requires a geek. If you are a geek, it will be absolutely no problem, but if you aren't, or you want to give a SB3 to your mom and dad for Xmas or Hanukkah, be prepared to set it up for them or hire a geek to do it.
Here are the major steps involved in setting up the system:
1) Set up a working wireless network. You may already have it, so adding on an SB3 will be very easy. There have been a few compatibility issues between the wireless network card inside the SB3 and some of the wireless network routers, so be sure to check the Slimdevices web site for compatibility info. The most popular router on the planet, the WRT54G by Linksys works fine.
2) Hook the SB3 to your stereo and turn it on. You can now listen to internet radio feeds.
3) Build your CD library. This is the tedious part of the job, and you can hire people (including Slimdevices) to do it for you. It isn't hard to do it yourself, but it involves a lot of mindless, repetitive work sitting in front of your computer. I can do it for you- send me an email and we'll work something out...
Tags are good. They are your friends. Tags store data about the music right there in the music file (if you use .flac or .mp3 file formats). They help your buddy, Slimserver, to build its own database that allows you to search for music by specific artist, year, etc.
There is another type of tag, called "replaygain". If you do a web search on "replaygain" you'll discover that there is a great deal of misunderstanding about what it does and doesn't do. Here is what it doesn't do: it doesn't destroy "dynamics", throw away digital data, or any of the nasty stuff you'll hear some people claim. It is merely a volume control setting number that is saved in each .flac file if you choose to fill replaygain tags. Replaygain values are set by determining the overall "loudness" of a song based on the digital data. The exact way it works can be found on the web, here.
There are two numbers that are stored in replaygain tags. They are album gain and track gain. You know how some albums contain some very quiet songs and others that are loud? All the songs on an album have the same album gain value written to their tags. That way when you play back an entire album, the relative volumes of the tracks are preserved. Track gain tags are filled based on the loudness of each song, independent of the others. A loud song will have a larger attenuation value set in the track replay gain tag than a quiet song. Why would anyone want that? If you play a bunch of different songs on a bunch of different CDs you have to keep readjusting the volume level so that the loud ones don't blast and the quiet ones don't get drowned out by the background noise in the room. If you populate the replaygain tags and tell Slimserver to use them to set the playback volume, it will automatically control the volume for that mixed song/artist playlist you just created. You can always turn off the "smart volume control" feature in Slimserver and play the files as if they don't have replaygain tags. Fill those replaygain tags!
Multiple artist/genre/year discs are a little bit of a problem to tag. Do you fill the year in each song with the album year or do you get picky and fill each song's year tag with the year it was released? You can get an anal-retentive as you want... Classical discs can be a real problem. How do you fill tags- Is the year the year the music was written or the year the CD was released? Is the artist the composer, performer, or conductor? You will have to make those decisions for yourself. You can find help on the Slimdevices forums... When you build the library, you might want to rip classical and multiple artist CDs last. That way you can listen to some music on the system to calm your nerves while you edit all those tags.
Building the CD library:
The first question is "how much hard disk drive (HDD) space is required for my CD collection?". It will vary a lot depending on how you compress the music. If you use .mp3 files it will take much less space than if you use .flac. I use .flac, and can tell you that I have 675 CDs stored in a single 250 GB HDD with about 30 GB left.
I found the most efficient way to build the library was to rip a bunch of CDs, maybe 100 at a time, then compress and tag those 100 discs, then add replaygain tags to those 100 discs. Of course, you can go through the whole process 1 disc at a time, but don't blame me when you have to start taking Prozac. Here's the batch process (I assume you are running Windows and have a CDROM drive in the computer):
A) Decide on the library structure that suits your temperament.
I have mine set up in like this: D:\MUSIC\genre\artist\year - disc title\track no. - song title
The numerous subdirectories make it easy for me (not Slimserver) to locate things on the HDD. They are not required by Slimserver. Slimserver does all browsing and searching by the tags. If you don't fill the tags, you will limit your ability to search through your music for that one song that will complete that perfect playlist.
B) Download and install the following FREE programs to the computer that will be the audio server:
Slimserver - duh!
Exact Audio Copy (aka EAC). This program reads CDs in a CDROM drive and saves the music in .wav files on the HDD. When you install it, tell it you want it optimized for accurate ripping, not high speed.
FLAC - Free Lossless Audio Codec - this program compresses the .wav files and stores them as .flac files. It also adds tags (more details later). The compression is lossless- that means that it keeps ALL the information on the original CD, unlike .mp3 which throws away some of the information.
Foobar2000 - this program is used to add replaygain tags (details later).
C) Set up EAC to accurately rip your CDs and start ripping.
Store the .wav files in the directory structure of your choosing. Start
EAC and hit F9. Select the "directories" tab. Click "use this
directory" and enter "D:\MUSIC" (or some other location of your
choice). Now select the "Filename" tab. Fill
the "naming scheme" box with this string: "%B\%A\%Y - %C\%N - %T"
(or whatever format pleases you). Now you
are ready to rip.
Insert a CD into the CDROM drive. EAC should automatically go out and grab the titles, etc. from FreeDB or CDDB. This is the painful part: each time you insert a fresh CD, check and correct errors in the FreeDB/CDDB data before you start the actual rip, and believe me, there are a LOT of errors. If you don't fix the errors they will propagate to the tags in the music files and you'll have to explain to your geek friends why some of your song titles displayed on the SB3 are misspelled or all-caps. Correct the errors in EAC and the tags will all be correct. Check the directory structure after you've ripped the first disc and make sure all is well. If you're happy, go ahead and rip a big pile of CDs.
D) Set up FLAC to compress and tag the files:
Do a windows search for *.wav files on the HDD where you have stored all the
.wav files. Start the windows flac front-end and drag the .wav files found
in the search to the file box in flac. Click the "verify", "add tags", and
"delete input files" buttons.
If you've ripped a single CD you can have flac add replaygain tags by clicking "replaygain" and "Treat input files as one album". If you are ripping a bunch of CDs, DON'T add replay gain tags. Use Foobar2000 for that after all the files have been flac'd.
Tell FLAC to populate the tags from the file structure: click "Tag Conf." button, then select "custom" and fill it with the appropriate string- from the example above, use "G\A\Y - L\N - T". Now hit the encode button and flac will compress and tag all the files based on the directory structure.
E) Add replaygain tags:
do a windows search for *.flac
files that you just made. Start Foobar2000 and drag the .flac files from
the search onto the Foobar2000 window. Select all (ctrl-A), right click,
select "replaygain", then "scan selection as albums (by tags)". Foobar2000
will now add replaygain tags to every flac file.
F) Tell Slimserver where the music is located:
Open the Slimserver web interface at http://localhost:9000. Select
"server" under the "settings" list. Under "music Folder", enter "D:\MUSIC" for
the library and click "change". Under "Rescan Music Library" click
"Rescan" and it will find all the music and set up its database so you can
browse/search by artist, album, song, year, genre, etc. If you have a big
library it will take a few minutes to complete the scan.
That will do it. Each operation- ripping, flacing, and replaygain tagging can be done as a batch operation on as many CDs as you care to rip. Ripping takes the longest and is the biggest PITA because you have to sit there and change discs every few minutes and correct all the freedb errors. I had two computers with 2 CDROM drives in each doing the ripping and it took me about a week to rip all my CDs.
If you DL music you'll often have to add or correct the tags. A freeware program called EasyTag works for that. The user interface takes some getting used to, but once you figure it out it is easy to use. Another program called FileRenamer Basic can be very useful.
Album/CD Cover Art Work
Now you have all the music, but what about the covers of the discs? You can set up your scanner and scan all your CDs or you can grab the images off the web like I did. I used a semiautomated program called Album Art Aggregator. Most of the web images are OK. 300x300 pixels is a good size, and the default that slimserver sends to your display- it will shrink larger images unless you tell it not to. If you prefer 400x400 you can set it up. It is possible to embed the cover image in the music file, but I chose the simpler approach of simply putting the art work in the same folder as each CD. The files are all named "cover.jpg" which is the default, again, you can chage that if you want to. Once you have loaded the art work, you need to tell slimserver to wipe out its library and rescan everything. You do that using the "server settings" on the web interface.
There is an in-depth explanation of how Slimserver handles the art work in the wiki at slimdevices.com.
Now that you have a library of CDs on HDD...
and you know how much work it is to build that library, its time to start thinking about back-ups. I have an extra 250MB HDD in an external HDD box with a USB interface that I use for back-up on my system. The advantage to using an external drive for backups is that you can take it to a friend's house to supply music for a party, or you can take it to work and play your stuff there (you can actually set Slimserver up so that you can access your server at home from anywhere on earth via the web, if you have high speed connections at both ends).
When shopping for a drive here is something to consider: you will only be writing to the disc when you first copy the music to it. After that it will be used mainly for playback. You don't need a high speed drive or a big buffer to play back music. Buy the cheapest drive you can find. These will usually run at 5400 rpm and have 2MB buffers. No problem. I like refurbished drives myself, because I'm a cheapskate. Try Geeks.com, TigerDirect, and other sources for refurbs around the web.
My library and backup discs are about full, so I will move the external 250GB drive into the server computer with the one it is backing up and replace it with a 500GB drive in the external box. Then I will copy files the files to the 500GB drive, and clean off one of the 250s inside the machine, and I'll have another 250 GB of expansion room.
You can send email to me here: