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
|
#!/bin/bash
|
||||||
|
|
||||||
|
|
||||||
downloadTrack() {
|
downloadTrack() {
|
||||||
if [ "$#" -ge 1 ]; then
|
if [ "$#" -ge 1 ]; then
|
||||||
echo "Downloading track with ID: $1"
|
echo "Downloading track with ID: $1"
|
||||||
|
@ -20,7 +21,6 @@ downloadTrack() {
|
||||||
|
|
||||||
# Metadata
|
# Metadata
|
||||||
metaflac --set-tag="NAME=$track_name" --set-tag="ARTIST=$artist_name" --set-tag="ALBUM=$album_name" $filename
|
metaflac --set-tag="NAME=$track_name" --set-tag="ARTIST=$artist_name" --set-tag="ALBUM=$album_name" $filename
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,6 +57,59 @@ searchTrack() {
|
||||||
done
|
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 ""
|
echo "Welcome to TiDLer -> Tidal music downloader" && echo ""
|
||||||
|
|
||||||
if [ "$1" = "search" ]; then
|
if [ "$1" = "search" ]; then
|
||||||
|
@ -73,6 +126,8 @@ elif [ "$1" = "download" ]; then
|
||||||
else
|
else
|
||||||
downloadTrack
|
downloadTrack
|
||||||
fi
|
fi
|
||||||
|
elif [ "$1" = "album" ]; then
|
||||||
|
searchAlbum
|
||||||
else
|
else
|
||||||
echo "Choose 1 for download track or 2 for search track and download"
|
echo "Choose 1 for download track or 2 for search track and download"
|
||||||
read option
|
read option
|
||||||
|
@ -83,3 +138,4 @@ else
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue