asteroid/parenscript
Glenn Thompson fd1bc504a5 cl-streamer integration fixes: CORS, reconnect, stream config
Server-side fixes (stream-server.lisp):
- Add CORS preflight (OPTIONS) request handler for browser crossorigin audio
- AAC clients start from current buffer position instead of burst to avoid
  ADTS frame alignment issues that caused browser decode errors
- Upgrade client stream error logging from debug to warn for diagnostics
- Add send-cors-preflight function with proper Access-Control headers

Frontend fixes (stream-player.lisp):
- Rewrite reconnect-stream to reuse existing audio element instead of
  creating a new one, preserving browser user gesture context and preventing
  NotAllowedError on autoplay after reconnect
- Unify stream config: both curated and shuffle channels use same mount
  points (asteroid.mp3/asteroid.aac) since cl-streamer has a single pipeline
- Remove non-existent /asteroid-shuffle.mp3 mount reference that caused
  404s and broken pipe cascade when switching to shuffle channel
- Map :low quality to same MP3 mount (asteroid-low.mp3 not yet available)

Note: Channel selector preserved for future multi-stream support.
Recently-played API works correctly; frontend rendering to investigate separately.
2026-03-03 23:17:01 +03:00
..
admin.lisp Add sort dropdown for admin geo stats (minutes vs listeners) 2026-01-18 08:48:34 -05:00
auth-ui.lisp fix: Normalize USERS table timestamps before dm:save to prevent PostgreSQL type errors 2025-12-29 09:39:51 -05:00
frameset-utils.lisp Fix geo stats peak tracking and migrate inline JS to ParenScript 2025-12-14 10:20:32 -05:00
front-page.lisp feat: add media session API on now-playing update 2026-03-02 17:51:26 -05:00
parenscript-utils.lisp fix: add parenscript utils file 2026-03-02 17:51:26 -05:00
player.lisp feat: add media session API on now-playing update 2026-03-02 17:51:26 -05:00
profile.lisp feat: Custom user playlists with submission and admin review 2025-12-21 18:45:35 +03:00
recently-played.lisp Add channel/quality selector separation with dynamic playlist phase names 2025-12-14 19:08:41 -05:00
spectrum-analyzer.lisp Add mini spectrum analyzer to player frame with theme/style sync 2026-01-11 13:25:55 -05:00
stream-player.lisp cl-streamer integration fixes: CORS, reconnect, stream config 2026-03-03 23:17:01 +03:00
users.lisp Fix last-login timezone handling 2025-12-19 18:00:30 -05:00