diff --git a/src/NzbDrone.Core/MediaFiles/AudioTag.cs b/src/NzbDrone.Core/MediaFiles/AudioTag.cs index 500a94bed..ba883da8f 100644 --- a/src/NzbDrone.Core/MediaFiles/AudioTag.cs +++ b/src/NzbDrone.Core/MediaFiles/AudioTag.cs @@ -381,6 +381,7 @@ public void Write(string path) var flactag = (TagLib.Ogg.XiphComment)file.GetTag(TagLib.TagTypes.Xiph); flactag.SetField("DATE", Date.HasValue ? Date.Value.ToString("yyyy-MM-dd") : null); + flactag.SetField("YEAR", Date.HasValue ? Date.Value.Year.ToString() : null); flactag.SetField("ORIGINALDATE", OriginalReleaseDate.HasValue ? OriginalReleaseDate.Value.ToString("yyyy-MM-dd") : null); flactag.SetField("ORIGINALYEAR", OriginalReleaseDate.HasValue ? OriginalReleaseDate.Value.Year.ToString() : null); flactag.SetField("TRACKTOTAL", TrackCount); @@ -400,7 +401,8 @@ public void Write(string path) { var apetag = (TagLib.Ape.Tag)file.GetTag(TagTypes.Ape); - apetag.SetValue("Year", Date.HasValue ? Date.Value.ToString("yyyy-MM-dd") : null); + apetag.SetValue("Date", Date.HasValue ? Date.Value.ToString("yyyy-MM-dd") : null); + apetag.SetValue("Year", Date.HasValue ? Date.Value.Year.ToString() : null); apetag.SetValue("Original Date", OriginalReleaseDate.HasValue ? OriginalReleaseDate.Value.ToString("yyyy-MM-dd") : null); apetag.SetValue("Original Year", OriginalReleaseDate.HasValue ? OriginalReleaseDate.Value.Year.ToString() : null); apetag.SetValue("Media", Media); diff --git a/src/NzbDrone.Core/MediaFiles/AudioTagService.cs b/src/NzbDrone.Core/MediaFiles/AudioTagService.cs index e02d09e8b..a01213542 100644 --- a/src/NzbDrone.Core/MediaFiles/AudioTagService.cs +++ b/src/NzbDrone.Core/MediaFiles/AudioTagService.cs @@ -143,11 +143,11 @@ public AudioTag GetTrackMetadata(TrackFile trackfile) Album = album.Title, Disc = (uint)track.MediumNumber, DiscCount = (uint)release.Media.Count, - + // We may have omitted media so index in the list isn't the same as medium number Media = release.Media.SingleOrDefault(x => x.Number == track.MediumNumber)?.Format, - Date = release.ReleaseDate, - Year = (uint)(album.ReleaseDate?.Year ?? 0), + Date = release.ReleaseDate ?? album.ReleaseDate, + Year = (uint)(album.ReleaseDate?.Year ?? release.ReleaseDate?.Year ?? 0), OriginalReleaseDate = album.ReleaseDate, OriginalYear = (uint)(album.ReleaseDate?.Year ?? 0), Publisher = release.Label.FirstOrDefault(), @@ -164,7 +164,7 @@ public AudioTag GetTrackMetadata(TrackFile trackfile) MusicBrainzTrackId = track.ForeignRecordingId, MusicBrainzReleaseTrackId = track.ForeignTrackId, MusicBrainzAlbumComment = album.Disambiguation, - }; + }; } catch (Exception ex) {