Mopidy-Spotify + ncmpcpp not working. <ErrorType.USER_NEEDS_PREMIUM: 15>

Hello,
Please help me.
I have been trying to get mopidy-spotify + ncmpcpp to work.
I’m getting a USER_NEEDS_PREMIUM error even though I am sure that my Spotify account is premium.
I think I have done the install correctly. When opening ncmpcpp, the connection happens, but the terminal stays all black.

I’m on a Debian bullseye amd64 host.
Built the Gstreamer Rust spotify plugin. Added the GPG and sources in order to apt install mopidy mopidy-spotify mopidy-mpd

Here’s my .config/mopidy/mopidy.conf :

[core]
restore_state = true

[mpd]
enabled = true
hostname = 127.0.0.1
port = 6600

[spotify]
enabled = true
username = l7zx32q340hhdt6at88o6y393
password = redacted
client_id = b7291a52-0202-4e0b-be5f-a478550c58d1
client_secret = redacted
bitrate = 320

Here’s the output of mopidy


cybercore@akai:~$ mopidy
INFO     2023-05-28 14:30:33,005 [10806:MainThread] mopidy.__main__
  Starting Mopidy 3.4.1
INFO     2023-05-28 14:30:33,016 [10806:MainThread] mopidy.config
  Loading config from builtin defaults
INFO     2023-05-28 14:30:33,017 [10806:MainThread] mopidy.config
  Loading config from file:///home/cybercore/.config/mopidy/mopidy.conf
INFO     2023-05-28 14:30:33,017 [10806:MainThread] mopidy.config
  Loading config from command line options
INFO     2023-05-28 14:30:33,064 [10806:MainThread] mopidy.__main__
  Enabled extensions: mpd, spotify, m3u, file, http, stream, softwaremixer
INFO     2023-05-28 14:30:33,064 [10806:MainThread] mopidy.__main__
  Disabled extensions: none
INFO     2023-05-28 14:30:33,131 [10806:MainThread] mopidy.commands
  Starting Mopidy mixer: SoftwareMixer
INFO     2023-05-28 14:30:33,132 [10806:MainThread] mopidy.commands
  Starting Mopidy audio
INFO     2023-05-28 14:30:33,133 [10806:MainThread] mopidy.commands
  Starting Mopidy backends: FileBackend, M3UBackend, StreamBackend, SpotifyBackend
INFO     2023-05-28 14:30:33,140 [10806:Audio-2] mopidy.audio.actor
  Audio output set to "autoaudiosink"
ERROR    2023-05-28 14:30:33,283 [10806:SpotifyEventLoop] spotify.session
  Spotify login error: <ErrorType.USER_NEEDS_PREMIUM: 15>
INFO     2023-05-28 14:30:33,643 [10806:SpotifyBackend-6] mopidy_spotify.web
  Logged into Spotify Web API as l7zx32q340hhdt6at88o6y393
INFO     2023-05-28 14:31:03,525 [10806:SpotifyBackend-6] mopidy_spotify.playlists
  Refreshed 56 Spotify playlists
INFO     2023-05-28 14:31:03,526 [10806:MainThread] mopidy.commands
  Starting Mopidy core
INFO     2023-05-28 14:31:03,534 [10806:Core-9] mopidy.core.actor
  Loading state from /home/cybercore/.local/share/mopidy/core/state.json.gz
INFO     2023-05-28 14:31:03,536 [10806:MainThread] mopidy.commands
  Starting Mopidy frontends: HttpFrontend, MpdFrontend
INFO     2023-05-28 14:31:03,537 [10806:HttpFrontend-11] mopidy.http.actor
  HTTP server running at [::ffff:127.0.0.1]:6680
INFO     2023-05-28 14:31:03,539 [10806:MainThread] mopidy_mpd.actor
  MPD server running at [::ffff:127.0.0.1]:6600
INFO     2023-05-28 14:31:03,540 [10806:MainThread] mopidy.commands
  Starting GLib mainloop
INFO     2023-05-28 14:31:03,594 [10806:MpdSession-13] mopidy_mpd.session
  New MPD connection from [::ffff:127.0.0.1]:57546

I do have 56 playlists on my Spotify.

Here’s the output of mopidy config:

[core]
cache_dir = $XDG_CACHE_DIR/mopidy
config_dir = $XDG_CONFIG_DIR/mopidy
data_dir = $XDG_DATA_DIR/mopidy
max_tracklist_length = 10000
restore_state = true

[logging]
verbosity = 0
format = %(levelname)-8s %(asctime)s [%(process)d:%(threadName)s] %(name)s\n  %(message)s
color = true
config_file =

[audio]
mixer = software
mixer_volume =
output = autoaudiosink
buffer_time =

[proxy]
scheme =
hostname =
port =
username =
password =

[file]
enabled = true
media_dirs =
  $XDG_MUSIC_DIR|Music
  ~/|Home
excluded_file_extensions =
  .directory
  .html
  .jpeg
  .jpg
  .log
  .nfo
  .pdf
  .png
  .txt
  .zip
show_dotfiles = false
follow_symlinks = false
metadata_timeout = 1000

[http]
enabled = true
hostname = 127.0.0.1
port = 6680
zeroconf = Mopidy HTTP server on $hostname
allowed_origins =
csrf_protection = true
default_app = mopidy

[m3u]
enabled = true
base_dir =
default_encoding = latin-1
default_extension = .m3u8
playlists_dir =

[softwaremixer]
enabled = true

[stream]
enabled = true
protocols =
  http
  https
  mms
  rtmp
  rtmps
  rtsp
metadata_blacklist =
timeout = 5000

[spotify]
enabled = true
username = l7zx32q340hhdt6at88o6y393
password = ********
client_id = b7291a52-0202-4e0b-be5f-a478550c58d1
client_secret = ********
bitrate = 320
volume_normalization = true
private_session = false
timeout = 10
allow_cache = true
allow_network = true
allow_playlists = true
search_album_count = 20
search_artist_count = 10
search_track_count = 50
toplist_countries =

[mpd]
enabled = true
hostname = 127.0.0.1
port = 6600
password =
max_connections = 20
connection_timeout = 60
zeroconf = Mopidy MPD server on $hostname
command_blacklist =
  listall
  listallinfo
default_playlist_scheme = m3u

Here’s the output of mopidy deps

Executable: /usr/bin/mopidy
Platform: Linux-5.10.0-23-amd64-x86_64-with-glibc2.31
Python: CPython 3.9.2 from /usr/lib/python3.9
Mopidy: 3.4.1 from /usr/lib/python3/dist-packages
Mopidy-MPD: 3.3.0 from /usr/lib/python3/dist-packages
Mopidy-Spotify: 4.1.1 from /usr/lib/python3/dist-packages
GStreamer: 1.18.4.0 from /usr/lib/python3/dist-packages/gi
  Detailed information:
    Python wrapper: python-gi 3.38.0
    Relevant elements:
      Found:
        uridecodebin
        souphttpsrc
        appsrc
        alsasink
        osssink
        oss4sink
        pulsesink
        id3demux
        id3v2mux
        lamemp3enc
        mpegaudioparse
        mpg123audiodec
        vorbisdec
        vorbisenc
        vorbisparse
        oggdemux
        oggmux
        oggparse
        flacdec
        flacparse
        shout2send
      Not found:
        flump3dec
        mad

My ncmpcpp and mpd file are probably irrelevant, they contain :
~/.ncmpcpp/config

mpd_music_dir     = ~/music
mpd_host	  = "127.0.0.1"
mpd_port	  = 6600
[...]

~/.mpd/mpd.conf

bind_to_address "127.0.0.1"
#bind_to_address "~/.mpd/socket"
music_directory "~/music"
[...]

When I run ncmpcpp with another user, the interface is there (even though there’s no songs)

Librespot seems to have been built correctly. I’m at my wits end, I can’t notice anything out of place.
Eternal gratitude to the person that can help me understand. I cross my fingers
If you need any other information let me know.

Thanks and have a good day/evening/night

Remove Mopidy-spotify installed from apt. Install Mopidy-spotify from latest GitHub source.

Can you be more specific in how to install it from latest github source?
On the readme it tells me to use pip to install.
When I install using pip it says that the version of mopidy-spotify to be installed is 4.1.1,
which is the latest github release.
But with pip it says that it uses the pyspotify dependency which uses the deprecated lib ?

On the wiki it says that if I use Debian I should use apt. I guess it just hasn’t been updated because the project is in need of maintainer ?
I tried cloning the repo and doing python3 ./setup.py, it asks for arguments.

Is there another way to install using the github source ?

Please tell me if I can help with funding.
Thank you for your help I wish you well

Oh I understood when typing ./setup.py help
I have what is necessary to build and install just under my nose.
I am sorry for the previous reply.

Hmm so I’ve built and installed mopidy-spotify from github source using
python3 ./setup.py build and python3 ./setup.py install
after doing this I re entered mopidy deps and found pyspotify still under mopidy-spotify.
after launching mopidy I have same problem.

I feel really dumb. I’ll wait for help. Sorry for my inaptitude

setup.py is long dead as a way to install. You’ll find a few ways if you google but try python -m pip install --upgrade git+https://github.com/mopidy/mopidy-spotify

edit: removed sudo, you don’t seem to be using the system service.

This file isn’t relevant, why does it exist? MPD clients talk to Mopidy using Mopidy-MPD. You can have Mopidy-MPD installed alongside mpd but these two different programs would need to be configured to use different ports. You would then also need to ensure your MPD client is connecting to the correct port. Most people would uninstall mpd in this situation and remove the confusing redundant config file.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.