In the go version of the library they set some boolean in the request that makes it not work with free accounts but if you change it to this it will work. You can also use this Wireshark dissector to read Spotify protobuf messages directly: https://github.com/plietar/spotify-analyze/blob/master/disse...
Then you can make the authentication packet look exactly like the desktop client (though this is not required because Spotify has lax validation).
Just modify the authentication code in https://github.com/librespot-org/librespot-golang/blob/maste... to look something like this:
In the go version of the library they set some boolean in the request that makes it not work with free accounts but if you change it to this it will work. You can also use this Wireshark dissector to read Spotify protobuf messages directly: https://github.com/plietar/spotify-analyze/blob/master/disse...Then you can make the authentication packet look exactly like the desktop client (though this is not required because Spotify has lax validation).