Conversation
nos1609
marked this pull request as draft
September 9, 2026 11:29
nos1609
force-pushed
the
fastpotify-0.8-arm64
branch
from
September 9, 2026 11:34
387b5db to
16b0f90
Compare
nos1609
force-pushed
the
fastpotify-0.8-arm64
branch
from
September 9, 2026 18:13
16b0f90 to
cad676b
Compare
nos1609
marked this pull request as ready for review
September 9, 2026 18:27
librespot reports Windows ARM/ARM64 as Windows CE ARM in the Access Point handshake. Report these clients as the Win32 x86_64 desktop platform and CPU family instead, while preserving the existing mappings for other operating systems. Add the corresponding entry to the Unreleased changelog. References librespot-org#1737 and crmne/spotifast#123.
nos1609
force-pushed
the
fastpotify-0.8-arm64
branch
from
September 9, 2026 18:32
cad676b to
cd6f019
Compare
Author
|
Superseded by #1761. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
On Windows ARM/ARM64, librespot currently reports
PLATFORM_WINDOWS_CE_ARMinClientHelloandCPU_ARMduring Access Point authentication. The protocol schema defines Windows CE ARM (0x7) and Win32 x86_64 (0x27) as distinct platform identifiers, so a modern Windows on ARM client is effectively identified as Windows CE.This change reports Windows ARM/ARM64 as
PLATFORM_WIN32_X86_64andCPU_X86_64, while preserving the existing mappings for non-Windows ARM and unknown Windows architectures.Protocol context
BuildInfo.platformis a required field inClientHello. The relevant identifiers are defined in:protocol/proto/keyexchange.protoThe Windows platform is selected in
client_hello()and sent in the handshake viaset_platform(platform):core/src/connection/handshake.rsSpotify's public developer documentation does not document these low-level Access Point platform identifiers. Its Commercial Hardware documentation states that the eSDK binary handles negotiation with Spotify backend services internally, and Spotify's eSDK changelog refers to the Access Point as proprietary.
Therefore this PR does not rely on an official Spotify deprecation claim for
PLATFORM_WINDOWS_CE_ARM; it fixes the mismatch in librespot's current Windows ARM mapping.Rationale
Windows on ARM should not identify itself as Windows CE. Reporting the desktop Win32 x86_64 platform and CPU identifiers avoids the Access Point authentication rejection observed on Windows ARM/ARM64 while leaving other platform mappings unchanged.
References crmne/spotifast#123 and #1737.