Skip to content

Commit d9efcbd

Browse files
committed
feat: AcoustID audio verification, MusicBrainz enrichment UI, v1.5
Add optional post-download audio fingerprint verification using AcoustID. Downloads are verified against expected track/artist using fuzzy string matching on AcoustID results. Mismatched files are quarantined and automatically added to the wishlist for retry. - AcoustID verification with title/artist fuzzy matching (not MBID comparison) - Quarantine system with JSON metadata sidecars for failed verifications - fpcalc binary auto-download for Windows, macOS (universal), and Linux - MusicBrainz enrichment worker with live status UI and track badges - Settings page AcoustID section with real-fingerprint connection test - Source reuse for album downloads to keep tracks from same Soulseek user - Enhanced search queries for better track matching - Bug fixes: wishlist tracking, album splitting, regex & handling, log rotation
1 parent 2d97d5c commit d9efcbd

File tree

11 files changed

+1251
-30
lines changed

11 files changed

+1251
-30
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,6 @@ __pycache__/
66
**/__pycache__/
77
*.pyc
88
*.pyo
9+
10+
# Auto-downloaded binaries
11+
bin/

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ RUN apt-get update && apt-get install -y \
1515
curl \
1616
gosu \
1717
ffmpeg \
18+
libchromaprint-tools \
1819
&& rm -rf /var/lib/apt/lists/*
1920

2021
# Create non-root user for security

config/settings.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,10 @@ def _get_default_config(self) -> Dict[str, Any]:
195195
"listenbrainz": {
196196
"token": ""
197197
},
198+
"acoustid": {
199+
"api_key": "",
200+
"enabled": False # Disabled by default - requires API key and fpcalc
201+
},
198202
"logging": {
199203
"path": "logs/app.log",
200204
"level": "INFO"

0 commit comments

Comments
 (0)