[Squeezebox] artwork streaming radio not showing after update

After updating to 0.32.3 my HASS is not updating artwork on streaming radio plays.
Only artwork of local stored mp3’s is showing fine.

The artwork seems to be presented but nothing is showing on HASS anymore.
When showing on a squeezebox or directly on the LMS web interface the artwork shows just fine.

entity_picture: /api/media_player_proxy/media_player.livingroom?token=1695686224&cache=eee03
friendly_name: Livingroom
is_volume_muted: false
media_artist: Radio 538 102.3
media_content_id: RADIO538
media_content_type: music
media_duration: 0
media_title: 538 Hitzone
supported_media_commands: 959
volume_level: 0.4

I’m running .32.4 and am getting images from Spotify inside Squeezebox.

What URL are you streaming from? I tried: http://vip-icecast.538.lw.triple-it.nl/WEB11_MP3.m3u
And found that it doesn’t have artwork that displays on the Squeeze Server.

http://opml.radiotime.com/Tune.ashx?id=s48120&formats=aac,ogg,mp3&partnerId=16&serial=b635262d304498ecd1853e2ca4a58339

I’m not seeing artwork for those inside Squeeze Server. Do you Spotify or Pandora (or another stream service) set up in LMS? I just tried with those 2, plus Band’s Campout (BandCamp plugin) and I get artwork for each.

This is direct link from Tunein radio

It’s possible that there’s an issue with TuneIn’s handling of the image. I know that without the Spotify protocol plugin, I was having issues with album covers on remote devices.

Have you tried another stream option (Pandora, Spotify, whatever) to see if it’s an issue with only TuneIn?

This is the actual image adres

http://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-radiotime-logos.tunein.com%2Fp571553q.png&h=96&w=96

Ah. mysqueezebox.com - that may be your issue. My understanding is that HASS connects directly to a local server.

Sorry but it has been serving me these image links since day one so nothing changed there.

Could you please provide me with a streaming radio link that works for you so I can test it here.

It works for me with Spotify and Pandora. I couldn’t get it to work with streamed URLs (using the built-in URL stream function). I wouldn’t be surprised if it has something to do with a protocol handler for the image (inside of LMS). I had an issue with chromecasting from LMS where it wouldn’t show artwork. Artwork showed on the web interface, but not on the Chromecast. I had to install a plugin that handled the protocols for Spotify, then everything worked fine.

Have you checked pull requests on the Squeezebox component to see if there were any changes recently that could have caused this?

Closer to figuring out what broke it.

1 Like

Hi,

I had the same problem: I was getting artwork correctly when using spotify playlists but for radio streams on my squeezebox I had no artwork.

I found out that the problem was due to the fact that in some cases the media URL returned by the squeezebox contains a linefeed and sometimes it doesn’t. In the case of the spotify playlist it doesn’t but in case of the radio streams it does. When home assistant was fetching the image it included the linefeed (%0a) in the HTTP GET request which resulted in an HTTP 404 error (no image available).

I was able to solve this by just a small change in de function def media_image_url: before the statement ‘return url’ I added a line ‘url = url.rstrip()’ which just removes any trailing spaces/linefeed/newline characters from the URL. Now I always get the correct artwork.

Anyone have any idea how I can request for the developpers to add this change (or something equivalent solving the problem) in the code so that it is fixed for everyone (and I don’t lose my change when I do an upgrade…)?

1 Like

Rockstar :sunglasses:

I created a pull request with this update. I added it before the debug statement.

Turns out that there’s a PR in the queue to refactor Squeeze to use the JSONRPC interface instead of the older CLI interface. Looks like @dasos work will make the PR that I submitted unnecessary.

Is it working for you okay now?

I’m still running .35.3 - waiting for the dust to settle on .36.x