func tag(t track.Track, trackPath string, artwork []byte) error { tag, err := id3v2.Open(trackPath) if err != nil { return err } defer tag.Close() tag.SetArtist(t.Artist()) tag.SetTitle(t.Title()) tag.SetYear(t.Year()) if artwork != nil { pic := id3v2.PictureFrame{ Encoding: id3v2.ENUTF8, MimeType: "image/jpeg", PictureType: id3v2.PTFrontCover, Picture: artwork, } tag.AddAttachedPicture(pic) } return tag.Save() }