UPnP to Yamaha device Symfonium->Navidrome->Yamaha

Issue description:

I left a review on Google Play and was told to post here.

I am using Symfonium connected to Navidrome and am trying to cast via UPnP to two different Yamaha receivers (RX-A730, RC-V4A). With the TV on I can see the song title show up very quickly but nothing plays.

In the settings (in Symfonium) for UPnP devices (both Yamaha receivers show up), I have tried enabling Proxy and also disabling gapless playback as I have read on these forums to try those options. Neither of those options produced different results.

I have also configured upmpdcli to talk to navidrome and tried using the “Subsonic” plug-in for upmpdcli to resolve the issue, but it did not help the problem.

I have also tried BubbleUPnP android client, and it too has similar issues with UPnP to Yamaha devices withe BubbleUPnP connecting to to upmpdcli. With BubbleUPnP I can set up a SAMBA connection and can play to either Yamaha UPnP device, but that does not have any dynamic options like random playlists, albums, artists, etc. It only allows for manually creating a playlist and playing it.

Using Symfonium connected to the same Navidrome server I can cast to other devices such as Google Dot speakers and Google Chromecast with Google TV devices. It is only with the Yamaha receivers I am having the issue.

On Google Play you mentioned that it might be the proxy option, but I had already tried that without success (if you meant enabling proxy inside Symfonium for the UPnP device).

I also read on the forums that another user had success casting to a Yamaha device when the media was local. To be honest, I have not tested that option, but that really would not serve the intended use.

As mentioned on the Play Store I like the software and even purchased it. Unfortunately, it (the whole environment, not necessarily Symfonium) is not working the way I would like to use it.

As other users on the forum have commented with similar issues, I assumed you had already gone down the path of logs. There is nothing in the Navidrome logs that would help as it looks like the song gets queued up and is playing. Something like the following:

navidrome-1 | time=“2024-05-25T21:24:00Z” level=info msg=“Now Playing” artist=“Sister Hazel” player=“Symfonium [Symfonium/Android]” requestId=855b2ccbe5d3/bYPJMKLnaV-025958 title=“Walls and Cannonballs (album)” user=zzzz
navidrome-1 | time=“2024-05-25T21:24:00Z” level=info msg=“Now Playing” artist=“Sister Hazel” player=“Symfonium [Symfonium/Android]” requestId=855b2ccbe5d3/bYPJMKLnaV-025959 title=“Walls and Cannonballs (album)” user=zzzz
navidrome-1 | time=“2024-05-25T21:24:00Z” level=info msg=“Streaming file” artist=“Sister Hazel” bitRate=0 cached=false format=raw originalBitRate=256 originalFormat=mp3 requestId=855b2ccbe5d3/bYPJMKLnaV-025960 title=“Walls and Cannonballs (album)” transcoding=false user=zzzz
navidrome-1 | time=“2024-05-25T21:24:00Z” level=info msg=“Now Playing” artist=“Sister Hazel” player=“Symfonium [Symfonium/Android]” requestId=855b2ccbe5d3/bYPJMKLnaV-025961 title=“Walls and Cannonballs (album)” user=zzzz

If enabling logs in Symfonium and posting those would help I can certainly do that.

Thank you for the software and for having a support forum.

Logs:

Upload description: Gemneye

Additional information:

 
Oddly. I can set up UPnP server on Bubble UPnP. Then configure Yamaha receiver to connect to the “MusicCast” option of the Bubble UPnP server. Then I can set Symfonium to use the BubblePnP server, and play song from Symfonium and it plays through Yamaha receiver.
 

Reproduction steps:

 
N/A
 

Media provider:

Subsonic

Screenshots:

     

You can with Symfonium too.

Please provide logs when using the proxy mode enabled in Symfonium.

Your server use R3 let’s encrypt certificates and those Yamaha devices do not support them.

Oddly, after posting this I did some more testing and it was partially working. I had both receivers on, and it started playing (automagically). It was super choppy at first and then started playing. I was able to play on both receivers. Nothing was consistent. One time I chose receiver B as output but it played on receiver A (even when the animation when choosing output was on receiver B). Sometimes it would play and sometimes it would not. It did not matter if I enabled/disabled proxy or enabled/disabled gapless playback. Sometimes it would work and sometimes it would not (it even worked with no proxy and gapless playback enabled). There was no consistency as to when it would work and when it would fail. It was very strange as none of the settings seemed to produce consistent results. I will send some more logs, and yes I am using Let’s Encrypt signed certificates for the navidrome server which is behind a reverse proxy.

It can’t work without proxy with those certs. You can try to publish Navidrome without https and see that it will probably work.

Proxy mode delays things, so do proper tests and don’t click and do tons of tests at the same time it won’t work specially on such devices.

Be sure to be playing on local device. Configure the devices with proxy mode and disable gapless.

Then connect to one, do the tests, disconnect from it. Wait a little to ensure the device have processed the stop command then test on the other one.

Thank you for looking at the logs and helping with the issue. A new set of logs have been uploaded. I first tried to play music on RX-V4A. No music was played on RX-V4A whether or not proxy was enabled or disabled. Playback was then switched to RX-A730, which did not have proxy enabled. Symfonium displayed an error on the screen that the playback device was not supported, but then the music started playing. I paused the music from symfonium, and then uploaded the logs. I did not do further testing, but music was playing on the RX-A730 without enabling proxy support.

The logs shows:

09:56:49.808 P:Verbose T:UPnPRenderer 
Starting UPnP play on Loft [9ab0c000-f668-11de-9976-0c8e29d6dbf4] AV Receiver} (Yamaha Corporation/RX-V4A/V4A): https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&u=REDACTED&t=REDACTED&s=REDACTED&v=1.13.0&c=Symfonium&f=json [1716915409798]
09:56:50.065 P:Verbose T:UPnPRenderer 
Generated metadata for audio/mpeg/34088061-8e4a-4b0d-a279-d6c1be647653: <DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:sec="http://www.sec.co.kr/" xmlns:dc="http://purl.org/dc/elements/1.1/"><item restricted="1" id="34088061-8e4a-4b0d-a279-d6c1be647653" parentID="0"><upnp:album>Melodrama</upnp:album><upnp:class>object.item.audioItem.musicTrack</upnp:class><upnp:genre>Pop</upnp:genre><upnp:artist>Lorde</upnp:artist><res duration="00:03:36" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000" size="8720682">https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&amp;u=REDACTED&amp;t=REDACTED&amp;s=REDACTED&amp;v=1.13.0&amp;c=Symfonium&amp;f=json</res><upnp:originalTrackNumber>8</upnp:originalTrackNumber><upnp:albumArtURI>http://192.168.168.151:44239/a78c09f951d3a51d3099b8c3d93fdbe5/%2Fstorage%2Femulated%2F0%2FAndroid%2Fdata%2Fapp.symfonik.music.player%2Fcache%2Fimages%2F6%2F67D6632CA0D28CFFF8064621641B4A91.jpg</upnp:albumArtURI><dc:title>Writer in the Dark</dc:title></item></DIDL-Lite>
09:56:50.194 P:Verbose T:UPnPRenderer 
Play success


09:57:59.393 P:Verbose T:UPnPRenderer 
Starting UPnP play on Loft [9ab0c000-f668-11de-9976-0c8e29d6dbf4] AV Receiver} (Yamaha Corporation/RX-V4A/V4A): https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&u=REDACTED&t=REDACTED&s=REDACTED&v=1.13.0&c=Symfonium&f=json [1716915479386]

09:57:59.393 P:Verbose T:UPnPRenderer 
Starting UPnP play on Loft [9ab0c000-f668-11de-9976-0c8e29d6dbf4] AV Receiver} (Yamaha Corporation/RX-V4A/V4A): https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&u=REDACTED&t=REDACTED&s=REDACTED&v=1.13.0&c=Symfonium&f=json [1716915479386]

09:57:59.465 P:Verbose T:UPnPRenderer 
Generated metadata for audio/mpeg/34088061-8e4a-4b0d-a279-d6c1be647653: <DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:sec="http://www.sec.co.kr/" xmlns:dc="http://purl.org/dc/elements/1.1/"><item restricted="1" id="34088061-8e4a-4b0d-a279-d6c1be647653" parentID="0"><upnp:album>Melodrama</upnp:album><upnp:class>object.item.audioItem.musicTrack</upnp:class><upnp:genre>Pop</upnp:genre><upnp:artist>Lorde</upnp:artist><res duration="00:03:36" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000" size="8720682">https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&amp;u=REDACTED&amp;t=REDACTED&amp;s=REDACTED&amp;v=1.13.0&amp;c=Symfonium&amp;f=json</res><upnp:originalTrackNumber>8</upnp:originalTrackNumber><upnp:albumArtURI>http://192.168.168.151:44239/a78c09f951d3a51d3099b8c3d93fdbe5/%2Fstorage%2Femulated%2F0%2FAndroid%2Fdata%2Fapp.symfonik.music.player%2Fcache%2Fimages%2F6%2F67D6632CA0D28CFFF8064621641B4A91.jpg</upnp:albumArtURI><dc:title>Writer in the Dark</dc:title></item></DIDL-Lite>

09:57:59.560 P:Verbose T:UPnPRenderer 
Play success

So both times on the RX-V4A without proxy (I did told you to stop casting when changing settings)
Both times the devices says OK but fails after (Again probably because of the cert)

Then


09:59:30.269 P:Verbose T:UPnPRenderer 
Starting UPnP play on RX-A730 [5f9ec1b3-ed59-1900-4530-00a0dea57ff1] AV Receiver} (Yamaha Corporation/RX-A730/A730): https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&u=REDACTED&t=REDACTED&s=REDACTED&v=1.13.0&c=Symfonium&f=json [1716915570263]

09:59:30.357 P:Verbose T:UPnPRenderer 
Generated metadata for audio/mpeg/34088061-8e4a-4b0d-a279-d6c1be647653: <DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:sec="http://www.sec.co.kr/" xmlns:dc="http://purl.org/dc/elements/1.1/"><item restricted="1" id="34088061-8e4a-4b0d-a279-d6c1be647653" parentID="0"><upnp:album>Melodrama</upnp:album><upnp:class>object.item.audioItem.musicTrack</upnp:class><upnp:genre>Pop</upnp:genre><upnp:artist>Lorde</upnp:artist><res duration="00:03:36" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01500000000000000000000000000000" size="8720682">https://redacted:443/rest/stream.view?id=206c6e7d85634e1d59a00eee57bfecff&amp;u=REDACTED&amp;t=REDACTED&amp;s=REDACTED&amp;v=1.13.0&amp;c=Symfonium&amp;f=json</res><upnp:originalTrackNumber>8</upnp:originalTrackNumber><upnp:albumArtURI>http://192.168.168.151:44239/a78c09f951d3a51d3099b8c3d93fdbe5/%2Fstorage%2Femulated%2F0%2FAndroid%2Fdata%2Fapp.symfonik.music.player%2Fcache%2Fimages%2F6%2F67D6632CA0D28CFFF8064621641B4A91.jpg</upnp:albumArtURI><dc:title>Writer in the Dark</dc:title></item></DIDL-Lite>

09:59:30.398 P:Error T:UPnPRenderer 
Error SetAVTransportURI: error response: {faultcode=s:Client, faultstring=UPnPError, UPnPError/errorCode=600}

09:59:30.725 P:Verbose T:UPnPRenderer 
Starting UPnP play on RX-A730 [5f9ec1b3-ed59-1900-4530-00a0dea57ff1] AV Receiver} (Yamaha Corporation/RX-A730/A730): http://192.168.168.151:44239/94db8be1b5e82e35d31e4a4027d07400/https%3A%2F%2Fredacted%3A443%2Frest%2Fstream.view%3Fid%3D900c69f088625396cc9afde614626b0a%26u%3Dsruckh%26t%3D8e797a38b15558d5d3a005791d1e506d%26s%3D7F99C2FAF93B3C60AFEFA90FE5B30A7F%26v%3D1.13.0%26c%3DSymfonium%26f%3Djson [1716915570721]

09:59:31.425 P:Verbose T:UPnPRenderer 
Play success

09:59:31.933 P:Verbose T:UPnPRenderer 
Generated metadata for nextItem: audio/mpeg/f07e67fe-6e7a-481e-9e64-9b6341350763: <DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:sec="http://www.sec.co.kr/" xmlns:dc="http://purl.org/dc/elements/1.1/"><item restricted="1" id="f07e67fe-6e7a-481e-9e64-9b6341350763" parentID="0"><upnp:album>Femme Fatale</upnp:album><upnp:class>object.item.audioItem.musicTrack</upnp:class><upnp:genre>Pop</upnp:genre><upnp:artist>Britney Spears</upnp:artist><res duration="00:03:08" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01500000000000000000000000000000" size="5769449">https://redacted:443/rest/stream.view?id=0f18ad30a158ad293f8832ac9dbb5daa&amp;u=REDACTED&amp;t=REDACTED&amp;s=REDACTED&amp;v=1.13.0&amp;c=Symfonium&amp;f=json</res><upnp:originalTrackNumber>11</upnp:originalTrackNumber><upnp:albumArtURI>http://192.168.168.151:44239/7ff0e018162b539e9cdf9fa5ee537ddb/%2Fstorage%2Femulated%2F0%2FAndroid%2Fdata%2Fapp.symfonik.music.player%2Fcache%2Fimages%2F8%2F8866629CC84FE975F85FB7EAD1372CE4.jpg</upnp:albumArtURI><dc:title>Gasoline</dc:title></item></DIDL-Lite>

09:59:31.982 P:Error T:UPnPRenderer 
Error
java.io.IOException: error response: {faultcode=s:Client, faultstring=UPnPError, UPnPError/errorCode=600}
	at rz.f.a(Unknown Source:549)
	at rz.e.d(Unknown Source:8)
	at a2.y.run(Unknown Source:13)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
	at java.lang.Thread.run(Thread.java:1012)

It start playing without proxy and fails (because of the cert :wink: I know I repeat myself a lot ).
Then switch to proxy mode and it works :slight_smile:

Then try to set the next item for gapless and fails.

So enable proxy on the A4.

Enable proxy on the A730 and disable gapless.

And please as said stop casting when you do tests … There’s preparation cache and many things optimized, not all settings are always applied instantly specially if you replay the same media.

I did send some more logs, but I think what you have stated is true. I am still not 100% certain how to “stop” streams when switching devices as I would pause a song, and swipe the notification widget hoping that would “stop” playback before switching devices but sometimes it would automatically start playing again on the new device.

I would even go out of Symfonium, and then go to settings->APPS and force close the application before testing the new setting.

When testing this way, what you have repeated did work.

If everything is set up from scratch (Receiver on and in “Server” mode, navidrome running, Yamaha receiver selected with proxy support enabled, output to the receiver is achieved. Enabling or Disabling gapless support did not seem to matter.

Not that it was really up for discussion, but for the sake of history with this thread running upmpdcli does not make a difference with Symfonium->Navidrome configuration but is necessary for UPnP clients such as BubblePnP…

Thank You.

To stop you select the cast menu then local device.

To really stop the queue long press play/pause button or add stop button to compact player.

But yes I usually know what I’m talking about, those Yamaha devices are a pain and not really updated and never works with the new Let’s encrypt certs.

@Gemneye BTW your comment is now in the first defaults ones and you did not updated it :wink: