Documentation ¶
Index ¶
- func ParseCsvToTracks(csv [][]string) (Tracks, ArtistAlbumMap)
- func ParseMp3Glob(mp3Path string) (error, Tracks, ArtistAlbumMap)
- type AlbumMap
- type AlbumSongsMap
- type ArtistAlbumMap
- func (trackMap ArtistAlbumMap) Add(track *Track)
- func (tMap ArtistAlbumMap) Analysis() string
- func (m1 ArtistAlbumMap) Merge(m2 ArtistAlbumMap) ArtistAlbumMap
- func (tMap ArtistAlbumMap) Save(src, dest string) error
- func (tMap ArtistAlbumMap) SaveChunk(src, dest string) error
- func (tMap ArtistAlbumMap) ToAlbumSongsMap() AlbumSongsMap
- type CsvMapRow
- type CsvRows
- type Job
- type JobResult
- type OrigFilenameMap
- type SaveJob
- type SaveJobResult
- type SaveOpts
- type Songs
- type Track
- type TrackRegExpOpts
- type TrackSearch
- type Tracker
- type Tracks
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseCsvToTracks ¶
func ParseCsvToTracks(csv [][]string) (Tracks, ArtistAlbumMap)
note Empty String for Album or Artist is Unknown
func ParseMp3Glob ¶
func ParseMp3Glob(mp3Path string) (error, Tracks, ArtistAlbumMap)
Types ¶
type AlbumSongsMap ¶
type ArtistAlbumMap ¶
"Tool": { "Fear Innoculumn": [ "Tempest.mp3" ] }
func (ArtistAlbumMap) Add ¶
func (trackMap ArtistAlbumMap) Add(track *Track)
warn about empty Artists??
func (ArtistAlbumMap) Analysis ¶
func (tMap ArtistAlbumMap) Analysis() string
func (ArtistAlbumMap) Merge ¶
func (m1 ArtistAlbumMap) Merge(m2 ArtistAlbumMap) ArtistAlbumMap
Appears to be broken, need to find a reliable merge library, generics would be amazing for deepMerge
func (ArtistAlbumMap) Save ¶
func (tMap ArtistAlbumMap) Save(src, dest string) error
Save All Tracks via ArtistAlbumMap structure using goroutines and works Async Save All
func (ArtistAlbumMap) SaveChunk ¶
func (tMap ArtistAlbumMap) SaveChunk(src, dest string) error
func (ArtistAlbumMap) ToAlbumSongsMap ¶
func (tMap ArtistAlbumMap) ToAlbumSongsMap() AlbumSongsMap
type JobResult ¶
type JobResult struct { Err error Tracks ArtistAlbumMap }
type OrigFilenameMap ¶
type SaveJob ¶
type SaveJob struct {
MapChunk ArtistAlbumMap
}
type SaveJobResult ¶
func (SaveJobResult) Error ¶
func (j SaveJobResult) Error() error
type Track ¶
type Track struct { SupportArtists []string OrigFilename string DurationSec string // Begin id3 Metadata Format id3.Format FileType id3.FileType Title string Album string Artist string AlbumArtist string Composer string Year int Genre string Picture *id3.Picture Lyrics string Comment string Raw map[string]interface{} }
func Id3MetadataToTrack ¶
func Id3V2TagToTrack ¶
func ParseId3ToTrack ¶
Main entry to try out different Id3 libs
Also tried:
"github.com/bogem/id3v2/v2" kinda works "github.com/xonyagar/id3" v23 failures not much info but bad frames
func (Track) GetArtistKey ¶
type TrackRegExpOpts ¶
type TrackSearch ¶
type TrackSearch struct { Basename string Mp3FileName string MetaReg *TrackRegExpOpts OrigFilename string }
func InitTrackSearch ¶
func InitTrackSearch(origFilename, filePath string) *TrackSearch
Click to show internal directories.
Click to hide internal directories.