added isrc meta tag

This commit is contained in:
2026-04-16 16:08:53 +02:00
parent 797bf434e6
commit 1ad9a3196d
2 changed files with 15 additions and 0 deletions

View File

@@ -18,6 +18,7 @@ type Metadata struct {
Track int
TotalTracks int
Comment *string
ISRC *string
}
func ReadAudioTags(filePath string) (*Metadata, error) {

View File

@@ -70,12 +70,22 @@ func readVorbisMetadata(file string) (*Metadata, error) {
comment = &comments[0]
}
isrcs, err := cmt.Get("ISRC")
if err != nil {
return nil, err
}
var isrc *string
if len(isrcs) > 0 {
isrc = &isrcs[0]
}
metadata := &Metadata{
Title: title,
Artist: artists,
Album: album,
AlbumArtist: albumArtists,
Comment: comment,
ISRC: isrc,
}
return metadata, nil
@@ -139,6 +149,10 @@ func createVorbisMetaBlock(m Metadata) flacvorbis.MetaDataBlockVorbisComment {
vorbisMeta.Add("TOTALTRACKS", strconv.Itoa(m.TotalTracks))
}
if m.ISRC != nil {
vorbisMeta.Add("ISRC", *m.ISRC)
}
for _, artist := range m.Artist {
vorbisMeta.Add(flacvorbis.FIELD_ARTIST, artist)
slog.Debug("Added ARTIST filed to metadata", "artist", artist)