Covers architecture for replacing MediaSessionCompat with Media3
MediaLibraryService, RadioPlayerAdapter facade, browse tree for
Android Auto, and notification improvements.
Made-with: Cursor
Captures the design for replacing BounceMarqueeText with a
constant-speed TickerText composable (33 dp/s, continuous leftward
scroll with gap looping).
Made-with: Cursor
Covers project scaffolding, Room data layer, PLS/M3U import/export,
audio engine stages (IcyParser, Mp3FrameSync, StreamConnection),
engine integration, foreground service with Stay Connected,
Compose UI (station list, now playing, settings), album art
resolution with MusicBrainz fallback chain, and final integration.
Made-with: Cursor
Design doc covers: custom raw audio pipeline (OkHttp → IcyParser →
Mp3FrameSync → MediaCodec → AudioTrack), foreground service with
aggressive reconnection, Room DB with future-proofed schema, Compose UI,
and ICY metadata with album art fallback chain.
Made-with: Cursor