From ccfb3fb04254c4c1e401bb5fde89262b07d51e4c Mon Sep 17 00:00:00 2001 From: BoulderBadgeDad Date: Sat, 30 May 2026 11:48:56 -0700 Subject: [PATCH] Now Playing: real crossfade for library tracks (experimental) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Crossfade was a no-op toggle. Real crossfade needs two tracks audible at once, but /stream/audio only serves the ONE current track (single global stream_state). So: - web_server: extracted the range-serving body of /stream/audio into _serve_audio_file_with_range, and added /stream/library-audio?path= which serves an arbitrary LIBRARY file through it. Security: the path is resolved via _resolve_library_file_path (same validator /api/library/play uses) so it only serves files inside the configured transfer/download/media-library dirs — not arbitrary disk. - frontend: a second hidden