TV display

Steve Woodhouse

Major Contributor
Joined
Aug 11, 2023
Messages
1,660
I know I’m flogging a dead horse, but really, if you could just introduce this.

Go to the video below, 1:14 to 1:49.

The image on the TV at 1:40, just give us that please.


Not everyone will either want it use it, but there are surely enough of us who’ll will to make it worthwhile.

Thank you.
 
Upvote 2
Just checked on my Chromecast with Google TV (not the latest 4K version). Works! Obviously because it has Android TV and thus supports TV Bro and BrowseHere. I know that TV Bro has an option to keep the screen awake.
I thought I had a Xiaomi stick lying around somewhere... but can't find it.
 
Unfortunately, Samsung uses the Tizen OS which is Linux based and I'm finding out that side loading apps isn't possible either.

Perhaps a Firestick will be an option. Since my RPi is close to my TV, I may try a direct connection with HDMI using your Kiosk mode instructions.
Because you already have your NAS/OMV running on that RPi, I'd suggest trying this out on a separate SD card first.

The Kiosk mode installs a desktop environment on your system, which hogs a lot of resources. And I haven't found a clean way to revert those changes if it doesn't turn out as expected. Other than just reformatting the SD card and starting over. Switching out SD cards is preferable over redoing your NAS/OMV setup again.
 
Just checked on my Chromecast with Google TV (not the latest 4K version). Works! Obviously because it has Android TV and thus supports TV Bro and BrowseHere. I know that TV Bro has an option to keep the screen awake.
I thought I had a Xiaomi stick lying around somewhere... but can't find it.
Thanks for checking that out. Looks like we have at least one good solution. (y)
 
Because you already have your NAS/OMV running on that RPi, I'd suggest trying this out on a separate SD card first.

The Kiosk mode installs a desktop environment on your system, which hogs a lot of resources. And I haven't found a clean way to revert those changes if it doesn't turn out as expected. Other than just reformatting the SD card and starting over. Switching out SD cards is preferable over redoing your NAS/OMV setup again.
Excellent advice. My plan was to create an image of the SD card before attempting to install the Kiosk mode just in case it doesn't work out.

Before going this route, I may also look at creating a Tizen TV web app.
 
🥳 The new release, with TV mode, is up on Github: https://github.com/cvdlinden/wiim-now-playing
View attachment 16395

Surely there will be things that could've been done better. I'll save them for the next one. I'm done staring at code for now.
Have fun running it on whatever you've set up!

Note: If you are upgrading through Git. Please do an 'npm install' after the 'git pull', and do a reboot to make sure everything is good to go.
First off, THANK YOU so much for this! It's fantastic and has added so much to my setup.

Secondly, i noticed on my 32" Samsung 4K Smart Monitor that the text is a bit small. Is it possible for me to edit the text size and maybe even shift the margins of the album art and other UI parts of the Now Playing screen in a little bit to optimize it's fit on my screen a little better? I poked around in the code a little bit but it wasn't clear to me.

Thanks!

*EDIT*: Scratch that, i was able to just change the Zoom in my Samsung Monitor browser and get it to a more suitable sizing.
 
Last edited:
Honestly it feels like WiiM should integrate this into the Ultra natively, i can't imagine it takes much added horsepower.
Or release a ready-to-go box/stick with a screen and/or HDMI output so the rest of of the lineup down to the Mini can benefit.
I have no idea how much headroom the WiiM products still have in order to add a webserver to serve up the Now Playing info.
 
Honestly it feels like WiiM should integrate this into the Ultra natively, i can't imagine it takes much added horsepower.
The older Linkplay A31 modules used to support this via http. Here's an example of what is shows (from the Arylic forum - Arylic still sells products based on these ancient modules).

Arylic@home.jpg
 
The older Linkplay A31 modules used to support this via http. Here's an example of what is shows (from the Arylic forum - Arylic still sells products based on these ancient modules).

View attachment 16476
I so much wanted a 'what's up next' to add to the wiim-now-playing, like a tiny preview in the bottom right corner, but there's no way to query the WiiM device for that. :(
 
  • Like
Reactions: vdp
Last edited:
  • Like
Reactions: vdp
Is it possible to integrate the new Plex support or would the Plex API be a problem?
Currently the tags and track length are displayed but not the album cover. IMG_1680.jpeg
 
Is it possible to integrate the new Plex support or would the Plex API be a problem?
Currently the tags and track length are displayed but not the album cover. View attachment 16496
I didn't participate in the Plex Beta, but someone else did (@hoohoohoo maybe?). He had the same issue with not showing the album cover. Until it did... I think a simple reload/restart did the trick(?).

Can't remember if I came around to add a Plex icon as the identifier though...
Edit: No I didn't :) Next stop: Plex testing since it is out of beta.
 
Is it possible to integrate the new Plex support or would the Plex API be a problem?
Currently the tags and track length are displayed but not the album cover. View attachment 16496
I keep pressing post reply too soon...

Here's something you can do now:
Add /debug to the wiim-now-playing url.
On the debug page you will find the Metadata section with the raw data the WiiM is spitting out.
Under that you can find the 'Album Art URI' extracted.
Check to see if that url is valid, e.g. copy paste it to a new browser tab and see if you do get the artwork.
 
Sure there is, at least in the UPnP interface. You can see what’s in the queue.

Post in thread 'API Questions'
https://forum.wiimhome.com/threads/api-questions.1809/post-27044
Unfortunately I can't find it. :(
I queried the '/upnp/PlayQueueSCPD.xml' endpoint, but none of the actions gives me what I need or can use.

Now I do depend on Tidal, Spotify or any of the streaming services to do the queueing for me.
Since Spotify does this from its own app I figured that the WiiM device does not know anything, until Spotify tells it what to do next.
However Tidal has a tighter integration in the WiiM home app, but whatever I do to control the playlist I don't see anything back in the data from the WiiM device.

Are you by any chance telling your device directly to queue up songs?
 
Unfortunately I can't find it. :(
I queried the '/upnp/PlayQueueSCPD.xml' endpoint, but none of the actions gives me what I need or can use.

Now I do depend on Tidal, Spotify or any of the streaming services to do the queueing for me.
Since Spotify does this from its own app I figured that the WiiM device does not know anything, until Spotify tells it what to do next.
However Tidal has a tighter integration in the WiiM home app, but whatever I do to control the playlist I don't see anything back in the data from the WiiM device.

Are you by any chance telling your device directly to queue up songs?
No, I have the WiiM device query Tidal/Qobuz/Deezer for me. It will do the grunt work and populate "CurrentQueue" whose contents will look like this:

XML:
<?xml version="1.0"?>
<PlayList>
<ListName>Apenas O Amor</ListName>
<ListInfo>
<SourceName>Tidal</SourceName>
<SearchUrl>https://api.tidal.com/v1/albums/1462170/tracks?countryCode=US&amp;offset=0&amp;limit=50</SearchUrl>
<MaxTrackNumber>12</MaxTrackNumber>
<MarkSearch>0</MarkSearch>
<TrackNumber>12</TrackNumber>
<Quality>0</Quality>
<requestQuality>LOSSLESS</requestQuality>
<UpdateTime>228878</UpdateTime>
<LastPlayIndex>2</LastPlayIndex>
<AlarmPlayIndex>0</AlarmPlayIndex>
<RealIndex>0</RealIndex>
<UserId>0</UserId>
<station>0</station>
<StationBackup>0</StationBackup>
<SwitchPageMode>0</SwitchPageMode>
<CurrentPage>1</CurrentPage>
<TotalPages>1</TotalPages>
<searching>0</searching>
<PressType>0</PressType>
<Volume>0</Volume>
<FadeEnable>0</FadeEnable>
<FadeInMS>0</FadeInMS>
<FadeOutMS>0</FadeOutMS>
</ListInfo>
<Tracks>
<Track1>
<URL>https://sp-pr-cf.audio.tidal.com/mediatracks/CAEaKwgDEidkOWQwNzM5OTgzYWU1ZDg4OWQ3MzI0Yjk0NDkyNzhhYV82MS5tcDQ/0.flac?Expires=1737479551&amp;Signature=blZb7LJBsrjPbtP3Fas6~H3uJRLx-tK0whMJ6WjLkKMHqw4V12dHbvvoCbXzawoyQ7Swj0lrn9HfitIBcT2brlIJh3xqUbDLsKMkz7WTJ3eUZNUzM9MFoL7o6QLh6lulmL6blHrkj88ivzKQRMClITH9S6Ca9nipL~ymP11tSfgYKULIVMAyx9i7YyWMHqN1J5EhW4mHxiXIe0f-a5TXAHLsmmshANITxs4iJtJcT04W7Ypc1H8XmEvnT2dNRV8iKILHcQZwPZDHL8C-7H61eimG5DxPgMiNPCHxgzdEzUEbD1EQTW1EUsIDO2mntSlobOu5FuUAKs0OQnQrUQAOXQ__&amp;Key-Pair-Id=K14LZCZ9QUI4JL</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462171&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;2&lt;/song:quality&gt;
&lt;song:actualQuality&gt;LOSSLESS&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:28.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;A voz e o silêncio&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;song:rate_hz&gt;44100&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;16&lt;/song:format_s&gt;
&lt;song:bitrate&gt;673&lt;/song:bitrate&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462171</Id>
<Source>Tidal</Source>
<Id>1462171</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track1>
<Track2>
<URL>https://sp-pr-cf.audio.tidal.com/mediatracks/CAEaKwgDEic2MzI1YzY5MzRjNzE3ZDEyNWNkZWRlYzY2NWQzNjE4ZV82MS5tcDQ/0.flac?Expires=1737479726&amp;Signature=lLcJsHpd8PzsaBtVSQ7fJWsu9Ec~BxuhMvUN2SSU~XLRjwAsrU7aRw6mFwZulKNKosfEWsVS3HXSOFJyF99j3HfdtC1lnF~GwLfo-NTUFucp69IFuQ9a3tosbOXsXVs5LDAFeTfqx-gtQoQReJuGvMpQKAOccRBefNpj-zOKloEWj4dUX0QvdwGo0OJMijCMyr-6mCBLub8smVzQGPSDdvxb6oeFEPVzSqhphb7I5oozqA6sVcRRILlXoA~w8WekBUh3jQeUChhvk6LPftDdNyWj531hufG1qjxKUR2Cbh3JG9pdiIagZcBDiWFKncWi9jSB5NjXr7yy089eMVO5xA__&amp;Key-Pair-Id=K14LZCZ9QUI4JL</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462172&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;2&lt;/song:quality&gt;
&lt;song:actualQuality&gt;LOSSLESS&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:21.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;M.F.&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;song:rate_hz&gt;44100&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;16&lt;/song:format_s&gt;
&lt;song:bitrate&gt;730&lt;/song:bitrate&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462172</Id>
<Source>Tidal</Source>
<Id>1462172</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track2>
<Track3>
<URL>wiimu_search://1462173</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462173&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:50.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Anjo inútil&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462173</Id>
<Source>Tidal</Source>
<Id>1462173</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track3>
<Track4>
<URL>wiimu_search://1462174</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462174&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:33.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Ai meu amor se bastasse&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462174</Id>
<Source>Tidal</Source>
<Id>1462174</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track4>
<Track5>
<URL>wiimu_search://1462175</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462175&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:20.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Lírio quebrado&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462175</Id>
<Source>Tidal</Source>
<Id>1462175</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track5>
<Track6>
<URL>wiimu_search://1462176</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462176&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:20.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Antes de quê?&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462176</Id>
<Source>Tidal</Source>
<Id>1462176</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track6>
<Track7>
<URL>wiimu_search://1462177</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462177&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:34.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Casa-mãe / Cidade&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462177</Id>
<Source>Tidal</Source>
<Id>1462177</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track7>
<Track8>
<URL>wiimu_search://1462178</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462178&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:06.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Quase lembrança&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462178</Id>
<Source>Tidal</Source>
<Id>1462178</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track8>
<Track9>
<URL>wiimu_search://1462179</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462179&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:26.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Muro vazio&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462179</Id>
<Source>Tidal</Source>
<Id>1462179</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track9>
<Track10>
<URL>wiimu_search://1462180</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462180&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:37.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Nada mais na noite&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462180</Id>
<Source>Tidal</Source>
<Id>1462180</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track10>
<Track11>
<URL>wiimu_search://1462181</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462181&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:04:23.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Sonho lento&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462181</Id>
<Source>Tidal</Source>
<Id>1462181</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track11>
<Track12>
<URL>wiimu_search://1462182</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462182&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:04:22.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Canção a meia voz&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462182</Id>
<Source>Tidal</Source>
<Id>1462182</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track12>
</Tracks>
</PlayList>
 
No, I have the WiiM device query Tidal/Qobuz/Deezer for me. It will do the grunt work and populate "CurrentQueue" whose contents will look like this:

XML:
<?xml version="1.0"?>
<PlayList>
<ListName>Apenas O Amor</ListName>
<ListInfo>
<SourceName>Tidal</SourceName>
<SearchUrl>https://api.tidal.com/v1/albums/1462170/tracks?countryCode=US&amp;offset=0&amp;limit=50</SearchUrl>
<MaxTrackNumber>12</MaxTrackNumber>
<MarkSearch>0</MarkSearch>
<TrackNumber>12</TrackNumber>
<Quality>0</Quality>
<requestQuality>LOSSLESS</requestQuality>
<UpdateTime>228878</UpdateTime>
<LastPlayIndex>2</LastPlayIndex>
<AlarmPlayIndex>0</AlarmPlayIndex>
<RealIndex>0</RealIndex>
<UserId>0</UserId>
<station>0</station>
<StationBackup>0</StationBackup>
<SwitchPageMode>0</SwitchPageMode>
<CurrentPage>1</CurrentPage>
<TotalPages>1</TotalPages>
<searching>0</searching>
<PressType>0</PressType>
<Volume>0</Volume>
<FadeEnable>0</FadeEnable>
<FadeInMS>0</FadeInMS>
<FadeOutMS>0</FadeOutMS>
</ListInfo>
<Tracks>
<Track1>
<URL>https://sp-pr-cf.audio.tidal.com/mediatracks/CAEaKwgDEidkOWQwNzM5OTgzYWU1ZDg4OWQ3MzI0Yjk0NDkyNzhhYV82MS5tcDQ/0.flac?Expires=1737479551&amp;Signature=blZb7LJBsrjPbtP3Fas6~H3uJRLx-tK0whMJ6WjLkKMHqw4V12dHbvvoCbXzawoyQ7Swj0lrn9HfitIBcT2brlIJh3xqUbDLsKMkz7WTJ3eUZNUzM9MFoL7o6QLh6lulmL6blHrkj88ivzKQRMClITH9S6Ca9nipL~ymP11tSfgYKULIVMAyx9i7YyWMHqN1J5EhW4mHxiXIe0f-a5TXAHLsmmshANITxs4iJtJcT04W7Ypc1H8XmEvnT2dNRV8iKILHcQZwPZDHL8C-7H61eimG5DxPgMiNPCHxgzdEzUEbD1EQTW1EUsIDO2mntSlobOu5FuUAKs0OQnQrUQAOXQ__&amp;Key-Pair-Id=K14LZCZ9QUI4JL</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462171&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;2&lt;/song:quality&gt;
&lt;song:actualQuality&gt;LOSSLESS&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:28.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;A voz e o silêncio&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;song:rate_hz&gt;44100&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;16&lt;/song:format_s&gt;
&lt;song:bitrate&gt;673&lt;/song:bitrate&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462171</Id>
<Source>Tidal</Source>
<Id>1462171</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track1>
<Track2>
<URL>https://sp-pr-cf.audio.tidal.com/mediatracks/CAEaKwgDEic2MzI1YzY5MzRjNzE3ZDEyNWNkZWRlYzY2NWQzNjE4ZV82MS5tcDQ/0.flac?Expires=1737479726&amp;Signature=lLcJsHpd8PzsaBtVSQ7fJWsu9Ec~BxuhMvUN2SSU~XLRjwAsrU7aRw6mFwZulKNKosfEWsVS3HXSOFJyF99j3HfdtC1lnF~GwLfo-NTUFucp69IFuQ9a3tosbOXsXVs5LDAFeTfqx-gtQoQReJuGvMpQKAOccRBefNpj-zOKloEWj4dUX0QvdwGo0OJMijCMyr-6mCBLub8smVzQGPSDdvxb6oeFEPVzSqhphb7I5oozqA6sVcRRILlXoA~w8WekBUh3jQeUChhvk6LPftDdNyWj531hufG1qjxKUR2Cbh3JG9pdiIagZcBDiWFKncWi9jSB5NjXr7yy089eMVO5xA__&amp;Key-Pair-Id=K14LZCZ9QUI4JL</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462172&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;2&lt;/song:quality&gt;
&lt;song:actualQuality&gt;LOSSLESS&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:21.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;M.F.&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;song:rate_hz&gt;44100&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;16&lt;/song:format_s&gt;
&lt;song:bitrate&gt;730&lt;/song:bitrate&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462172</Id>
<Source>Tidal</Source>
<Id>1462172</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track2>
<Track3>
<URL>wiimu_search://1462173</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462173&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:50.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Anjo inútil&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462173</Id>
<Source>Tidal</Source>
<Id>1462173</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track3>
<Track4>
<URL>wiimu_search://1462174</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462174&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:33.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Ai meu amor se bastasse&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462174</Id>
<Source>Tidal</Source>
<Id>1462174</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track4>
<Track5>
<URL>wiimu_search://1462175</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462175&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:20.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Lírio quebrado&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462175</Id>
<Source>Tidal</Source>
<Id>1462175</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track5>
<Track6>
<URL>wiimu_search://1462176</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462176&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:20.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Antes de quê?&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462176</Id>
<Source>Tidal</Source>
<Id>1462176</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track6>
<Track7>
<URL>wiimu_search://1462177</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462177&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:34.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Casa-mãe / Cidade&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462177</Id>
<Source>Tidal</Source>
<Id>1462177</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track7>
<Track8>
<URL>wiimu_search://1462178</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462178&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:06.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Quase lembrança&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462178</Id>
<Source>Tidal</Source>
<Id>1462178</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track8>
<Track9>
<URL>wiimu_search://1462179</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462179&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:03:26.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Muro vazio&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462179</Id>
<Source>Tidal</Source>
<Id>1462179</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track9>
<Track10>
<URL>wiimu_search://1462180</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462180&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:02:37.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Nada mais na noite&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462180</Id>
<Source>Tidal</Source>
<Id>1462180</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track10>
<Track11>
<URL>wiimu_search://1462181</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462181&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:04:23.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Sonho lento&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462181</Id>
<Source>Tidal</Source>
<Id>1462181</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track11>
<Track12>
<URL>wiimu_search://1462182</URL>
<Metadata>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;DIDL-Lite xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:song=&quot;www.wiimu.com/song/&quot; xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot;&gt;
&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;
&lt;item id=&quot;&quot;&gt;
&lt;song:subid&gt;&lt;/song:subid&gt;
&lt;song:description&gt;&lt;/song:description&gt;
&lt;song:skiplimit&gt;0&lt;/song:skiplimit&gt;
&lt;song:id&gt;1462182&lt;/song:id&gt;
&lt;song:like&gt;0&lt;/song:like&gt;
&lt;song:singerid&gt;3506183&lt;/song:singerid&gt;
&lt;song:albumid&gt;1462170&lt;/song:albumid&gt;
&lt;song:quality&gt;0&lt;/song:quality&gt;
&lt;song:actualQuality&gt;&lt;/song:actualQuality&gt;
&lt;song:atmos&gt;0&lt;/song:atmos&gt;
&lt;song:rate_hz&gt;0&lt;/song:rate_hz&gt;
&lt;song:format_s&gt;&lt;/song:format_s&gt;
&lt;song:bitrate&gt;0&lt;/song:bitrate&gt;
&lt;song:guibehavior&gt;&lt;/song:guibehavior&gt;
&lt;song:soundScapeType&gt;&lt;/song:soundScapeType&gt;
&lt;song:playCase&gt;&lt;/song:playCase&gt;
&lt;song:originSource&gt;Tidal&lt;/song:originSource&gt;
&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;&quot; duration=&quot;00:04:22.000&quot;&gt;&lt;/res&gt;
&lt;dc:title&gt;Canção a meia voz&lt;/dc:title&gt;
&lt;upnp:artist&gt;Aldina Duarte&lt;/upnp:artist&gt;
&lt;upnp:album&gt;Apenas O Amor&lt;/upnp:album&gt;
&lt;upnp:albumArtURI&gt;https://resources.tidal.com/images/297ba57f/8849/485f/b1bc/289a4b5f7bca/640x640.jpg&lt;/upnp:albumArtURI&gt;
&lt;/item&gt;
&lt;/DIDL-Lite&gt;
</Metadata>
<Id>1462182</Id>
<Source>Tidal</Source>
<Id>1462182</Id>
<ChapterNumber>0</ChapterNumber>
<Chapters></Chapters>
</Track12>
</Tracks>
</PlayList>
Weird. This is exactly what I would need and was looking for.
But I don't see a "CurrentQueue" in my PlayQueue endpoint.
Or did they remove it from the WiiM Amp devices, possibly?
 
Nope, working fine with my Allmusic Chrome extension. As you're doing JS, here are the relevant snippets:

After querying TIdal for an album ID, set up the query to WiiM:

JavaScript:
function playAlbum() {
    id = this.id;
    let list_name = albums[id]['title'];
    let item_id = albums[id]['id'];
    let node = "album";
    
    document.getElementById("covers").innerHTML = "";
    list_name = list_name.replace(' & ',' ');
    
    let xml = `<?xml version="1.0"?>
<PlayList><ListName>${list_name}</ListName><ListInfo> <SourceName>Tidal</SourceName><SearchUrl>https://api.tidal.com/v1/${node}s/${item_id}/tracks?countryCode=${countryCode}&offset=0&limit=50</SearchUrl><requestQuality>LOSSLESS</requestQuality></ListInfo></PlayList>`
    
    xml = xml_encode(xml);

    message.cmd = "Stop";
    message.detaildict = {"InstanceID":0};
    chrome.runtime.sendMessage(message,function(response) {
        message.cmd = "createQueue";
        message.detaildict = {"QueueContext": xml};
        chrome.runtime.sendMessage(message,function(response) {
            message.cmd = "playQueueWithIndex";
            message.detaildict = {"QueueName": list_name, "Index": 0};
            chrome.runtime.sendMessage(message,function(response) {
               // alert(response);
            });

        });
    });
}

As it's an extension, we can't talk directly to the WiiM, so we pass the message to background.js, which can. You obviously won't have this restriction with Node.js.

JavaScript:
var player_ip;
var url;

chrome.storage.sync.get({player_ip: ''}, function(items) {
    player_ip = items.player_ip;
    url = 'http://' + player_ip + ':49152/upnp/control/rendertransport1'
    
});

chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
    
    let service = 'AVTransport';
    let action = 'GetInfoEx';
    let detaildict = {"InstanceID":0};
    let request = message.cmd;

    let query = encodeURI(message.query)
    
    if (request === "getStatus") {
        action = 'GetInfoEx';

    } else if (request === 'Pause') {
        action = request;
    } else if (request === 'Play') {
        action = request;
        detaildict = {'InstanceID': 0,'Speed': '1'};
    } else if (request === 'Next') {
        action = request;
    } else if (request === 'Prev') {
        action = 'Previous';
    } else if (request === 'Stop') {
        action = 'Stop';
    } else if (request === 'createQueue') {
        service = 'PlayQueue';
        action = 'CreateQueue';
        detaildict = message.detaildict;
    } else if (request === 'playQueueWithIndex') {
        service = 'PlayQueue';
        action = 'PlayQueueWithIndex';
        detaildict = message.detaildict;
    } else if (request === 'getUserInfo') {
        service = 'PlayQueue';
        action = 'GetUserInfo';
        detaildict = message.detaildict;
    }   
    
    let control = "";
    let schema = "";
    if (service === 'AVTransport') {
        control = "/upnp/control/rendertransport1"
        schema = "schemas-upnp-org"
    } else if (service === 'RenderingControl') {
        control = "/upnp/control/rendercontrol1"
        schema = "schemas-upnp-org"
    } else if (service === 'PlayQueue') {
        control = "/upnp/control/PlayQueue1"
        schema = "schemas-wiimu-com"
    }   
        
    url = `http://${player_ip}:49152${control}`

    let detail = ""
    for(var key in detaildict) {
        value = detaildict[key];
        detail = detail + `<${key}>${value}</${key}>`
    }   
        
    let payload =`<?xml version="1.0" encoding="utf-8"?>
    <s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
        <s:Body>
            <u:${action} xmlns:u="urn:${schema}:service:${service}:1">
                ${detail}
            </u:${action}>
        </s:Body>
    </s:Envelope>`
    
    let headers = {'Content-Type' : 'text/xml; charset=utf-8',
              'SOAPAction' : `"urn:${schema}:service:${service}:1#${action}"`}
    
    fetch(url, {body:payload,
                method:'POST',
                headers:headers,
                cache: 'no-cache'
               })
    .then(response => response.text())
    .then(response => sendResponse(response))
    .catch(function (err) {
        console.log('error: ' + err);
        fetch(url, {body:payload,
                    method:'POST',
                    headers:headers,
                    cache: 'no-cache'
                   })
        .then(response => response.text())
        .then(response => sendResponse(response))
        .catch(function (err) {
            console.log('error: ' + err);
        });   
    });
    
  return true
})
 
To get an idea of how to query the Queue, it's ideal to have a UPnP browser tool, like "UPnP Tool" on Android. Makes it very easy to interact with the SOAP endpoints. Also, have a look at the Arylic.zip file in the thread I pointed to above. It has BrowseQueue.sh. Just set up the config.inc to your WiiM's IP first, and make the .sh files executable.
 
Aha, I see. When you want to play an album, you ask the WiiM device to ask Tidal (in this case) to get the playlist and then tell the WiiM device to stop, create the queue with whatever Tidal tells it and then play the queue (with index).
Nifty!

From what I gather, you need to tell your WiiM device to get a playlist. Otherwise when, through the WiiM home app, you just select a playlist it won't populate a queue. Hence no queue to show.
 
Aha, I see. When you want to play an album, you ask the WiiM device to ask Tidal (in this case) to get the playlist and then tell the WiiM device to stop, create the queue with whatever Tidal tells it and then play the queue (with index).
Nifty!

From what I gather, you need to tell your WiiM device to get a playlist. Otherwise when, through the WiiM home app, you just select a playlist it won't populate a queue. Hence no queue to show.
Nope, I just started an album from Tidal using the WiiM app, and it definitely shows up in CurrentQueue.

Then, I selected a saved radio station, and it also showed up in CurrentQueue.

Finally, I tried Spotify Connect (from the Linux Spotify app), which does NOT show up in CurrentQueue.
 
Last edited:
Back
Top