Music Assistant 2.0: Your Music, Your Players

I don’t know much about LMS, but a quick search shows that there are plug-ins for it to expose its library via UPNP/DLNA .

Unfortunately, there is no UPNP/DLNA music provider in Music assistant yet.

I wouldn’t mind seeing one, so I could interface MA with JRiver Media center, which also exposes its library via a DLNA server.

Probably not directly, as you would need to be able to pass your 4 DACs through to the HAOS VM, and then HA would also need to be able to make use of local devices if it could see them. It’s a lot of hurdles trying that way.

You might however have more luck exposing your 4 DACs as DLNA/uPNP renderers using some server application. Music Assistant already supports UPNP/DLNA renderers as player providers.

JRiver Media Center on Windows is able to expose an audio device through DLNA/UPNP. You can create a zone for it, and assign an audio device. Music Assistant will see it.
I just tried it myself, and that’s as far as it goes, though. I am unable to select the JRiver DLNA player, even though it shows up in the list. It could be some compatibility issue, or possibly something to do with the fact that it’s a 7.1 device rather than 2.0 . I’m using an ECHO Audofire 8a on my desktop. It’s not on the same host that runs my HAOS VM, but that doesn’t matter.

The Audiofire 8a also has a stereo mode of operation where it will expose four 2.0 devices, like your 4 DACs presumably are. I just tried changing it to that mode. The first (default) zone got changed from 7.1 (it’s actually a 4.1 setup using the first 6 channels) to 2.0 . And I created a separate zone for ouputs 7-8 . Those outputs go to zone 2 of my Yamaha AVR, and power speakers above the digital organ. So it’s really a physically separate zone.

Both the JRiver main zone and the JRiver organs zone showed up in the player list in Music Assistant. That’s the good news.

However, I encountered multiple problems :

  1. the main zone player (HIGGS:HIGGS) has the name dlna-xxxx and isn’t recognized as a DLNA renderer. I cannot edit the player settings in MA

  2. While I am able to select this HIGGS:HIGGS player for playback in MA, when I start playing, I get the following error :

  3. the organ zone player shows up correctly as a renderer in MA, and I can edit its settings, including disabling volume normalization . When I start playing back media, i don’t get an error, but I also don’t get any sound, and the transport stays at 0:00 .

The good news is MA is definitely communicating with JRiver over DLNA .

Here is the MA side :

And the JRiver side :

Notice how they are both showing the same media/track.

I believe there may be some settings I’m missing on either the JRiver or MA side, and there could be a bug or two that needing fixing on either or both sides. DLNA is apparently a fairly loosely defined protocol, and I have seen many problems between players, controllers and servers.

BTW, most of the zones you see in my JRiver screenshot on the left aren’t powered by any PC. They used to consist of Chromecast audio, attached to very old AVRs with 7.1 analog inputs, that I basically got for free - pre-HDMI, non-networked models. But which sound great and without any processing on those inputs. The volume is set at 0 dB on every receiver, and never changes. They all stay on the multi-channel input, also. There are smartplugs and automations to turn the amps on or off since they can use a lot of power even when idle.

The CCAs didn’t have Ethernet, so I added a USB OTG / Ethernet NIC to each CCA. That made the cost about $50 per zone between the CCA and NICs. Amps were free and already there anyway, and speaker wire. Most of the speakers came built-in with the house :slight_smile:

CCA were very flawed devices, though. In particular lack of gapless support. Roon supported it, but I didn’t like their approach or the price. Very glad to see that Music Assistant supports gapless with CCA now. 12 of my CCAs have been replaced with WiiM Pro Plus last year. They expose CCA, Airplay2 and DLNA interfaces. JRiver shows the WiiM DLNA renderers since it doesn’t support Google Cast or Airplay. I still have 5 cast devices though, 2 CCAs, 1 CC ultra, 2 CCwGTV.

1 Like

Actually, I got it to work - sort of - with DLNA player provider on the HAOS VM, and JRiver driving the DAC on a Windows host.
Here is what I did to fix it.

  1. delete the HIGGS:HIGGS DLNA player in MA
  2. remove the DLNA player provider in MA
  3. add the DLNA player provider again
  4. this time, HIGGS:HIGGS properly shows as a renderr
  5. go to the player bar to select it - selection actually sticks
  6. go to tracks and select a track
  7. press play
  8. no sound, unfortunately
  9. now go to JRiver and select the HIGGS:HIGGS zone
  10. Press play in the JRiver UI
  11. now you can hear the audio from the track selected in MA
  12. subsequently , you can select other tracks in MA and start playback from MA, and the playback properly starts on the JRiver side

Unfortunately, I was unable to make th other zone - Organ zone - work at all. This is probably something on the Windows side, perhaps an ECHO Audiofire driver issue, or JRiver issue. I could enable the motherboard audio output even though there is nothing hooked up to it, and try to add another zone using that. I could probably just use headphones for testing that.

Anyway, there is at least one DLNA bug with the initial playback - not sure which side it’s on. I need to collect logs from both MA and JRiiver sides to get this fixed.

Hello there. Just reading this about grouping media players.

Does anyone know if there is a way to UNGROUP the media players using a script / automation? I find I call to play to a single player but for some reason or another they appear grouped (with the link in the MU interface). I generally use a group player I set up so I’m not sure why the single players are getting linked.

I am using apple homepods.

i absolutely love this add-on its incredible.

i also adore the sonos card except now i cant seem to link the two together.

how do i link it all together? i’d like to be able to click “Browse Media” and music assistant pop up as an option

Did you install also the HACS integration?
You should see another media_player with an _2 or something similar at the end. Those have the option to browse Playlists, Albums and such.

hi, yes i installed music assistant via HACs but i cant see what youre referring to.

Go to settings, devices & services. You should see there the Music Assistant integration with the new devices.

thanks, i see what you mean but this doesnt fix my issue. using the custom sonos card this is driven by the music in music assistant from spotify
image
but when i click the star and then into here and then click browse media
image
i get this (spotify doesnt work)

and i want to add Music Assistant onto this page

As a Plex user, I’ll definitely give this a shot once there’s support for Apple. Thanks for working on this.

There already is Apple Music support

1 Like

To be honest I’m not entirely sure what you are trying to do as I don’t use those cards. A dedicated MA card is in the todo list. Browse media will work if you are targeting the MA entity but I assume you are targeting the HA Sonos entity so I think you can probably ascertain that the Sonos entity has no idea about the library in MA

There are some grouping bugs at the moment but the join and Unjoin service calls work. This is the same as method 1 in the section on grouping you linked.

1 Like

thats exactly it. but is there a way to get it to look at the MA library?

Yeah sorry I only use the mini media player card which is targeting the MA player so it works (minus the current bugs). So you will have to look at what your card options are.

Thanks I shall give that a go. I am finding that service calls are resulting in playing on the wrong speakers at times.

Love Music Assistant. Has been working well for me except for one issue with my Google Home speakers.

All the individual speakers appear fine via the Chromecast player provider but the Speaker group that I setup in Google Home is not available after a HA restart. It can take hours before it re-appears for use in Music Assistant.
One it appears, it all works great and I can use the Google Home Speaker group with no issues… until the next HA restart or Music Assistant update.

Anyone know what may be causing this?

While I personally have no use for Bluetooth audio in my system, I think some Bluetooth CODECs are able to provide decent quality - Qualcomm AptX and Sony LDAC do a good job with my headphones when flying. Until another passenger also using Bluetooth nearby walks too close, anyway :slight_smile: It seems that both have been open-sourced, and there is no licensing fee for the encoder.

IMO, bluetooth support can make sense in a narrow range of cases when some of these conditions apply :

  1. the device running MA is within close range of the bluetooth speakers/receiver
  2. it’s a single-player system
  3. active speakers only support Bluetooth input
  4. receiver has all wired inputs in use, but supports Bluetooth input
  5. someone really dislikes wires (definitely not me, I probably have nearly 1000 wires in use in my house, and several thousands stored in the garage)
  6. no audio DAC on the device running MA, or very poor DAC, but the device has bluetooth
  7. speaker/receiver supports one of the higher quality CODECs (AptX family, LDAC)

Of course, the controller device (phone/tablet/PC, or even an IR remote with ESPhome) would not directly use bluetooth.

1 Like

I haven’t seen that problem but have you tried reloading the chromecast provider in MA to get it back?

Yep. I have tried reloading the Chromecast provider, restarting Music Assistant and also restart HA. Nothing has brought back the Google Home Speaker group.

So far the only thing that has worked for me is to be patient as it automatically appears after several hours. In the meantime before it appears, I’m just playing to individual speakers :slight_smile: