add date metadata
This commit is contained in:
@@ -19,6 +19,7 @@ type Metadata struct {
|
||||
TotalTracks int
|
||||
Comment *string
|
||||
ISRC *string
|
||||
Date *string
|
||||
}
|
||||
|
||||
func ReadAudioTags(filePath string) (*Metadata, error) {
|
||||
|
||||
@@ -79,12 +79,22 @@ func readVorbisMetadata(file string) (*Metadata, error) {
|
||||
isrc = &isrcs[0]
|
||||
}
|
||||
|
||||
dates, err := cmt.Get("DATE")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
var date *string
|
||||
if len(dates) > 0 {
|
||||
date = &dates[0]
|
||||
}
|
||||
|
||||
metadata := &Metadata{
|
||||
Title: title,
|
||||
Artist: artists,
|
||||
Album: album,
|
||||
AlbumArtist: albumArtists,
|
||||
Comment: comment,
|
||||
Date: date,
|
||||
ISRC: isrc,
|
||||
}
|
||||
|
||||
@@ -153,6 +163,10 @@ func createVorbisMetaBlock(m Metadata) flacvorbis.MetaDataBlockVorbisComment {
|
||||
vorbisMeta.Add("ISRC", *m.ISRC)
|
||||
}
|
||||
|
||||
if m.Date != nil {
|
||||
vorbisMeta.Add("DATE", *m.Date)
|
||||
}
|
||||
|
||||
for _, artist := range m.Artist {
|
||||
vorbisMeta.Add(flacvorbis.FIELD_ARTIST, artist)
|
||||
slog.Debug("Added ARTIST filed to metadata", "artist", artist)
|
||||
|
||||
Reference in New Issue
Block a user