jeromeharris wrote: > Has anyone posted a function-oriented description of the various > hardware and software elements of the SBT--sort of a "system > architecture" portrait?
You asked for it! I'll describe the architecture for the newer devices such as the SBT, it's slightly different for the older devices. The squeeze box system architecture consists of three logical parts: servers, players and controllers connected by a network. These do NOT have to be separate boxes. The server is the brains of the operation. Servers send audio data to players, the players can only play what they get sent by a server. There are two basic categories of server: local server (currently called LMS) and the server in the cloud: MySqueezeBox.com. LMS manages a collection of music files, it keeps a database of information about each of these files, name, artist, album, year etc. In most cases this information is stored in tags embedded in the files. (It can come from other sources, but thats another discussion). The server allows the user to search through this information in various ways to choose what music to listen to. After the user chooses a selection of files to listen to it reads the files and streams the audio data to one or more players over the network. There are several different stream formats supported, the user can choose which to use. LMS can also connect to music streams over the internet (internet radio) and stream this to the players. MySqueezeBox.com is implemented by big server computers located in various locations around the world implementing MANY MANY instances of s special server. This server serves two primary purposes, it allows players to receive music when you don't have a local LMS server (or it's turned off) and it is the gateway to internet based "music services" (Pandora, Rhapsody etc) The logical player is a black box, audio data comes in over the network and audio of some form comes out. Note there is NO user interface on this logical construct. The user interface exists in the controller entity. The controller is the user interface for the system. It talks to a SERVER, NOT a player. It tells the server to start sending audio to a specific player. It sends queries to the server (to find music by different criteria), displays the results and send the user's slection back to the server. Most of the servers actually contain a controller in the form of a web page as well These different logical parts of the system can come in different combinations in actual hardware. For example the Touch has all three. The Duet comes with a separte black box player and separate hand held controller. There are several software players, so you can listen to the music on your laptop etc. Some have controlers, some do not. There are controller programs that run on all kinds of computers, and controller apps for iPhones, iPads and android devices. You can also get player apps for these as well so you can plug a headphone into the phone and listen to the music as well as using it to control the hardware devices. The parts in the hardware devices are not dedicated to each other, although they usually work that way. For example you can use the controller in the Touch to control the player in another SB and use your phone to control the player in the Touch. You can have the Player in the Touch connected to MySqueezeBox.com while the server in the Touch is sending music to a software player on a laptop. It's an incredibly flexible system. The server in the Touch is "special", it's called TinyLMS, it's the same server but it has a lot of stuff turned off so it will fit in the small amount of memory in the Touch hardware. It's not exactly what you would call "rock solid, plug and play", it's trying to do a lot on very limited resources and if you are not careful it can become a very frustrating experience. It sounds like from your post you are NOT a person who would relish the task of getting TinyLMS to do what you want. This is not to say it's useless, some people manage to use it just fine, but others are constantly fighting it. My impression here is that you would probably be better off with a server on a separate computer. This does NOT have to be a full blown expensive computer, it can be a something like a SheevaPlug (which looks like a wall wart power supply, but is actually a computer) which costs $100. You plug your USB drive into it and plug the ethernet into the network or directly into the Touch. There are MANY choices for a server and how you can hookup a system. You can use an already existing computer, but when that computer is turned off, you can't get any music out of it. If a computer has WOL (Wake On Lan) the server can be sleeping when not playing music and the Touch can tell it to wake up when you want to listen to music. Many of us hard core SqueezBox users have dedicated music servers, because the music goes over the network you can stick the server in the corner of the basement, the spare bedroom etc. Many people have repurposed on old desktop as the music server. Several NAS boxes have powerful enough processors to run the server on the NAS itself, this is a fairly popular option. (but it very slow on some that have wimpy processors) I hope you get the impression the SqueezeBox universe is rather flexible! Have fun! John S. ------------------------------------------------------------------------ JohnSwenson's Profile: http://forums.slimdevices.com/member.php?userid=5974 View this thread: http://forums.slimdevices.com/showthread.php?t=96003 _______________________________________________ Touch mailing list Touch@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/touch