- Published on
The MusicBee Remote plugin v1.5.0 is out
A rewritten core, auto-update mechanism, and what is next
The plugin has a new release. v1.5.0 is the first plugin update since v1.4.1 in 2021, and it is the second half of the modernization effort that produced v1.6.0 of the Android app earlier this year.
The plugin drops support for apps older than v1.1.0, adds some quality of life fixes, modernizes the implementation and sets the base for future development.
What I actually did
The plugin has been rewritten adding some quality of life fixes while setting the base for future development. The existing applications should be compatible with the new plugin version without any extra steps needed.
This new version brings the following improvements:
Browsing your library is faster and lighter. A caching mechanism pre-optimizes the library, reducing memory usage and improving performance.
The plugin can update itself. A new self-update mechanism has been implemented, allowing the plugin to automatically check for and install updates. This feature is optional and can be turned on in the settings.
Your MusicBee is easier to find on the network. The plugin now supports mDNS discovery, with the Android app picking it up in v1.8.0.
The settings window was rebuilt, and shows the addresses your phone can actually reach the plugin on, what the plugin has stored, and connections that were recently blocked. An easy diagnostics capture has also been added, to make reporting problems less of a chore.
Fixes worth calling out
- Syncing your library could quietly stop halfway, on both apps, and not every time. This is the one that bothered me most. The plugin had drifted out of step with what the apps expect from a connection, and it is back in step now.
- A busy session could stop responding. Some apps open a new connection for everything you do and never close them, and those could pile up until the plugin turned new ones away. What you saw was a screen stuck loading while play and pause still worked. The plugin now clears out the abandoned ones to make room.
- Uninstalling actually removes the plugin. The uninstaller had been looking in the wrong folder, so it deleted nothing while telling you it had worked, and removing the plugin from inside MusicBee left files behind. Both are fixed, and the second no longer means closing MusicBee first.
- Albums that come as one file with a
.cuesheet no longer show up as a list of "Unknown Artist" while playing. Support past that stays limited, and not by choice: as far as MusicBee will tell me those tracks are all one file, so browsing still shows the album as a single entry (details in #87).
The full changelog has the rest.
Getting it
Installer or zip from GitHub Releases, and the plugin guide if you want it step by step. Your settings carry over from v1.4.1 on their own.
One caveat if you tested the betas: 1.5.0-beta.1 and 1.5.0-beta.2 report themselves as plain 1.5.0, so nothing will ever look newer to them and they will never offer you an update. Install this release by hand once and updates work normally afterwards. beta.3 and beta.4 are fine.
What comes next
With the base work complete it is time to standardize the new wire format and start building the features that were not possible before. I decided to keep the existing wire format frozen so that current clients keep working, and to build a new version alongside it, stricter and carrying all the improvements that unlock those features.
The foundation is designed and built, but no client supports it yet and it is not part of this release. So far it has only been tested with the tools I built for the purpose.
Why should you care about this new wire format? It is because it unlocks a lot of new features that were not possible before.
- Sorting and filtering that works, because tracks will finally carry proper values for length and for year, rating and date added.
- Queue control: clear the queue, remove several tracks at once, and stop after the current track.
- Editing playlists from the app: seeing what is in one, and creating, deleting and reordering.
- Lyrics that follow the song instead of a block of text.
Along with artist images, tracks with more than one artist, libraries other than your music and the podcasts that come with them, and shutting the PC down from the app with permissions for a shared machine. Two old bugs are on the list too, because they can only be fixed in the new version: the playing queue ignores shuffle order and leaves out album information.
Further out
After finishing with the new wire format and the new features the plan is to also allow the plugin to accept HTTP and websocket requests. This will make a remote you open in a browser possible: served by the plugin itself, on any device on your network, nothing to install.
As always, if you hit something, open an issue or come say hi on Discord.