radieo/ingest/radieo
Pierre-Olivier Mercier fbdb2d6bb3
All checks were successful
continuous-integration/drone/push Build is passing
ingest: tag bandcamp downloads and correct label-account artists
yt-dlp's flat extraction mis-attributes bandcamp uploads: on a label
account the artist becomes the label, and many files ship untagged. After
a download, guess (artist, title, album) from the richer download metadata
and the "Artist - Title" filename shape, confirm against MusicBrainz, and
write ID3 tags into the file. Existing tags are respected; MusicBrainz is
primary, filename parsing only a fallback.

The file's tags are the single source of truth: the provider reads them
back on the next pick, so the corrected identity (incl. MBID) is in place
before the scheduler keys and anti-repeat-checks the track, and cache
reuse inherits it too.

Fetchers now return (path, Track) so the corrected metadata flows back.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 11:01:24 +08:00
..
fetchers ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00
providers ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00
__init__.py Milestone 2: ingestion daemon driving the stream 2026-07-02 17:57:38 +08:00
__main__.py ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00
api.py stream: fallback only replays already-aired tracks 2026-07-03 10:15:25 +08:00
canonicalizer.py ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00
config.py ingest: retry transient HTTP connection errors 2026-07-02 22:47:13 +08:00
db.py stream: fallback only replays already-aired tracks 2026-07-03 10:15:25 +08:00
models.py Milestone 5: MusicBrainz MBID canonicalizer 2026-07-02 18:46:30 +08:00
queue.py ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00
scheduler.py Milestone 5: MusicBrainz MBID canonicalizer 2026-07-02 18:46:30 +08:00
subsonic.py ingest: retry transient HTTP connection errors 2026-07-02 22:47:13 +08:00
tagging.py ingest: tag bandcamp downloads and correct label-account artists 2026-07-03 11:01:24 +08:00