Skip to content

Playback/Metadata laufen auseinander: Countdown endet, Lied läuft weiter, UI reagiert nicht mehr zuverlässig #795

@Levtos

Description

@Levtos

Getestete Version

v3.3.1-rc8


Beobachtetes Verhalten

Das Spiel lief am Anfang recht flüssig. Nach einigen Runden wurde es dann "strange":

  • der Countdown war vorbei, aber das Lied lief weiter
  • die nächste Maske bzw. der nächste Screen wurde nicht sauber geladen
  • die Emoji-Reaktionen reagierten nicht mehr
  • es wirkte so, als ob Beatify intern nicht mehr sauber zwischen aktuellem Song, Player-State, Metadata und UI-State synchronisiert war

Besonders auffällig ist, dass Beatify mehrfach meldet, dass Metadata nicht rechtzeitig aktualisiert wurden und stattdessen der aktuelle State weiterverwendet wird.

Zusätzlich tauchen mehrere Meldungen auf, bei denen Beatify erkennt, dass der Speaker noch auf dem vorherigen Track steht oder Playback nicht bestätigt werden konnte, aber teilweise trotzdem fortfährt.


Erwartetes Verhalten

Wenn Beatify nicht eindeutig bestätigen kann, dass der erwartete Track läuft, sollte das Spiel nicht normal weiterlaufen.

Aus Nutzersicht wäre besser:

  • Track sauber überspringen
  • Runde pausieren
  • sichtbare Fehlermeldung anzeigen
  • oder Playback hart stoppen und neu synchronisieren

Aber das Spiel sollte nicht in einen Zustand geraten, in dem Countdown, UI, Emojis und tatsächliche Wiedergabe auseinanderlaufen.


Relevante Logs

Metadata wird nicht rechtzeitig aktualisiert

Dieser Fehler stammt von einer benutzerdefinierten Integration

Logger: custom_components.beatify.services.media_player
Quelle: custom_components/beatify/services/media_player.py:667
Integration: Beatify (Dokumentation, Probleme)
Erstmals aufgetreten: 25. April 2026 um 23:56:40 (7 Vorkommnisse)
Zuletzt protokolliert: 25. April 2026 um 23:59:52

Metadata not updated within 5.0s, using current state

Playback nicht bestätigt, Speaker bewegt sich aber weiter

Dieser Fehler stammt von einer benutzerdefinierten Integration

Logger: custom_components.beatify.services.media_player
Quelle: custom_components/beatify/services/media_player.py:493
Integration: Beatify (Dokumentation, Probleme)
Erstmals aufgetreten: 25. April 2026 um 23:57:04 (4 Vorkommnisse)
Zuletzt protokolliert: 25. April 2026 um 23:59:47

MA playback not confirmed after 15.0s for apple_music://track/1412839444 (state: playing). Speaker moved (title 'Sugar, Sugar', pos ts datetime.datetime(2026, 4, 25, 21, 56, 35, 448812, tzinfo=datetime.timezone.utc) → datetime.datetime(2026, 4, 25, 21, 56, 53, 330791, tzinfo=datetime.timezone.utc)). Continuing anyway — MA may still be buffering. (#345)
MA playback not confirmed after 15.0s for apple_music://track/524098412 (state: playing). Speaker moved (title 'Lazy Sunday (Mono)', pos ts datetime.datetime(2026, 4, 25, 21, 57, 43, 148408, tzinfo=datetime.timezone.utc) → datetime.datetime(2026, 4, 25, 21, 58, 37, 436120, tzinfo=datetime.timezone.utc)). Continuing anyway — MA may still be buffering. (#345)
MA playback not confirmed after 15.0s for https://tidal.com/browse/track/84601690 (state: playing). Speaker moved (title 'Lazy Sunday (Mono)', pos ts datetime.datetime(2026, 4, 25, 21, 58, 37, 436120, tzinfo=datetime.timezone.utc) → datetime.datetime(2026, 4, 25, 21, 59, 13, 350263, tzinfo=datetime.timezone.utc)). Continuing anyway — MA may still be buffering. (#345)
MA playback not confirmed after 15.0s for https://tidal.com/browse/track/49469869 (state: playing). Speaker moved (title 'Lazy Sunday (Mono)', pos ts datetime.datetime(2026, 4, 25, 21, 59, 13, 350263, tzinfo=datetime.timezone.utc) → datetime.datetime(2026, 4, 25, 21, 59, 31, 375782, tzinfo=datetime.timezone.utc)). Continuing anyway — MA may still be buffering. (#345)

Music Assistant: Tidal-Kandidaten nicht abspielbar

Logger: homeassistant.core
Quelle: core.py:2837
Erstmals aufgetreten: 25. April 2026 um 23:59:13 (2 Vorkommnisse)
Zuletzt protokolliert: 25. April 2026 um 23:59:32

Error executing service: <ServiceCall music_assistant.play_media (c:01KQ3AETKDG3MH874TZ0WJZF91): media_id=['https://tidal.com/browse/track/84601690'], media_type=track, entity_id=['media_player.living_denon_airplay']>
Error executing service: <ServiceCall music_assistant.play_media (c:01KQ3AFCK1R3Q8Q0SKJZD9NRM8): media_id=['https://tidal.com/browse/track/49469869'], media_type=track, entity_id=['media_player.living_denon_airplay']>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/music_assistant/helpers.py", line 30, in wrapper
    return await func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/music_assistant/media_player.py", line 456, in _async_handle_play_media
    await self.mass.player_queues.play_media(
    ...<4 lines>...
    )
  File "/usr/local/lib/python3.14/site-packages/music_assistant_client/player_queues.py", line 201, in play_media
    await self.client.send_command(
    ...<6 lines>...
    )
  File "/usr/local/lib/python3.14/site-packages/music_assistant_client/client.py", line 334, in send_command
    return await future
           ^^^^^^^^^^^^
music_assistant_models.errors.MediaNotFoundError: No playable items found

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/core.py", line 2837, in _run_service_call_catch_exceptions
    await coro_or_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 2860, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 834, in entity_service_call
    single_response = await _handle_entity_call(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
        hass, entity, func, data, call.context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 906, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/music_assistant/helpers.py", line 33, in wrapper
    raise HomeAssistantError(error_msg) from err
homeassistant.exceptions.HomeAssistantError: No playable items found

Beatify erkennt vorherigen Track und skipped

Dieser Fehler stammt von einer benutzerdefinierten Integration

Logger: custom_components.beatify.services.media_player
Quelle: custom_components/beatify/services/media_player.py:479
Integration: Beatify (Dokumentation, Probleme)
Erstmals aufgetreten: 25. April 2026 um 23:59:13 (1 Vorkommnis)
Zuletzt protokolliert: 25. April 2026 um 23:59:13

MA playback failed after 15.0s for spotify:track:0FBeVAGy58YREuZK2rpRVm — speaker still on prior track 'Lazy Sunday (Mono)', position timestamp unchanged; skipping (#777)

Spotify-URI nicht auflösbar

Logger: homeassistant.core
Quelle: core.py:2837
Erstmals aufgetreten: 25. April 2026 um 23:56:15 (2 Vorkommnisse)
Zuletzt protokolliert: 25. April 2026 um 23:58:58

Error executing service: <ServiceCall music_assistant.play_media (c:01KQ3A9CWBWY2306V7YSR4R7G6): media_id=['spotify:track:30cHDhxUqgnHq78hv5UjMx'], media_type=track, entity_id=['media_player.living_denon_airplay']>
Error executing service: <ServiceCall music_assistant.play_media (c:01KQ3AEBYKJ2BD7JRJM16ST0YY): media_id=['spotify:track:0FBeVAGy58YREuZK2rpRVm'], media_type=track, entity_id=['media_player.living_denon_airplay']>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/core.py", line 2837, in _run_service_call_catch_exceptions
    await coro_or_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 2860, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 834, in entity_service_call
    single_response = await _handle_entity_call(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
        hass, entity, func, data, call.context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 906, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/music_assistant/helpers.py", line 30, in wrapper
    return await func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/music_assistant/media_player.py", line 444, in _async_handle_play_media
    raise HomeAssistantError(
        f"Could not resolve {media_id} to playable media item"
    )
homeassistant.exceptions.HomeAssistantError: Could not resolve ['spotify:track:30cHDhxUqgnHq78hv5UjMx'] to playable media item

Beatify: Spotify Playback Timeout

Dieser Fehler stammt von einer benutzerdefinierten Integration

Logger: custom_components.beatify.services.media_player
Quelle: custom_components/beatify/services/media_player.py:455
Integration: Beatify (Dokumentation, Probleme)
Erstmals aufgetreten: 25. April 2026 um 23:56:30 (1 Vorkommnis)
Zuletzt protokolliert: 25. April 2026 um 23:56:30

MA playback failed after 15.0s for spotify:track:30cHDhxUqgnHq78hv5UjMx (state: idle)

Meine Vermutung

Die eigentliche Recovery ist besser geworden, aber das Zusammenspiel aus Music Assistant, AirPlay und Metadata scheint weiterhin zu Race Conditions zu führen.

Besonders kritisch wirkt:

  • Metadata not updated within 5.0s, using current state
  • Continuing anyway
  • Speaker läuft noch auf altem Track
  • UI / Emoji-Reaktionen reagieren danach nicht mehr zuverlässig

Dadurch kann Beatify offenbar in einen Zustand geraten, in dem das Spiel UI-seitig und Player-seitig nicht mehr dieselbe Runde abbilden.


Ich war jetzt zuletzt unsicher ob du das Feedback auf Englisch oder Deutsch möchtest, hab jetzt erstmal die native Language genommen, um Missverständnisse vorzubeugen. Bin schon auf das nächste Update gespannt :-D

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions