MusicD Remote - a companion client for Roon

Found and fixed, now Update :face_exhaling:

Added — the MusicD duck is now the app icon, on every platform — remove the existing shortcut and save a new one

New features, v1.7.46 → v1.7.66

Automatic library rescan — Roon is checked every 5 to 10 minutes and the snapshot refreshes itself after albums are added. Was 12 hours, and only if you happened to open an album.

Settings → Home Screen — a new page to switch any carousel off and drag to reorder them. A hidden carousel does no background work.

Recently played carousel — albums you’ve played, most recent first, 30-day window.

Labels is off by default for new users — opt in from Settings. Off means no scanning, no Focus facet, no search section, no side-menu entry, no Home row.

Smart Picks is off by default for new users — opt in from settings, and the “stretch” pick is gone.

Search behind a magnifier — top-right of the bar, tap away to close and clear.

Library text filter — behind a magnifier next to Sort; type “F” for artists and albums starting with F.

Playlist import matches your local library — resolves against a new track-level index instead of asking Roon, handling edition twins and greatest-hits compilations.

Rescan row shows live state — album count, when it was last checked, or why a refresh is paused.

Library-change messages explain themselves — the red errors now say why they appeared, what the extension is doing, and to use Rescan if it doesn’t clear.

A thanks goes out to @Dadoo & @Dirk-Pitt for suggestions :+1:

1 Like

hi,

it looks like my youtube integration doesn’t work, because, the display-function never shows some videos. ://

is there any possibility to test the key?

nice sunday to al!! :slight_smile:

1 Like

Hi @Itchy

The YouTube feature is, well, tricky.

I’ll certainly look at this next week to see if I can improve upon what’s already implemented.

Matching a video to best suit the song is difficult. So it will mostly likely not display one.

I have been working on an idea (on paper) that if I can pull it off, would be a cool addition to my extension.

1 Like

TL;DR time

Over the past week or so I was working on an embedded YouTube feature.

Why? Music videos.

Implementing it within the T&Cs of YouTube would be easy, but not so the audio without breaking T&Cs of YouTube. So for now this feature has been shelved indefinitely.

The other side of this was nugs.net and I’m still open minded on this that I may make a few connections if I can with the Roon Team to see if they can assist in getting nugs.net onboard. Months away either way.

After seeing another tinkerer mention they have managed to squeeze the Roon API into a device that isn’t a computer got me thinking.

My MusicD Remote extension needs a computer to run. Some users don’t have a spare computer and run Rock.

How can I offer my extension in those circumstances?

For now Android users are the lucky ones. A native app for Android that uses the Roon API on the Android device itself.

Note, Android device. Not tested completely, but anything that an Android APK can be side loaded onto could host the extension and give a native control point.

I’m looking at you Android TVs and Amazon Fire TV sticks.

My first adventure into this is a small control app, which has a Home Screen widget as well. Voice control is very patchy. But soon Android drops Google Assistant in favour for Gemini, and currently Gemini is worse with controlling apps like this so I’ll likely remove voice control until things improve.

If you read this far, thanks, what’s coming next for MusicD Remote is a lite version for Android initially and if I can work some magic I might create an iOS version.

2 Likes

Something quite special has come from all this tinkering.

A combination of the Dial for Roon (with voice control) and MusicD Remote in one app (downloads two from one installer). With no docker installation, just a Android APK to install and this is what you get:

1 Like

Having been playing with this for the last day I have to say it’s pretty cool how quickly this seems to have come together.

Good work

1 Like

Thanks :folded_hands:

I am but the humble Project Manager at MusicD Projects, not a coder.

Claude, for all its pros and cons is doing the work for me. It’s getting things done crazy fast and I’ll never take it for granted over the real hard working coders in the world.

I’m really impressed with Dial for Roon feature, the voice control is darn cool and I’ll add to its brain for voice commands (it doesn’t use Google or Gemini).

I’m now attempting to bring both versions in line with each other. Looking at the iOS side of things, as the UK is not in the EU I cannot look at side loading .ipa apps. It would all have to give through an Apple Dev account for a fee. So I’ll keep the docker version going for Apple iOS users and the Android app for Android users. The choice is there.

1 Like

Having used the new version of the docker install with the combined dial feature, I just wasn’t happy with its behaviour. I’ve reverted back to before this. The Android version is untouched.

1 Like

docker v1.7.89 has been released (Android version is in catchup mode)

• Visual changes throughout - glass like theme

More to follow

Function over features is my priority and this being said I think additional features will be held back, and separate extensions will be created.

2 Likes

Mostly Autumn, a very good musical choice. Well done. :star_struck:

1 Like

Big Update - v1.8 - MusicD Remote has waveform

:wavy_dash: Waveform — new in v1.8.0

  • The seek bar on Now playing and the wall display’s progress strip draw the shape of the track you are listening to
  • Off by default — turn it on in Settings → Playback → Waveform, and it stays on until you turn it off
  • Each track is analysed once and stored, so it is instant every time after the first
  • The next track in the queue is prepared while the current one plays, so it is already there when the track changes
  • Local files only. Roon streams Qobuz and TIDAL straight to your endpoint and never to an extension, so there is no audio for the app to read — those tracks keep the plain progress bar


Roon EA builds are testing waveform for the progress bar for both Roon Remote and their display feature (and fixing it for Chromecast Display perhaps). I don’t want to take anything away from Roon for their hard work, but it works here with local files really well. Streaming services (Tidal & Qobuz) aren’t supported here for now, for the very reasons Roon may struggle to make it work reliably. My work here is for them to look at if they wish.

2 Likes

v1.8.22 has been pushed out the door

It now produces waveforms for Qobuz and Tidal albums/tracks that are within your library.

Works for local files and for Qobuz and TIDAL tracks in your favourites - Roon streams those straight to your endpoint and never to an extension, so the track is fetched from the service with your own account, turned into a thousand loudness values and discarded. No audio is written to disk and Roon still handles all playback. Anything it can’t read keeps the plain bar.

What’s different here is that Qobuz and Tidal waveforms are produced within seconds and not minutes like Roon’s current version.

I have shared my code with Roon in the hope it helps them implement something similar to how I’ve got this working. The method is a bit odd, but it works and has very little impact on performance.

A Qobuz album

2 Likes