add select.go with m3u8 input

This commit is contained in:
zhaarey
2024-04-29 15:37:54 +08:00
parent bd40e9f0a7
commit c25feacb50
2 changed files with 17 additions and 0 deletions

View File

@@ -1147,6 +1147,11 @@ func rip(albumId string, token string, storefront string, userToken string) erro
if err != nil {
fmt.Println(err)
}
manually := false
if strings.Contains(input, "#") {
input = strings.ReplaceAll(input, "#", "")
manually = true
}
input = strings.TrimSpace(input)
inputs := strings.Fields(input)
for _, str := range inputs {
@@ -1178,6 +1183,7 @@ func rip(albumId string, token string, storefront string, userToken string) erro
continue
}
filename := fmt.Sprintf("%02d. %s.m4a", trackNum, forbiddenNames.ReplaceAllString(track.Attributes.Name, "_"))
fmt.Println(filename)
lrcFilename := fmt.Sprintf("%02d. %s.lrc", trackNum, forbiddenNames.ReplaceAllString(track.Attributes.Name, "_"))
trackPath := filepath.Join(sanAlbumFolder, filename)
var lrc string = ""
@@ -1210,6 +1216,16 @@ func rip(albumId string, token string, storefront string, userToken string) erro
fmt.Println("Track already exists locally.")
continue
}
if manually {
fmt.Print("m3u8: ")
reader := bufio.NewReader(os.Stdin)
m3u8_url, err := reader.ReadString('\n')
if err != nil {
fmt.Println(err)
}
m3u8_url = strings.TrimSpace(m3u8_url)
manifest.Attributes.ExtendedAssetUrls.EnhancedHls=m3u8_url
}
trackUrl, keys, err := extractMedia(manifest.Attributes.ExtendedAssetUrls.EnhancedHls)
if err != nil {
fmt.Println("Failed to extract info from manifest.\n", err)