Prepare for verison 0.3.0 -> New config options, some errors handling, etc
This commit is contained in:
parent
0192452af7
commit
2b06f4799e
2 changed files with 48 additions and 7 deletions
42
src/tidler
42
src/tidler
|
@ -2,6 +2,36 @@
|
||||||
|
|
||||||
. tidler.conf # Load ENVs from config file
|
. tidler.conf # Load ENVs from config file
|
||||||
|
|
||||||
|
|
||||||
|
if [ -n "$PROXY_URL" ]; then
|
||||||
|
proxy_url="$PROXY_URL"
|
||||||
|
else
|
||||||
|
proxy_url="https://hifi-04ed2aaea09a.herokuapp.com" # Default value
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$QUALITY" ]; then
|
||||||
|
if [ "$QUALITY" == "LOSSLESS" -o "$QUALITY" == "HI_RES" ]; then
|
||||||
|
quality="$QUALITY"
|
||||||
|
else
|
||||||
|
echo "Bad QUALITY option. Only allowed are \"LOSSLESS\", \"HI_RES\"."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
quality="LOSSLESS" # Default value
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$COVER_RESOLUTION" ]; then
|
||||||
|
if [ "$COVER_RESOLUTION" == "1280" -o "$COVER_RESOLUTION" == "640" -o "$COVER_RESOLUTION" == "80" ]; then
|
||||||
|
cover_resolution="$COVER_RESOLUTION"
|
||||||
|
else
|
||||||
|
echo "Bad COVER_RESOLUTION option. Only allowed are \"1280\", \"640\", \"80\"."
|
||||||
|
echo "Using default value..."
|
||||||
|
|
||||||
|
cover_resolution="1280" # Default value
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
cover_resolution="1280" # Default value
|
||||||
|
fi
|
||||||
|
|
||||||
downloadTrack() {
|
downloadTrack() {
|
||||||
if [ "$#" -ge 1 ]; then
|
if [ "$#" -ge 1 ]; then
|
||||||
echo "Downloading track with ID: $1"
|
echo "Downloading track with ID: $1"
|
||||||
|
@ -17,12 +47,12 @@ downloadTrack() {
|
||||||
album_dir=""
|
album_dir=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
json_data=$(curl -s "https://tidal.401658.xyz/track/?id=$id&quality=LOSSLESS")
|
json_data=$(curl -s "$proxy_url/track/?id=$id&quality=$quality")
|
||||||
track_name=$(echo "$json_data" | jq -r '.[0].title')
|
track_name=$(echo "$json_data" | jq -r '.[0].title')
|
||||||
artist_name=$(echo "$json_data" | jq -r '.[0].artist.name')
|
artist_name=$(echo "$json_data" | jq -r '.[0].artist.name')
|
||||||
album_name=$(echo "$json_data" | jq -r '.[0].album.title')
|
album_name=$(echo "$json_data" | jq -r '.[0].album.title')
|
||||||
url=$(echo "$json_data" | jq -r '.[-1].OriginalTrackUrl')
|
url=$(echo "$json_data" | jq -r '.[-1].OriginalTrackUrl')
|
||||||
cover_data=$(curl -s "https://tidal.401658.xyz/cover/?id=$id")
|
cover_data=$(curl -s "$proxy_url/cover/?id=$id")
|
||||||
cover_url=$(echo "$cover_data" | jq -r '.[]["1280"]')
|
cover_url=$(echo "$cover_data" | jq -r '.[]["1280"]')
|
||||||
|
|
||||||
track_number=$(echo "$json_data" | jq -r '.[0].trackNumber')
|
track_number=$(echo "$json_data" | jq -r '.[0].trackNumber')
|
||||||
|
@ -61,7 +91,7 @@ searchTrack() {
|
||||||
read -r track_name
|
read -r track_name
|
||||||
fi
|
fi
|
||||||
track_name=$(echo "$track_name" | sed 's/ /%20/g')
|
track_name=$(echo "$track_name" | sed 's/ /%20/g')
|
||||||
tracks=$(curl -s "https://tidal.401658.xyz/search/?s=$track_name" | jq -r '.items[] | "\(.id) - \(.title) by \(.artist.name)"')
|
tracks=$(curl -s "$proxy_url/search/?s=$track_name" | jq -r '.items[] | "\(.id) - \(.title) by \(.artist.name)"')
|
||||||
|
|
||||||
tracks_list=()
|
tracks_list=()
|
||||||
while IFS= read -r list; do
|
while IFS= read -r list; do
|
||||||
|
@ -94,12 +124,12 @@ downloadAlbum() {
|
||||||
else
|
else
|
||||||
base_dir="$(pwd)"
|
base_dir="$(pwd)"
|
||||||
fi
|
fi
|
||||||
json_data=$(curl -s "https://tidal.401658.xyz/album/?id=$id&quality=LOSSLESS")
|
json_data=$(curl -s "$proxy_url/album/?id=$id&quality=$quality")
|
||||||
album_name=$(echo "$json_data" | jq -r '.[0].title')
|
album_name=$(echo "$json_data" | jq -r '.[0].title')
|
||||||
artist_name=$(echo "$json_data" | jq -r '.[0].artist.name')
|
artist_name=$(echo "$json_data" | jq -r '.[0].artist.name')
|
||||||
album_title="$artist_name - $album_name"
|
album_title="$artist_name - $album_name"
|
||||||
album_dir="$album_title"
|
album_dir="$album_title"
|
||||||
album_tracks_ids=$(curl -s "https://tidal.401658.xyz/album/?id=$id" | jq -r '.[1].items[] | .item.id')
|
album_tracks_ids=$(curl -s "$proxy_url/album/?id=$id&quality=$quality" | jq -r '.[1].items[] | .item.id')
|
||||||
tracks_ids_list=()
|
tracks_ids_list=()
|
||||||
while IFS= read -r list; do
|
while IFS= read -r list; do
|
||||||
tracks_ids_list+=("$list")
|
tracks_ids_list+=("$list")
|
||||||
|
@ -122,7 +152,7 @@ searchAlbum() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
album_name=$(echo "$album_name" | sed 's/ /%20/g')
|
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=$(curl -s "$proxy_url/search/?al=$album_name" | jq -r '.albums.items[] | "\(.id): \(.title)"')
|
||||||
|
|
||||||
albums_list=()
|
albums_list=()
|
||||||
while IFS= read -r list; do
|
while IFS= read -r list; do
|
||||||
|
|
|
@ -1 +1,12 @@
|
||||||
# DOWNLOADS_DIR="path"
|
# Default download directory
|
||||||
|
DOWNLOADS_DIR="~/Music"
|
||||||
|
|
||||||
|
# hifi-tui API server URL -> https://github.com/sachinsenal0x64/Hifi-Tui
|
||||||
|
# You can use "https://tidal.401658.xyz" with cache enabled
|
||||||
|
PROXY_URL="https://hifi-04ed2aaea09a.herokuapp.com"
|
||||||
|
|
||||||
|
# Set audio quality -> possible values are "LOSSLESS" and "HI_RES"
|
||||||
|
QUALITY="LOSSLESS"
|
||||||
|
|
||||||
|
# Set cover art resolution -> "1280" = 1280x1280, "640" = 640x640, "80" = 80x80
|
||||||
|
COVER_RESOLUTION="1280"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue