From 494de64f0a76f568ab326f6dd8132c9bbd63e0aa Mon Sep 17 00:00:00 2001 From: Connor Johnstone Date: Tue, 24 Mar 2026 15:58:14 -0400 Subject: [PATCH] Added the import/cleanup functionality --- src/indexer.rs | 2 +- src/metadata.rs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/indexer.rs b/src/indexer.rs index a06436b..9fd9faa 100644 --- a/src/indexer.rs +++ b/src/indexer.rs @@ -106,7 +106,7 @@ async fn process_file( bitrate: Set(meta.bitrate), file_size: Set(scanned.file_size), fingerprint: NotSet, - musicbrainz_id: NotSet, + musicbrainz_id: Set(meta.musicbrainz_recording_id), artist_id: Set(artist_id), album_id: Set(album_id), file_mtime: Set(Some(scanned.mtime)), diff --git a/src/metadata.rs b/src/metadata.rs index 922626c..6feb438 100644 --- a/src/metadata.rs +++ b/src/metadata.rs @@ -22,6 +22,7 @@ pub struct MusicMetadata { pub duration: Option, pub codec: Option, pub bitrate: Option, + pub musicbrainz_recording_id: Option, } /// Map lofty FileType to a human-readable codec string. @@ -74,6 +75,10 @@ pub fn extract_metadata(path: &Path) -> IndexResult { meta.album_artist = tag .get_string(&lofty::tag::ItemKey::AlbumArtist) .map(|s| s.to_string()); + + meta.musicbrainz_recording_id = tag + .get_string(&lofty::tag::ItemKey::MusicBrainzRecordingId) + .map(|s| s.to_string()); } Ok(meta)