Home of the Squeezebox™ & Transporter® network music players.
Results 1 to 10 of 10

Thread: Daft questions

  1. #1

    Daft questions

    I think I know the answers but:-

    1. Does MySB reside on the web or PC?

    2. Does LMS (web control) reside on the web or the PC (just using a browser for display)?

    TIA.

  2. #2
    Senior Member aubuti's Avatar
    Join Date
    Oct 2005
    Posts
    8,373
    If by 'web' you mean the internet, then

    1. mysb.com is on the web

    2. LMS is on your local pc (if you installed it)

  3. #3
    Exactly as I thought, thx.

  4. #4
    Senior Member
    Join Date
    Jun 2006
    Posts
    1,484
    At this point I think you need the architectural model of the squeezebox system, I think it will make things go a lot smoother for you.

    There are three components in a squeezebox system: player, server and controller. Each of these is connected via a network.

    Think of the player part as black box, it gets audio samples streamed to it from the server. If the player has the capability to display images it can also have cover art streamed to it from the server. The player is a pure slave to the server, it plays the samples it is sent and displays what it is sent.

    The server is the heart of system, it connects to sources of audio samples (files on a hard drive, files on a NAS box over a network, stream over the internet etc) and sends them to players. A particular server can support many players and controllers. The server keeps a database on information about the "song files" it knows about. This database can be used to sort and search for music in many different ways. The data for this database usually comes from tags in music files.

    A controller controls the behavior of a player, but it does not talk directly to the player, it talks to the server on behalf of the player. The controller is used to specify what music out of the library to play, and when to play it (stop, start, volume etc). The controller also displays to the humans the status of what is playing etc. In general a controller can control one player at a time, but can be switched to controlling different players. Thus with one controller you can start playing music on playerA, then switch to controling playerB and start music playing on it.

    First lets go into into a little more details about servers. There are three types of servers: LMS on a computer, mysb.com and TinyLMS. LMS is a perl program that runs on your own PC. It can see music files on drives on the computer or over network shares from some other system. It can stream music to many players and receive commands from many controllers. It hosts a web page which is both control for the server itself (where music files are stored, when to scan the files to rebuild the database, what format to stream samples to the players etc) AND a controller. As with any controller you can choose what player is going to be controlled at any given time.

    Mysb.com is the "server in the cloud". Logitech maintains banks of computers in various parts of the world that contain many instances of a special version of the server. The primary reason for mysb.com is to provide audio data from the internet to players that are not connected to a local LMS, either because the you don't have any of your own files, or your computer is turned off but you still want to listen to internet radio. At this time mysb.com does not offer "cloud storage" for your own files, it is purely about streaming sources on the internet. Mysb.con also provides a web page which is a controller but it's a little different in that it can only control the player when it is connected to mysb.com. You can connect other controllers to mysb.com to control a player, you don't HAVE to use the web page controller (remember a controller is actually talking to the server on behalf of a player, not directly to a player).

    TinyLMS is a stripped down version of LMS that runs on the Touch hardware. Because of memory limitations it cannot host a web page. This causes a problem because the web page is how humans perform setup operations on the server. This made it difficult for the developers, they had to come up with a setup for the server that would work in all cases without any user setup options. Tiny LMS is also has other restrictions such as no plugins or transcoding (the Touch hardware does not have enough memory to support these)

    Controllers can either be in SB hardware or software running on other computers. Many people use controller apps that run on iPhones, Android phones, plugins to browsers, separate programs that run under various OSes etc. You can choose what server a controller is connected to (say your local LMS, mysb.com etc) and what player it is controlling. A particular player can actually be controlled by more than one controller at a time. For example you can control the player in a Touch with both the controller in its own box and with iPeng on an iPhone. Both controllers will get the same status from the server. If you try and push the stop button on one and the play button on the other at the same time, things can get rather interesting!

    Different hardware boxes have different implementations of these. The initial squeezeboxes (up through the SB, transporter and boom) have a player and some form of display and interface. They didn't really have a controller in the sense of the above architecture, The display, IR remote and buttons (if any) interfaced directly to the server, which created an instance of a controller for that player. The Duet contained a player box and separate handheld controller box. (the controller can control other SB players and the receiver can be controlled by other controllers). The Radio has both a player and a controller in one box. Most people don't do it but it is possible to control the player part from another controller, and you can use the controller part to control another player. The Touch contains all three parts in one box, server, controller and player. They are all independent pieces that just happen to share the same box. The Touch screen is connected to the controller NOT the player, so you can use the screen to control another player if you want. You can control the player from another controller. The server can send audio data to the player in the Touch and to other players. If you really wanted to you could have the player in the Touch connected to LMS on a different computer, the server in the Touch supplying audio to another squeezebox, the player in the Touch connected to the controller in another box and the controller in the Touch controling another player. Why you would want to do this I don't know, but the architecture does allow it! (I've actually tried this and it does work)

    I hope this overview of the architecture makes it a little easier to understand how the system works.

    John S.

  5. #5
    Senior Member
    Join Date
    May 2008
    Location
    United States
    Posts
    8,218
    Outstanding overview John. This should be a sticky or part of wiki.
    Location 1: VortexBox Appliance 6TB (2.2) > LMS 7.7.2 > Transporter, Touch, Boom, Radio w/Battery (all ethernet)
    Location 2: VBA 3TB (2.2) > LMS 7.7.2 > Touch > Benchmark DAC I, Boom, Radio w/Battery (all ethernet except Radio)
    Office: Win7(64) > LMS 7.7.2 > SqueezePlay
    Spares: VBA 4TB, SB3, Touch (3), Radio (3), CONTROLLER
    Controllers: iPhone4S (iPeng), iPad2 (iPengHD & SqueezePad), CONTROLLER, or SqueezePlay 7.7 on Win7(64) laptop
    Ripping (FLAC) - dbpoweramp, Tagging - mp3tag, Spotify

  6. #6
    Senior Member
    Join Date
    Oct 2009
    Location
    VT, US
    Posts
    149
    I agree. This is a great overview and might help obviate some of the confusion people have when they are new and start with mysqueezebox.com and then move to LMS and wonder where all their favorites went and get all panicky thinking that the the system has dumped them and saying mean things about our lovely squeezetoys.

  7. #7
    Senior Member
    Join Date
    Apr 2005
    Location
    Colorado
    Posts
    10,101
    Quote Originally Posted by JohnSwenson View Post
    There are three components in a squeezebox system: player, server and controller. Each of these is connected via a network.
    The 'controller' was only an integral part of the Duet system, not of any other Squeezebox product. All other Squeezeboxes are controllable by an IR remote and, on some, a front panel or touch screen. These other interfaces are not connected via network, although their dispatches are passed by the player over the network to the server.

  8. #8
    Senior Member pippin's Avatar
    Join Date
    Oct 2007
    Location
    Berlin
    Posts
    10,411
    Quote Originally Posted by JJZolx View Post
    The 'controller' was only an integral part of the Duet system, not of any other Squeezebox product. All other Squeezeboxes are controllable by an IR remote and, on some, a front panel or touch screen. These other interfaces are not connected via network, although their dispatches are passed by the player over the network to the server.
    That's not true for all the new models (Touch, Radio, Duet).
    Internally these are split between a controller application (the UI you see) and a player application both of which can act independently of another and I even frequently manage to connect them to different servers (though this is certainly a bug in the software). In any case you can disconnect them enough that you can use the UI of one Squeezebox to control the player of a different one. This will then even be true for your IR remote actions.
    ---
    learn more about iPeng, the iPhone and iPad remote for the Squeezebox and
    New: Logitech UE Smart Radio as well as iPeng Party, the free Party-App,
    at penguinlovesmusic.com

  9. #9
    Great response, Jon, so many thanks.

    I'll read it later to give it the time it (you) deserves.

  10. #10
    Senior Member
    Join Date
    Jun 2006
    Posts
    1,484
    Quote Originally Posted by JJZolx View Post
    The 'controller' was only an integral part of the Duet system, not of any other Squeezebox product. All other Squeezeboxes are controllable by an IR remote and, on some, a front panel or touch screen. These other interfaces are not connected via network, although their dispatches are passed by the player over the network to the server.
    When I talk about "controller" I am talking about the abstract logical construct I call a controller, not the physical box called the Controller. The logical controller has two parts, one is the human interface, buttons, display screen etc, and the part that sends commands to the server, such as start, stop, display the results of a query to the database.

    There are different physical implementations of this logical construct. In the case of the Radio, Controller and Touch there is a local processor in the box running a program called squeezeplay, squeezeplay will read buttons, IR codes from a remote, touches on the Touch screen and display things on the LCD screen. It takes the information in and sends commands over the network to the server.

    On SB3, boom, transporter etc, the server software creates an instance of a controller running on the computer the server is running on, the SB hardware sends IR codes, button presses etc to this controller instance and this controller instance interprets them and sends the same commands to the server. So architecturally, logically, it's the same model, even though the physical implementations are quite a bit different.

    All the different methods of control do the same thing, they have some way of interacting with humans, some software to interpret that interface and send commands to a server. It might be iPeng on an iPhone, the web page hosted by the server, squeezeplay on a Touch, or that special controller instance created by the server for an SB3. Logically they are all the same thing.

    John S.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •