An Alternative Web Interface for the Logitech Media Server

Features

  • A desktop-like, responsive and intuitive user interface build with modern web technologies
  • Advanced playlist management
  • Custom search function
  • Integration with LMS Essentia, enabling searches based on analysis data like mood, genre, ...
  • Integration with LMS Musly, enabling searches for similar songs
  • Statistics with pretty graphs
  • Limited access to plugins / apps
  • Plus
    • Comprehensive album & artist information (via Discogs)
    • Artist / album / song information (biographies, reviews, lyrics, album covers, artist pictures) (via the Music & Artist Information plugin)
    • Internet radio
    • Favorites
    • ...

Scope

This is not, and is not meant to be, a complete replacement for the standard web interface. There is no access to settings and some other advanced functionality, and only fairly limited support for using the GUI of other plugins. The main focus is to show as much real-time information as possible at a glance, to enable quick and easy navigation through the music library, and to make managing the current playlist easier.

Status

It's mostly feature-complete (compared to the initial scope, which has, however, expanded quite a bit since the first release - mostly due to feedback from the Squeezebox forum), and fairly stable on my setup. I'd still consider it beta quality, though - I'm quite sure there are a number of bugs left.

Performance

The app places a higher load on the server than the standard web interface, since it fetches a lot more information more frequently. It also needs more resources on the client side, due to the completely Javascript-based GUI. That being said, it seems to be fast enough even on fairly low-powered hardware (tested on an AMD E-450 powered netbook). If your server is slow and your collection is large, you might run into performance issues, though.

Caching

The plugin caches results from LMS, meaning it's performance will improve the longer it is used (until the server is restarted, or the library is re-scanned).

Prerequisites

A (fairly) modern web browser:

  • Works well on Google Chrome / Chromium, Vivaldi and Internet Explorer 10. I'd recommend Chromium / Chrome, though, since it seems to have better Javascript performance - if you have issues, check first if it works with Chrome.
  • Reported to work on Opera, Safari and IE10
  • Mostly works on Firefox >= 21 (Firefox >= 57 recommended, though)

If you have a large music collection, your LMS server needs to provide adequate performance.

Installation

extGUI4LMS can be installed using Logitech Media Server's Extension Downloader. You should find it in the LMS web interface (Settings/Plugins/Other 3rd party plugins). If not, add https://www.nexus0.net/pub/sw/extgui4lms/repo.xml to the list of Additional Repositories in the Extension downloader plugin settings (located in Settings/Plugins in the standard web interface) and activate the plugin.
If the download of the plugin fails, make sure your LMS installation is SSL-enabled (e.g. on Linux / Unix, the perl modules Net::SSLeay and IO:Socket:SSL need to be installed (Debian package libio-socket-ssl-perl))

You'll find an entry in the Extras menu, which is just a link (to http://lmsserver:9000/plugins/LMSnewGUI/html/app.html?player=xx:xx:xx:xx:xx) , so you can bookmark it - it doesn't have to be launched from the regular web interface.

Usage Instructions

See the built-in help (click on the ? icon at the top of the application).

Configuration

Most settings in Preferences/Technical Parameters shouldn't be changed, except for the following:

  • App_covercache: LMS can pre-cache cover images during scanning for music files in order to display them faster in frontends. By default, it does this for a couple of standard sizes. In LMS >= 7.8, setting this to true adds one more size (200pixel). This improves performance, but will increase the the size of the LMS artwork.db
  • Ui_statesafe: Turn application state saving on/off.
  • Ui_fsCacheExpire: Depending on the number of folders / files, reading the music folder can be very slow, so the plugin can use a cache to speed things up. This parameter specifies when the file system structure show in 'Music Folder' should be re-read. Possible values: now, never, or a duration in a format of '[number] [unit]', e.g., '10 minutes'. The valid units are s, second, seconds, sec, m, minute, minutes, min, h, hour, hours, d, day, days, w, week, weeks, M, month, months, y, year, and years.
  • App_discogsToken: Token for accessing discogs (you need to create this in your discogs account).
  • App_muslyURL: URL to access LMS Musly. See the LMS Musly homepage for details.
  • App_showMessageSecs: How many seconds an information message is displayed

Information on the other settings can be found in the built-in parameters help (click on the ? icon at the top of the parameters window).

Reporting Issues

Use the discussion thread in the LMS forum.