Michael Smith 9db8dfdd48 Implement streaming decoder, seeking, persistence, file switching, album art
Replace fire-and-forget decode_audio() with a streaming Decoder that uses
libswresample to convert planar float to interleaved stereo, fixing the
sped-up audio bug and eliminating multi-GB memory usage for long files.

Add 10-second rewind/fast-forward, stop (pause in place), position
persistence per file via positions.txt, directory scanning with file
switching, embedded album art display, and a progress bar. Handles both
old and new FFmpeg channel layout APIs via version preprocessor check.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 20:41:40 +01:00
2026-01-16 17:58:00 +01:00
2026-01-28 14:21:19 +01:00
2026-01-28 13:37:34 +01:00
Description
Own version of Ryan C. Gordon's sdlamp (https://www.youtube.com/watch?v=6hIaEHzlmFc)
743 KiB
Languages
C 83%
Python 10.8%
Shell 4.7%
Makefile 1.2%
Dockerfile 0.3%