add album-folder-format
This commit is contained in:
parent
caa71615d1
commit
4a6ec9ef43
@ -11,3 +11,6 @@ force-api: false
|
|||||||
get-m3u8-from-device: false
|
get-m3u8-from-device: false
|
||||||
alac-max: 192000 #192000 96000 48000 44100
|
alac-max: 192000 #192000 96000 48000 44100
|
||||||
atmos-max: 2768 #2768 2448
|
atmos-max: 2768 #2768 2448
|
||||||
|
#{AlbumId} {AlbumName} {ArtistName} {ReleaseDate} {UPC} {Copyright}
|
||||||
|
#example: {ReleaseDate} - {ArtistName} - {AlbumName}({AlbumId})
|
||||||
|
album-folder-format: "{AlbumName}"
|
||||||
|
10
main.go
10
main.go
@ -45,6 +45,7 @@ type Config struct {
|
|||||||
CoverFormat string `yaml:"cover-format"`
|
CoverFormat string `yaml:"cover-format"`
|
||||||
AlacSaveFolder string `yaml:"alac-save-folder"`
|
AlacSaveFolder string `yaml:"alac-save-folder"`
|
||||||
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
||||||
|
AlbumFolderFormat string `yaml:"album-folder-format"`
|
||||||
ForceApi bool `yaml:"force-api"`
|
ForceApi bool `yaml:"force-api"`
|
||||||
Check string `yaml:"check"`
|
Check string `yaml:"check"`
|
||||||
GetM3u8FromDevice bool `yaml:"get-m3u8-from-device"`
|
GetM3u8FromDevice bool `yaml:"get-m3u8-from-device"`
|
||||||
@ -1163,7 +1164,14 @@ func rip(albumId string, token string, storefront string, userToken string) erro
|
|||||||
}
|
}
|
||||||
singerFoldername = strings.TrimSpace(singerFoldername)
|
singerFoldername = strings.TrimSpace(singerFoldername)
|
||||||
singerFolder := filepath.Join(config.AlacSaveFolder, forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
singerFolder := filepath.Join(config.AlacSaveFolder, forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
||||||
albumFolder := fmt.Sprintf("%s", meta.Data[0].Attributes.Name)
|
albumFolder := strings.NewReplacer(
|
||||||
|
"{ReleaseDate}", meta.Data[0].Attributes.ReleaseDate,
|
||||||
|
"{ArtistName}", meta.Data[0].Attributes.ArtistName,
|
||||||
|
"{AlbumName}", meta.Data[0].Attributes.Name,
|
||||||
|
"{UPC}", meta.Data[0].Attributes.Upc,
|
||||||
|
"{Copyright}", meta.Data[0].Attributes.Copyright,
|
||||||
|
"{AlbumId}", albumId,
|
||||||
|
).Replace(config.AlbumFolderFormat)
|
||||||
if strings.HasSuffix(albumFolder, ".") {
|
if strings.HasSuffix(albumFolder, ".") {
|
||||||
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,7 @@ type Config struct {
|
|||||||
CoverFormat string `yaml:"cover-format"`
|
CoverFormat string `yaml:"cover-format"`
|
||||||
AlacSaveFolder string `yaml:"alac-save-folder"`
|
AlacSaveFolder string `yaml:"alac-save-folder"`
|
||||||
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
||||||
|
AlbumFolderFormat string `yaml:"album-folder-format"`
|
||||||
AtmosMax int `yaml:"atmos-max"`
|
AtmosMax int `yaml:"atmos-max"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1121,7 +1122,15 @@ func rip(albumId string, token string, storefront string, userToken string) erro
|
|||||||
}
|
}
|
||||||
singerFoldername = strings.TrimSpace(singerFoldername)
|
singerFoldername = strings.TrimSpace(singerFoldername)
|
||||||
singerFolder := filepath.Join(config.AtmosSaveFolder, forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
singerFolder := filepath.Join(config.AtmosSaveFolder, forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
||||||
albumFolder := fmt.Sprintf("%s [Atmos]", meta.Data[0].Attributes.Name)
|
albumFolder := strings.NewReplacer(
|
||||||
|
"{ReleaseDate}", meta.Data[0].Attributes.ReleaseDate,
|
||||||
|
"{ArtistName}", meta.Data[0].Attributes.ArtistName,
|
||||||
|
"{AlbumName}", meta.Data[0].Attributes.Name,
|
||||||
|
"{UPC}", meta.Data[0].Attributes.Upc,
|
||||||
|
"{Copyright}", meta.Data[0].Attributes.Copyright,
|
||||||
|
"{AlbumId}", albumId,
|
||||||
|
).Replace(config.AlbumFolderFormat)
|
||||||
|
albumFolder = fmt.Sprintf("%s [Atmos]", albumFolder)
|
||||||
if strings.HasSuffix(albumFolder, ".") {
|
if strings.HasSuffix(albumFolder, ".") {
|
||||||
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
||||||
}
|
}
|
||||||
|
@ -45,6 +45,7 @@ type Config struct {
|
|||||||
CoverFormat string `yaml:"cover-format"`
|
CoverFormat string `yaml:"cover-format"`
|
||||||
AlacSaveFolder string `yaml:"alac-save-folder"`
|
AlacSaveFolder string `yaml:"alac-save-folder"`
|
||||||
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
AtmosSaveFolder string `yaml:"atmos-save-folder"`
|
||||||
|
AlbumFolderFormat string `yaml:"album-folder-format"`
|
||||||
AlacMax int `yaml:"alac-max"`
|
AlacMax int `yaml:"alac-max"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1124,7 +1125,14 @@ func rip(albumId string, token string, storefront string, userToken string) erro
|
|||||||
}
|
}
|
||||||
singerFoldername = strings.TrimSpace(singerFoldername)
|
singerFoldername = strings.TrimSpace(singerFoldername)
|
||||||
singerFolder := filepath.Join("AM-DL downloads", forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
singerFolder := filepath.Join("AM-DL downloads", forbiddenNames.ReplaceAllString(singerFoldername, "_"))
|
||||||
albumFolder := fmt.Sprintf("%s", meta.Data[0].Attributes.Name)
|
albumFolder := strings.NewReplacer(
|
||||||
|
"{ReleaseDate}", meta.Data[0].Attributes.ReleaseDate,
|
||||||
|
"{ArtistName}", meta.Data[0].Attributes.ArtistName,
|
||||||
|
"{AlbumName}", meta.Data[0].Attributes.Name,
|
||||||
|
"{UPC}", meta.Data[0].Attributes.Upc,
|
||||||
|
"{Copyright}", meta.Data[0].Attributes.Copyright,
|
||||||
|
"{AlbumId}", albumId,
|
||||||
|
).Replace(config.AlbumFolderFormat)
|
||||||
if strings.HasSuffix(albumFolder, ".") {
|
if strings.HasSuffix(albumFolder, ".") {
|
||||||
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
albumFolder = strings.ReplaceAll(albumFolder, ".", "")
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user