Update src/tidler
Ups
This commit is contained in:
parent
066d88dac6
commit
c1301a6e9c
1 changed files with 57 additions and 1 deletions
58
src/tidler
58
src/tidler
|
@ -1,5 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
|
||||
downloadTrack() {
|
||||
if [ "$#" -ge 1 ]; then
|
||||
echo "Downloading track with ID: $1"
|
||||
|
@ -20,7 +21,6 @@ downloadTrack() {
|
|||
|
||||
# Metadata
|
||||
metaflac --set-tag="NAME=$track_name" --set-tag="ARTIST=$artist_name" --set-tag="ALBUM=$album_name" $filename
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -57,6 +57,59 @@ searchTrack() {
|
|||
done
|
||||
}
|
||||
|
||||
|
||||
downloadAlbum() {
|
||||
id="$1"
|
||||
album_tracks_ids=$(curl -s "https://tidal.401658.xyz/album/?id=$id" | jq -r '.[1].items[] | .item.id')
|
||||
|
||||
tracks_ids_list=()
|
||||
while IFS= read -r list; do
|
||||
tracks_ids_list+=("$list")
|
||||
done <<< "$album_tracks_ids"
|
||||
|
||||
for i in "${tracks_ids_list[@]}"
|
||||
do
|
||||
downloadTrack "$i"
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
|
||||
searchAlbum() {
|
||||
if [ "$#" -ge 1 ]; then
|
||||
album_name="$1"
|
||||
else
|
||||
echo "Enter album name:"
|
||||
read -r album_name
|
||||
fi
|
||||
|
||||
album_name=$(echo "$album_name" | sed 's/ /%20/g')
|
||||
albums=$(curl -s "https://tidal.401658.xyz/search/?al=$album_name" | jq -r '.albums.items[] | "\(.id): \(.title)"')
|
||||
|
||||
albums_list=()
|
||||
while IFS= read -r list; do
|
||||
albums_list+=("$list")
|
||||
done <<< "$albums"
|
||||
|
||||
if [ "${#albums_list[@]}" -eq 1 ]; then
|
||||
echo "No albums found :("
|
||||
exit 1
|
||||
fi
|
||||
|
||||
PS3="Please select an album: "
|
||||
select t in "${albums_list[@]}"; do
|
||||
if [ -n "$t" ]; then
|
||||
album_id=$(echo "$t" | awk -F ': ' '{print $1}')
|
||||
echo "You selected: $t"
|
||||
downloadAlbum "$album_id"
|
||||
break
|
||||
else
|
||||
echo "Invalid selection. Please try again."
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
echo "Welcome to TiDLer -> Tidal music downloader" && echo ""
|
||||
|
||||
if [ "$1" = "search" ]; then
|
||||
|
@ -73,6 +126,8 @@ elif [ "$1" = "download" ]; then
|
|||
else
|
||||
downloadTrack
|
||||
fi
|
||||
elif [ "$1" = "album" ]; then
|
||||
searchAlbum
|
||||
else
|
||||
echo "Choose 1 for download track or 2 for search track and download"
|
||||
read option
|
||||
|
@ -83,3 +138,4 @@ else
|
|||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue