From eb929e366021f46271e58e0d690b8bb60d5527a6 Mon Sep 17 00:00:00 2001 From: itouakirai Date: Wed, 15 Jan 2025 20:22:39 +0800 Subject: [PATCH] fix writeTag panic --- main.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 2a5c271..2be97ef 100644 --- a/main.go +++ b/main.go @@ -807,6 +807,7 @@ func rip(albumId string, token string, storefront string, userToken string) erro } tags := []string{ "tool=", + fmt.Sprintf("artist=%s", meta.Data[0].Attributes.ArtistName), fmt.Sprintf("lyrics=%s", lrc), } if Config.EmbedCover { @@ -835,12 +836,16 @@ func rip(albumId string, token string, storefront string, userToken string) erro } } err = writeMP4Tags(trackPath, meta, trackNum, trackTotal) - + if err != nil { + fmt.Println("\u26A0 Failed to write tags in media:", err) + counter.Unavailable++ + continue + } counter.Success++ okDict[albumId] = append(okDict[albumId], trackNum) } } - return err + return nil } func writeMP4Tags(trackPath string, meta *structs.AutoGenerated, trackNum, trackTotal int) error { @@ -849,7 +854,7 @@ func writeMP4Tags(trackPath string, meta *structs.AutoGenerated, trackNum, track t := &mp4tag.MP4Tags{ Title: meta.Data[0].Relationships.Tracks.Data[index].Attributes.Name, TitleSort: meta.Data[0].Relationships.Tracks.Data[index].Attributes.Name, - AlbumArtist: meta.Data[0].Attributes.ArtistName, + //AlbumArtist: meta.Data[0].Attributes.ArtistName, AlbumArtistSort: meta.Data[0].Attributes.ArtistName, Artist: meta.Data[0].Relationships.Tracks.Data[index].Attributes.ArtistName, ArtistSort: meta.Data[0].Relationships.Tracks.Data[index].Attributes.ArtistName, @@ -911,14 +916,14 @@ func writeMP4Tags(trackPath string, meta *structs.AutoGenerated, trackNum, track mp4, err := mp4tag.Open(trackPath) if err != nil { - panic(err) + return err } defer mp4.Close() err = mp4.Write(t, []string{}) if err != nil { - panic(err) + return err } - return err + return nil } func main() {