music-assistant / hass-music-assistant

Turn your Home Assistant instance into a jukebox, hassle free streaming of your favorite media to Home Assistant media players.
Apache License 2.0
1.37k stars 52 forks source link

Qobuz playlist randomly stops #2902

Closed madbrain76 closed 3 weeks ago

madbrain76 commented 1 month ago

What version of Music Assistant has the issue?

2.3.0b21

What version of the Home Assistant Integration have you got installed?

None

Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

The problem

When playing a Qobuz playlist onto my Chromecast, the playlist stops before all the tracks have played

How to reproduce

  1. Create a Qobuz playlist. Mine has 20 tracks
  2. Select a Chromecast player
  3. Press play (blue button)
  4. Wait for it to complete. It won't.

Music Providers

Qbouz

Player Providers

Chromecast

Full log output

ma_playlist.log

Additional information

I believe this is a regression that was introduced in beta 20 . I don't have the issue when rolling back to beta 19.

What version of Home Assistant Core are your running

2024.9.1

What type of installation are you running?

Home Assistant OS

On what type of hardware are you running?

Windows

OzGav commented 1 month ago

Can you just attach a log at the default level. That is too much to look through at the moment. The devs will ask for debug logs if needed

madbrain76 commented 1 month ago

Is there not a grep command that will work ? I had the set the levels manually in every single component, so it's a PITA to change them all back.

marcelveldt commented 1 month ago

Is there not a grep command that will work ? I had the set the levels manually in every single component, so it's a PITA to change them all back.

Not really, as we will follow the logs whats happening in the timeline. Log levels debug and verbose only make sense if specifically debugging issues, otherwise they make no sense and just spam the logs and slow things down.

For now its fine but just that you know for next time.

marcelveldt commented 1 month ago

Oh you have verbose log level, it makes the log unreadable, sorry. Please disable that, verbose is only when specifically asked and introduces issues on its own

marcelveldt commented 1 month ago

Could be that beta 23 already fixes this issue as I have identified a couple of issues and fixed them that could be related to this. If not, provide a log with info (or max debug) level

madbrain76 commented 1 month ago

I will keep an eye on it. It was still happening in b22 yesterday. If it happens again, I'll attach a log.

drjjr2 commented 1 month ago

Could be that beta 23 already fixes this issue as I have identified a couple of issues and fixed them that could be related to this. If not, provide a log with info (or max debug) level

Similar problem with Spotify and DLNA. Here is the debug log. music-assistant (2).log

madbrain76 commented 1 month ago

I just experienced a different problem. I had the second track or my Playlist repeat on b23. I did not have that happen before. I'm thinking it might be related to this issue and redent changes.

Unfortunately, there is nothing in the log. More precisely, the timestamp for the first log entry is after the Playlist even started. I'm thinking the MA add-on may have crashed. Is there any information somewhere like a crash stack or talkback?

Tangentially, he "download log file" feature actually shows the log rather than cause it to download. On desktop firefox, I can type ctrl-s and save. I could find no equivalent function on Firefox for Android, unfortunately. Even if there had been something in the log, I couldn't get it to you as I'm far away from my desktop currently, and want to continue using MA. If there was an archive of previous logs, I would just restart the add-on and send you one of those logs later.

madbrain76 commented 1 month ago

I had the playlist stop once more. Still Qobuz, on a group of 2 Chromecasts. Log is attached.

ma_playlist_stop.log

I could not find any way to fetch and attach the log from my smartphone. Tried both Firefox and Chrome. Seems like the only viable option is "Save to PDF" in Firefox. The save has been running for nearly 10 minutes, with no end in sight. It's just one hour worth of logs, but about 11,000 lines. I had to go downstairs to my desktop to fetch it. Any suggestion on how to fetch from smartphone in the feature would be welcome. Heading to the hot tub now and I will not interrupt my session to get another log ;)

marcelveldt commented 1 month ago

@madbrain76 you really need to disable all the verbose logging. It makes the logs unreadable. Only, yes really only enable it for one particular provider when there is a reason to (most often development only). Verbose mode literally dumps EVERYTHING that is happening to the logs and its very bad for system performance.

Just set the global log level at INFO and only when you need to investigate some issue, set that provider (or core module) to DEBUG. In your case I'd say to set the stream and playerqueue core controllers to DEBUG.

marcelveldt commented 1 month ago

Could be that beta 23 already fixes this issue as I have identified a couple of issues and fixed them that could be related to this. If not, provide a log with info (or max debug) level

Similar problem with Spotify and DLNA. Here is the debug log. music-assistant (2).log

This log looks completely fine - no signs/reason why playback would have stopped. Did you try flow mod for your DLNA player ?

marcelveldt commented 1 month ago

I just experienced a different problem. I had the second track or my Playlist repeat on b23. I did not have that happen before. I'm thinking it might be related to this issue and redent changes.

Unfortunately, there is nothing in the log. More precisely, the timestamp for the first log entry is after the Playlist even started. I'm thinking the MA add-on may have crashed. Is there any information somewhere like a crash stack or talkback?

Tangentially, he "download log file" feature actually shows the log rather than cause it to download. On desktop firefox, I can type ctrl-s and save. I could find no equivalent function on Firefox for Android, unfortunately. Even if there had been something in the log, I couldn't get it to you as I'm far away from my desktop currently, and want to continue using MA. If there was an archive of previous logs, I would just restart the add-on and send you one of those logs later.

Could be related but I would need to see the log if it happens. All this is with Qobuz playback on Google Cast with flow mode enabled right ?

madbrain76 commented 1 month ago

Yes, Qobuz on Google cast.

madbrain76 commented 1 month ago

@madbrain76 you really need to disable all the verbose logging. It makes the logs unreadable. Only, yes really only enable it for one particular provider when there is a reason to (most often development only). Verbose mode literally dumps EVERYTHING that is happening to the logs and its very bad for system performance.

Just set the global log level at INFO and only when you need to investigate some issue, set that provider (or core module) to DEBUG. In your case I'd say to set the stream and playerqueue core controllers to DEBUG.

I think I mentioned before that system performance really was not a concern on the hardware I'm running it on. It's plenty fast. I didn't notice any difference in response time when I turned on all the logging.

The problem with the suggestion to only turn on what's necessary is that I never know which problem I'm going to run into next. Many times, it's a surprise. Sometimes the issue is not easy to reproduce, in which one case the log for that one occurrence may be all there is. I would much rather have the complete log and filter it down, than missing part of the information. Even if the issue is reproducible, it will take extra time to do so. And I may not know which specific component I need to enable logging for.

Looking at the log entries in the file I attached, it seems the log level is included on each line., and there is some sort of component information. It might be component & subcomponent . I'm not completely clear. I'm talking about things in brackets like [music_assistant.chromecast] and [pychromecast.controllers] .

I'm not sure what entries the "stream" and "playerqueue" map to in the logs. For the former, maybe [music_assistant.audio.media_stream] . For the later, I'm not certain.

madbrain76 commented 1 month ago

I heard the issue with the playlist stopping early on an Airplay player in the afternoon while in the hot tub. I did not collect the log at the time. MA was restarted since then, and that log has been lost.

I also played an album (as opposed to a playlist), still from Qobuz, onto a CCA. Most of it played fine. But at some point, it started playing tracks out of order. I did not have shuffle on. It looks like MA restarted itself after that, and thus there is no log for me to send.

OzGav commented 1 month ago

Trawling through reams of log entries is not something the devs want to do so you will get more timely support if you do as requested.

Why is MA restarting?

madbrain76 commented 1 month ago

I can write some scripts to filter them, if that would help.

The restart after the hot tub incident was manual. The other one with the album playing out of order was unexpected. There was another unexpected restart I mentioned earlier in this comment : https://github.com/music-assistant/hass-music-assistant/issues/2902#issuecomment-2351151343 .

I think MA might be crashing. I just disabled the watchdog, so I will know for a fact if that's the case.

OzGav commented 1 month ago

I can write some scripts to filter them, if that would help.

Yes if you can filter them so they only show INFO, WARNING and ERROR that would be great,

marcelveldt commented 1 month ago

I can write some scripts to filter them, if that would help.

No, just disable verbose log level. It is not needed and causes side effects. Only enable it when asked and on a per provider basis. Debug is fine if you insist in having big logfiles but verbose is for development and low level troubleshooting. It can cause timing side effects due to heavy processing. That cludges any troubleshooting so that is why I keep asking you to turn it off.

madbrain76 commented 1 month ago

OK, I have changed everything I could find back to global default, and set the add-on to debug.

marcelveldt commented 1 month ago

I just released 2.2.5 stable (and 2.30b24) so please make sure to update to that first. Then if you do still experience this issue, please collect the full log and share it here so I can trace back the steps. Also let me know on what exact playertype(s) you experience this issue as you have whole collection

OzGav commented 1 month ago

@madbrain76 please confirm if this is fixed

madbrain76 commented 1 month ago

I upgraded to b25 a few hours ago. It's too early to tell. It hasn't happened yet. I had one Playlist repeat, even though repeat is turned off. This also happened in the past. Actually the Playlist is on its second repeat now. The player repeat bit is definitely off.

Is there any way to collect the log from a mobile device yet ? I really need this, as I'm not usually playing in the one room where the desktop is located, and it's very inconvenient to go there each time for various reasons.

OzGav commented 1 month ago

Based on what you have written above it appears the issue of the playlist stopping has been fixed. If so this can be closed.

madbrain76 commented 1 month ago

Unfortunately, it did happen again, but I had no way of collecting the log when it did. I really need the ability to save it from a mobile device. I hope that gets addressed.

OzGav commented 1 month ago

I expect that you can if you login into MA from the browser?

madbrain76 commented 1 month ago

I expect that you can if you login into MA from the browser?

I have tried that, of course, but I can't, because there is no "save" or "save as" function that I could find, in either Chrome or Firefox for Android. The log is simply displayed in the tab, with no way to save it. There is no CTRL-A to copy and paste. I even tried to print to PDF, and that also failed.

It used to be that bringing up the log page would cause a download pop-up, at least on desktop, but that's no longer the case. I never tried on mobile with old releases.

OzGav commented 1 month ago

I’m not sure why you can’t download the log. I just tried with my Android phone and when you click the three dots top right there is a download icon in the bar across the top and a share option further down? Screenshot_20240926-085726

madbrain76 commented 1 month ago

Thanks. I had indeed missed that. It's only available in Chrome, not Firefox, sadly. But that will work the next time I run into an issue

github-actions[bot] commented 1 month ago

This issue is stale because it has been open 7 days with no activity after asking for more info. Comment or this will be closed in 3 days.

github-actions[bot] commented 3 weeks ago

This issue is stale because it has been open 7 days with no activity after asking for more info. Comment or this will be closed in 3 days.

github-actions[bot] commented 3 weeks ago

This issue was closed because it has been stalled for 10 days with no activity. This can be reopened if additional information is provided.