tehkillerbee / mopidy-tidal

Tidal Backend plugin for Mopidy
Apache License 2.0
93 stars 28 forks source link

Forbidden error after playback paused for a few hours #32

Closed greggilbert closed 2 years ago

greggilbert commented 3 years ago

I've found that if I pause playback midtrack and come back to it a few hours later, it'll dump out the buffer and then throw this error:

Feb 15 17:08:57 python[1956447]: ERROR    2021-02-15 17:08:57,740 [1956447:MainThread] mopidy.audio.gst
Feb 15 17:08:57 python[1956447]:   GStreamer error: Forbidden

The only thing that fixes it is going to the next track. It seems like the error is thrown further upstream, that is outside of this module, but I'm wondering if it's possible to catch the error and restart playback or something like that. Any thoughts?

kingosticks commented 3 years ago

The issue other backends have run into is that services sometimes give you URIs that expire after a certain amount of time. After pausing, GStreamer will try and get the next chunk of data, this will then fail if the URI has expired. We've never really had a good solution for this situation, we don't have much control of souphttpsrc that's doing the actual downloading within GStreamer.

tehkillerbee commented 2 years ago

Closing this issue, as it does not appear to be caused by mopidy-tidal