Hi everyone,
I am experiencing a reproducible issue where newly created Spotify Premium accounts cannot play any audio via the Volumio Spotify plugin (neither via the Volumio WebUI nor via Spotify Connect), whereas older Spotify accounts within the exact same Spotify Family subscription work without any issues on the same Volumio device.
Environment
- Volumio OS: Bookworm (armhf)
- Spotify Plugin (
spop): v4.5.0 (Test channel)
- Daemon:
go-librespot 0.9.1
- Account Type: Spotify Premium (Family Plan member, Country:
DE, all address verifications completed)
Problem Description
- OAuth login and device pairing (
[spotify.com/pair](https://spotify.com/pair)) succeed without errors.
- Spotify API correctly identifies the account as
"product":"premium".
- Browsing playlists and loading tracks into the queue works as expected.
- As soon as playback is triggered (either via Volumio UI or Spotify Connect),
go-librespot requests the AES key for the track, which Spotify’s AP refuses with code 1. go-librespot then loops through 51 consecutive attempts before aborting with an Internal Server Error.
Root Cause Analysis
Looking at the debug/trace logs right after Login5 authentication, the Spotify Access Point sends PacketTypeLicenseVersion (len: 2) and an empty PacketTypeLegacyWelcome (len: 0), which go-librespot skips:
Plaintextlevel=debug msg="skipping packet PacketTypeSecretBlock, len: 336" level=debug msg="skipping packet PacketTypeLicenseVersion, len: 2" level=debug msg="skipping packet PacketTypeUnknown1f, len: 17" level=debug msg="skipping packet PacketTypeLegacyWelcome, len: 0"
It appears that Spotify is strictly enforcing the newer DRM/key exchange mechanism (PlayPlay / Widevine / LicenseVersion 2) on newly registered accounts and no longer allows falling back to legacy raw AES key retrieval (mercury / audio key) for these accounts. Older accounts on the same Family plan still seem to be whitelisted on Spotify’s backend for legacy AES key delivery and work fine on the exact same setup.
Sanitized Log Excerpt
1. Plugin Initialization & Authentication:
Plaintexttime="2026-10-15T12:03:33+02:00" level=info msg="running go-librespot 0.9.1" time="2026-10-15T12:03:33+02:00" level=info msg="api server listening on 127.0.0.1:9879" time="2026-10-15T12:03:33+02:00" level=debug msg="fetched new accesspoints: [ap-gew4.spotify.com:4070 ap-gew4.spotify.com:443 ...]" SPOTIFY: User informations: {"account_id":"<REDACTED>","country":"DE","display_name":"<REDACTED>","email":"<REDACTED>","explicit_content":{"filter_enabled":false,"filter_locked":false},"id":"31<REDACTED>","product":"premium","type":"user","uri":"spotify:user:31<REDACTED>"} info: Spotify Successfully logged in ... time="2026-10-15T12:03:53+02:00" level=debug msg="connected to ap-gew4.spotify.com:4070" time="2026-10-15T12:03:53+02:00" level=debug msg="completed keyexchange" time="2026-10-15T12:03:53+02:00" level=debug msg="completed challenge" time="2026-10-15T12:03:53+02:00" level=info msg="authenticated AP" username="31************************la" time="2026-10-15T12:03:54+02:00" level=info msg="authenticated Login5" username="31************************la" time="2026-10-15T12:03:54+02:00" level=debug msg="stored credentials" username="31************************la" time="2026-10-15T12:03:54+02:00" level=debug msg="connected to gew4-dealer.spotify.com:443" time="2026-10-15T12:03:54+02:00" level=debug msg="skipping packet PacketTypeSecretBlock, len: 336" time="2026-10-15T12:03:54+02:00" level=debug msg="skipping packet PacketTypeLicenseVersion, len: 2" time="2026-10-15T12:03:54+02:00" level=debug msg="skipping packet PacketTypeUnknown1f, len: 17" time="2026-10-15T12:03:54+02:00" level=debug msg="skipping packet PacketTypeLegacyWelcome, len: 0"
2. Playback Failure (AES Key Refused):
Plaintextinfo: Sending Spotify command with payload to local API: /player/play time="2026-10-15T12:04:44+02:00" level=debug msg="resolved context of track" uri="spotify:track:3TWpz0iK17gFlxWlIs3MIQ" time="2026-10-15T12:04:44+02:00" level=debug msg="loading track (paused: false, position: 0ms)" uri="spotify:track:3TWpz0iK17gFlxWlIs3MIQ" time="2026-10-15T12:04:44+02:00" level=debug msg="selected format OGG_VORBIS_320 (7bd3502ba7a5f37fa2db90e1e290c1192349473a)" uri="spotify:track:3TWpz0iK17gFlxWlIs3MIQ" time="2026-10-15T12:04:44+02:00" level=debug msg="requested aes key for file 7bd3502ba7a5f37fa2db90e1e290c1192349473a, gid: 3TWpz0iK17gFlxWlIs3MIQ" time="2026-10-15T12:04:44+02:00" level=warning msg="current track unplayable, skipping forward: spotify:track:3TWpz0iK17gFlxWlIs3MIQ" error="failed creating stream for spotify:track:3TWpz0iK17gFlxWlIs3MIQ: failed retrieving audio key: failed retrieving aes key with code 1" ... time="2026-10-15T12:04:50+02:00" level=warning msg="skipping track: Spotify refused the audio key (code 1) for this playback context: spotify:track:3TWpz0iK17gFlxWlIs3MIQ" error="failed creating stream for spotify:track:3TWpz0iK17gFlxWlIs3MIQ: failed retrieving audio key: failed retrieving aes key with code 1" time="2026-10-15T12:04:50+02:00" level=warning msg="stopping after 51 consecutive unplayable tracks" error="failed creating stream for spotify:track:3TWpz0iK17gFlxWlIs3MIQ: failed retrieving audio key: failed retrieving aes key with code 1" time="2026-10-15T12:04:50+02:00" level=error msg="failed handling request play" error="failed loading context: failed loading current track (load context): failed advancing past unplayable track: failed creating stream for spotify:track:3TWpz0iK17gFlxWlIs3MIQ: failed retrieving audio key: failed retrieving aes key with code 1" error: Failed to send command to Spotify local API: /player/play: Error: Internal Server Error
Steps Already Tested (Without Success)
- Upgraded
spop to v4.5.0 (go-librespot 0.9.1) via test mode.
- Performed “Sign out everywhere” on the Spotify account page and re-authenticated via OAuth and pairing code.
- Tested lower bitrate settings (160 kbps / Normal).
- Verified that an older account on the exact same Family plan plays immediately on this device.
Is there any known workaround or upcoming update in go-librespot (e.g., alternative stream endpoint resolution or token handling) to address Spotify blocking raw AES keys for newly created accounts?
Thanks in advance!
Matthias