gst-plugin-spotify has stopped functioning after the latest update
-
@jasmint
If you build from git source you need to provide API credentials manually in the settings, you can do this here here: https://developer.spotify.com/dashboard (Redirect URI need to be set to https://oauth.strawberrymusicplayer.org/), Apply settings, then login again -
@jonas Good news but not 100% yet: after I used custom credentials following your steps (had to restart Strawberry after I signed out from my other non-custom one to get it to work, really weird), I can now use the in-built search function and refresh my catalogues!

...unfortunately, that's where the good part ends. After searching for a song, adding it to my playlist, and trying to play it, I still get this error:
17:58:16.446 ERROR GstEnginePipeline:1867 ErrorMessageReceived ID: 2 Domain: 2267 Code: 3 Error: "Resource not found." 17:58:16.446 ERROR GstEnginePipeline:1868 ErrorMessageReceived ID: 2 Domain: 2267 Code: 3 Debug: "audio/spotify/src/spotifyaudiosrc/imp.rs(279): <gstspotify::spotifyaudiosrc::imp::SpotifyAudioSrc as gstreamer_base::subclass::push_src::PushSrcImpl>::create (): /GstPlayBin3:pipeline-2-pipeline/GstURIDecodeBin3:uridecodebin3/GstURISourceBin:urisourcebin1/GstSpotifyAudioSrc:spotifyaudiosrc1:\ntrack is not available" 17:58:16.446 ERROR GstEngine:640 GStreamer error: 2267 3 "Resource not found."So we're back to square one.
At this point, I am very lost
️
if there's anything you want to try or experiment with, happy to try! -
@jasmint the 1.2.29 release notes indicate that to build from source you should use the .tar.xz file located in the release assets, which includes an apicredentials.h file (not present in the git source tarball). Does using the .tar.xz get you all the way there?
(which builds directly from git)
Maybe it builds from the git .tar.xz asset not truly directly from git which, if so, you can ignore me.
-
I realize that the new API credentials I created is in development mode, apparently it has some limitations like rate limiting and maximum number users, so I'll need to switch back to using the old.

-
Maybe it builds from the git .tar.xz asset not truly directly from git which, if so, you can ignore me.
I had a poke around in the PKGBUILD of the official Arch package, and the source is
source=(git+https://github.com/strawberrymusicplayer/strawberry#tag=$pkgver https://github.com/strawberrymusicplayer/strawberry/releases/download/$pkgver/$pkgname-$pkgver.tar.xz)So it does build from the .tar.xz asset (which may be a recent change after the credential thing). The more you know

@jonas
Oh i did notice I got rate limited before when trying to search up artists, so that's a nice change! I switched back to non-custom API credentials and can confirm there is no more rate limiting reported in the CLI
My Spotify tracks still don't play though (getting that same error of resource not found).
Running Strawberry withGST_DEBUG=3 strawberry --verbose0:00:07.380990318 415737 415942 ERROR spotifyaudiosrc audio/spotify/src/spotifyaudiosrc/imp.rs:278:<gstspotify::spotifyaudiosrc::imp::SpotifyAudioSrc as gstreamer_base::subclass::push_src::PushSrcImpl>::create:<spotifyaudiosrc0> track is not available 0:00:07.381084980 415737 415942 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<spotifyaudiosrc0> error: Internal data stream error. 0:00:07.381095660 415737 415942 WARN basesrc gstbasesrc.c:3187:gst_base_src_loop:<spotifyaudiosrc0> error: streaming stopped, reason error (-5) 0:00:07.381131569 415737 415942 WARN oggdemux gstoggdemux.c:4799:gst_ogg_demux_send_event:<oggdemux0> error: EOS before finding a chain 20:38:30.548 ERROR GstEnginePipeline:1867 ErrorMessageReceived ID: 1 Domain: 2267 Code: 3 Error: "Resource not found." 0:00:07.381152259 415737 415942 WARN oggdemux gstoggdemux.c:2574:gst_ogg_demux_sink_event:<oggdemux0> EOS while trying to retrieve chain, seeking disabled 20:38:30.548 ERROR GstEnginePipeline:1868 ErrorMessageReceived ID: 1 Domain: 2267 Code: 3 Debug: "audio/spotify/src/spotifyaudiosrc/imp.rs(279): <gstspotify::spotifyaudiosrc::imp::SpotifyAudioSrc as gstreamer_base::subclass::push_src::PushSrcImpl>::create (): /GstPlayBin3:pipeline-1-pipeline/GstURIDecodeBin3:uridecodebin3/GstURISourceBin:urisourcebin0/GstSpotifyAudioSrc:spotifyaudiosrc0:\ntrack is not available" 20:38:30.548 ERROR GstEngine:640 GStreamer error: 2267 3 "Resource not found." 20:38:30.575 WARN IconLoader:129 Couldn't load icon "media-playback-start" from system theme icons. 20:38:30.575 WARN IconLoader:129 Couldn't load icon "media-playback-start" from system theme icons. 20:38:30.576 WARN IconLoader:129 Couldn't load icon "media-playback-start" from system theme icons. 20:38:30.576 WARN IconLoader:129 Couldn't load icon "media-playback-start" from system theme icons. 0:00:07.410709571 415737 415737 ERROR GST_BUS gstbus.c:1081:gst_bus_remove_watch:<bus1> no bus watch was presentI guess some part of my install is just borked... I did try deleting the Strawberry folder in .cache, but no change.
-
So it does build from the .tar.xz asset (which may be a recent change after the credential thing). The more you know :thinking_face:Not exactly. Its using the git tag.
-
Not exactly. Its using the git tag.
Oh, nvm then lol
(edit: I thought the playback suddenly started working again, but I was actually playing from my local files LMAO. nvm!)
-
@kxfu
What version of gst-plugins-rs do you have?
The GStreamer Spotify plugin needs librespot 0.8 to play tracks, which is in version 0.14.4 and newer. -
The issue could also occur of you don't have a premium subscription.
-
Hi
I have the same issue, I tried with plugin versions 0.14.5 (with librespot 0.8.0) as well as versions 0.15.4 (0.8.0) and 0.16.0-alpha (0.8.0)
I do have Spotify Premium, and am playing songs that should be unrestricted where I am