diff options
| author | Physick <96335032+DegustatorPonos@users.noreply.github.com> | 2025-12-13 12:32:15 +0500 |
|---|---|---|
| committer | Physick <96335032+DegustatorPonos@users.noreply.github.com> | 2025-12-13 12:32:15 +0500 |
| commit | ae11ed555cb350ea4c11fc1625f4a56229969ddd (patch) | |
| tree | 1d02b84131b713a2eed9a332ffac51997b0ec285 /Audio/List.go | |
| parent | 4b8ef84059e772ef7636c451356680ec5b0983c4 (diff) | |
Tracks meta
Diffstat (limited to 'Audio/List.go')
| -rw-r--r-- | Audio/List.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Audio/List.go b/Audio/List.go new file mode 100644 index 0000000..46bdfff --- /dev/null +++ b/Audio/List.go @@ -0,0 +1,31 @@ +package audio + +import ( + "log" + "os" + + settings "physick.ru/culture_exam/Settings" +) + +type TracksList struct { + Tracks []TrackMeta +} + +func GenerateTrackList(verbouse bool) (TracksList, error) { + var files, dirErr = os.ReadDir(settings.Current.SongsLocation) + if dirErr != nil { + return TracksList{}, dirErr + } + var outp = TracksList { + Tracks: make([]TrackMeta, 0, len(files)), + } + for _, v := range files { + var meta, err = GenerateMetadata(v.Name()) + if err != nil { + log.Printf("Failed to parse the file info: %s", err.Error()) + continue + } + outp.Tracks = append(outp.Tracks, meta) + } + return outp, nil +} |
