From b55788e9fe7b58c367ad56b75b634837e136c076 Mon Sep 17 00:00:00 2001 From: zhaarey <157944548+zhaarey@users.noreply.github.com> Date: Thu, 6 Jun 2024 21:44:25 +0800 Subject: [PATCH] fix artistid --- main.go | 18 ++++++++++-------- main_select.go | 19 ++++++++++--------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/main.go b/main.go index 12c8624..23b3ec9 100644 --- a/main.go +++ b/main.go @@ -818,15 +818,17 @@ func writeM4a(w *mp4.Writer, info *SongInfo, meta *AutoGenerated, data []byte, t } } - if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID) > 0 { - atID, err := strconv.ParseUint(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID, 10, 32) - if err != nil { - return err - } + if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data) > 0 { + if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID) > 0 { + atID, err := strconv.ParseUint(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID, 10, 32) + if err != nil { + return err + } - err = addMeta(mp4.BoxType{'a', 't', 'I', 'D'}, uint32(atID)) - if err != nil { - return err + err = addMeta(mp4.BoxType{'a', 't', 'I', 'D'}, uint32(atID)) + if err != nil { + return err + } } } trkn := make([]byte, 8) diff --git a/main_select.go b/main_select.go index 8584ad8..82b8321 100644 --- a/main_select.go +++ b/main_select.go @@ -812,16 +812,17 @@ func writeM4a(w *mp4.Writer, info *SongInfo, meta *AutoGenerated, data []byte, t } } } + if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data) > 0 { + if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID) > 0 { + atID, err := strconv.ParseUint(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID, 10, 32) + if err != nil { + return err + } - if len(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID) > 0 { - atID, err := strconv.ParseUint(meta.Data[0].Relationships.Tracks.Data[index].Relationships.Artists.Data[0].ID, 10, 32) - if err != nil { - return err - } - - err = addMeta(mp4.BoxType{'a', 't', 'I', 'D'}, uint32(atID)) - if err != nil { - return err + err = addMeta(mp4.BoxType{'a', 't', 'I', 'D'}, uint32(atID)) + if err != nil { + return err + } } } trkn := make([]byte, 8)