From 0f70ca6aaaacc338ec0ecbff398a5fb7e0b31ef7 Mon Sep 17 00:00:00 2001 From: kdeng00 Date: Tue, 23 Jul 2024 19:58:20 -0400 Subject: [PATCH] #93: Added more code to save flac files --- Controllers/Managers/SongManager.cs | 22 ++++++++++++++++++++++ Controllers/Utilities/MetadataRetriever.cs | 10 +++++++--- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/Controllers/Managers/SongManager.cs b/Controllers/Managers/SongManager.cs index 28a5677..b743d8c 100644 --- a/Controllers/Managers/SongManager.cs +++ b/Controllers/Managers/SongManager.cs @@ -250,6 +250,28 @@ public class SongManager : BaseManager // Save song to its final directory // Save cover art to the database // Save song to the database + + var coverMgr = new CoverArtManager(_config); + var coverArt = coverMgr.SaveCoverArt(coverArtData, song); + + + var meta = new Utilities.MetadataRetriever(); + meta.UpdateMetadata(song, song); + + DirectoryManager dirMgr = new DirectoryManager(_config, song); + dirMgr.CreateDirectory(); + + var tempPath = song.SongPath(); + + song.SongDirectory = dirMgr.SongDirectory; + + var filePath = song.SongPath(); + _logger.Info($"Absolute song path: {filePath}"); + + this.MoveSongToFinalDestination(tempPath, filePath); + + SaveSongToDatabase(song, coverArt); + return song; } diff --git a/Controllers/Utilities/MetadataRetriever.cs b/Controllers/Utilities/MetadataRetriever.cs index 2f899bf..1d03e7e 100644 --- a/Controllers/Utilities/MetadataRetriever.cs +++ b/Controllers/Utilities/MetadataRetriever.cs @@ -183,9 +183,13 @@ public class MetadataRetriever { Console.WriteLine("Fetching image"); var tag = TagLib.File.Create(song.SongPath()); - byte[] imgBytes = tag.Tag.Pictures[0].Data.Data; - - return imgBytes; + + if (tag.Tag.Pictures.Count() == 0) + { + return []; + } + + return tag.Tag.Pictures[0].Data.Data; } catch (Exception ex) {