Step 7.5b2: Spotify Connect zeroconf and login work (PCM counted only)
- Zeroconf on our httpd (GET/POST /spotify_info, form body URL-decoded) and _spotify-connect._tcp via our mDNS (VERSION, CPath, Stack TXT). - Session task: waits for the app's login blob, connects with the user's client ID/secret and the configured bitrate (96/160/320 -> OGG_VORBIS_*), SpircHandler, events logged; cspot exceptions caught. Starts when source.mode is spotify/auto and credentials are set. - bell::bellGlobalLogger was NULL: every CSPOT_LOG crashed the board right after addUser (Load access fault in Session.cpp:67 / LoginBlob.cpp:58). cspot/bell logs now go to esp_log (UART + syslog); signed CDN URL tokens are cut from the log. - esp_audio_codec's own Vorbis decoder clashed with bell's Tremor symbols: CONFIG_AUDIO_DECODER_VORBIS_SUPPORT / SIMPLE_DEC_OGG off. - status.spotify_state from the session (waiting / connecting / connected / login failed / error / disabled / no client credentials). - Verified from a Mac: device appears, "connected as <user>", access token fetched with the user's client credentials, track info, audio key, CDN URL (the step broken upstream), PCM decoded. Without backpressure a track decodes in ~26 s (b3 feeds the ring). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
# Project component (not part of the reusable aes67_* core).
|
||||
idf_component_register(SRCS "spotify.cpp"
|
||||
INCLUDE_DIRS "include"
|
||||
PRIV_REQUIRES espressif__mdns mbedtls json pthread lwip esp_timer)
|
||||
PRIV_REQUIRES aes67_web espressif__mdns mbedtls json pthread lwip esp_timer esp_http_server)
|
||||
|
||||
# bell: only what cspot needs (Tremor Vorbis inside; no codec wrapper, sinks, MQTT, web server).
|
||||
set(BELL_DISABLE_CODECS ON CACHE BOOL "" FORCE)
|
||||
|
||||
Reference in New Issue
Block a user