Show external cover art in music-assistant-integration (#141716)

* fix: handling of external album-art in music-assistant-integration

* chore: refinements

* make the image-logic more readable

* fix code comment to be accurate
This commit is contained in:
Benjamin Bender 2025-03-29 22:04:57 +01:00 committed by GitHub
parent aba01d4361
commit 35b9564ed4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -592,17 +592,24 @@ class MusicAssistantPlayer(MusicAssistantEntity, MediaPlayerEntity):
def _update_media_image_url(
self, player: Player, queue: PlayerQueue | None
) -> None:
"""Update image URL for the active queue item."""
if queue is None or queue.current_item is None:
self._attr_media_image_url = None
return
if image_url := self.mass.get_media_item_image_url(queue.current_item):
"""Update image URL."""
if queue and queue.current_item:
# image_url is provided by an music-assistant queue
image_url = self.mass.get_media_item_image_url(queue.current_item)
elif player.current_media and player.current_media.image_url:
# image_url is provided by an external source
image_url = player.current_media.image_url
else:
image_url = None
# check if the image is provided via music-assistant and therefore
# not accessible from the outside
if image_url:
self._attr_media_image_remotely_accessible = (
self.mass.server_url not in image_url
)
self._attr_media_image_url = image_url
return
self._attr_media_image_url = None
self._attr_media_image_url = image_url
def _update_media_attributes(
self, player: Player, queue: PlayerQueue | None