Improvement

-by default, search in $HOME/Music for playlist. and local audio files
-search track/artist/album in library
This commit is contained in:
2021-02-03 09:41:44 +01:00
parent 5ed5700f05
commit 5c683133d6

View File

@@ -300,7 +300,7 @@ soco() {
echo -e " 1) France In${bgd}f${reset}o " " | " "11) volume ${bgd}11${reset} " " | " "26) ➔ ${bgd}I${reset}nfos " echo -e " 1) France In${bgd}f${reset}o " " | " "11) volume ${bgd}11${reset} " " | " "26) ➔ ${bgd}I${reset}nfos "
echo -e " 2) France Int${bgd}e${reset}r " " | " "12) ${bgd}m${reset}ute ON " " | " "27) ➔ ${bgd}L${reset}ists " echo -e " 2) France Int${bgd}e${reset}r " " | " "12) ${bgd}m${reset}ute ON " " | " "27) ➔ ${bgd}L${reset}ists "
echo -e " 3) ${bgd}K${reset}6 FM " " | " "13) volume ${bgd}13${reset} " " | " "28) Pl${bgd}a${reset}y radio from TuneIn " echo -e " 3) ${bgd}K${reset}6 FM " " | " "13) volume ${bgd}13${reset} " " | " "28) Pl${bgd}a${reset}y radio from TuneIn "
echo -e " 4) Rires et ${bgd}C${reset}hansons " " | " "14) m${bgd}u${reset}te OFF " " | " "29) Pla${bgd}y${reset} local .m3u playlist " echo -e " 4) Rires et ${bgd}C${reset}hansons " " | " "14) m${bgd}u${reset}te OFF " " | " "29) Play local .m3u playlist "
echo -e " 5) ${bgd}R${reset}TL " " | " "15) volume ${bgd}15${reset} " " | " "30) Play locals audio files " echo -e " 5) ${bgd}R${reset}TL " " | " "15) volume ${bgd}15${reset} " " | " "30) Play locals audio files "
echo -e " 6) ${bgd}D${reset}eezer Flow " " | " "16) volume ${bgd}+${reset} " " | " "31) Play al${bgd}b${reset}ums " echo -e " 6) ${bgd}D${reset}eezer Flow " " | " "16) volume ${bgd}+${reset} " " | " "31) Play al${bgd}b${reset}ums "
echo -e " 7) ${italic}Edit/add fav here${reset} " " | " "17) volume ${bgd}-${reset} " " | " "32) Play artists (${bgd}x${reset}) " echo -e " 7) ${italic}Edit/add fav here${reset} " " | " "17) volume ${bgd}-${reset} " " | " "32) Play artists (${bgd}x${reset}) "
@@ -530,7 +530,7 @@ play_local_m3u() {
#plt=$(ls *.m3u*) #plt=$(ls *.m3u*)
#cd /Users/bruno/Music/Shaka\ Ponk\ -\ Apelogies/CD1 #cd /Users/bruno/Music/Shaka\ Ponk\ -\ Apelogies/CD1
read -e -p "Enter .m3u file path: " fp read -e -i "$HOME/" -p "Enter .m3u file path: " fp
m3u=$(echo "$fp" | awk -F"/" '{print $NF}') m3u=$(echo "$fp" | awk -F"/" '{print $NF}')
if [ -a "$fp" ]; then if [ -a "$fp" ]; then
@@ -582,7 +582,7 @@ play_local_file() {
echo -e "\n${bold} $playing ${reset}\n" echo -e "\n${bold} $playing ${reset}\n"
echo -e "${underline}Enter audio file/folder path${reset} (.mp3|.mp4|.m4a|.aac|.flac|.ogg|.wma|.wav) " echo -e "${underline}Enter audio file/folder path${reset} (.mp3|.mp4|.m4a|.aac|.flac|.ogg|.wma|.wav) "
read -e -p ": " fa read -e -i "$HOME/" -p ": " fa
#fa=/Users/bruno/Music/Alanis\ Morissette\ -\ Such\ Pretty\ Forks\ In\ The\ Road #fa=/Users/bruno/Music/Alanis\ Morissette\ -\ Such\ Pretty\ Forks\ In\ The\ Road
@@ -639,57 +639,84 @@ play_local_file() {
# Search artist in library -> add album to queue -> play it # Search artist in library -> add album to queue -> play it
play_artist_from_library() { play_artist_from_library() {
read -p "Search artist in library: " search read -e -p "Search artist in library: " search
a=$(sonos $loc $device search_artists "$search") if [ -n "$search" ]; then
echo -e "$a\n" a=$(sonos $loc $device search_artists "$search")
read -p "Album to play: " number if [ -n "$a" ]; then
echo -e "$a\n"
read -e -p "Album to play (n°): " number
b=$(echo "$a" | grep -m 1 "$number: ") if [[ "$number" =~ ^[+-]?[0-9]+$ ]]; then
album=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g') b=$(echo "$a" | grep -m 1 "$number: ")
artist=$(echo "$b" | awk -F ": " '{print $4}') album=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g')
artist=$(echo "$b" | awk -F ": " '{print $4}')
playing="Playing $album from $artist..." playing="Playing $album from $artist..."
echo -e "\n${bold} $playing ${reset}" echo -e "\n${bold} $playing ${reset}"
sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null
else echo "Please, enter the number of the album to play !"
fi
else echo -e "Artist ${underline}$search${reset} was not found !"
fi
else echo "Empty query !"
fi
} }
# Search album in library -> add to queue -> play it # Search album in library -> add to queue -> play it
play_album_from_library() { play_album_from_library() {
read -p "Search album in library: " search read -e -p "Search album in library: " search
a=$(sonos $loc $device search_albums "$search")
echo -e "$a\n"
read -p "Album to play: " number
b=$(echo "$a" | grep -m 1 "$number: ")
album=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g')
artist=$(echo "$b" | awk -F ": " '{print $4}')
playing="Playing $album from $artist..."
echo -e "\n${bold} $playing ${reset}"
sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null if [ -n "$search" ]; then
a=$(sonos $loc $device search_albums "$search")
if [ -n "$a" ]; then
echo -e "$a\n"
read -e -p "Album to play (n°): " number
if [[ "$number" =~ ^[+-]?[0-9]+$ ]]; then
b=$(echo "$a" | grep -m 1 "$number: ")
album=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g')
artist=$(echo "$b" | awk -F ": " '{print $4}')
playing="Playing $album from $artist..."
echo -e "\n${bold} $playing ${reset}"
sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null
else echo "Please, enter the number of the album to play !"
fi
else echo -e "Album ${underline}$search${reset} was not found !"
fi
else echo "Empty query !"
fi
} }
# Search track in library -> add to queue -> play it # Search track in library -> add to queue -> play it
play_track_from_library() { play_track_from_library() {
read -p "Search track in library: " search read -e -p "Search track in library: " search
a=$(sonos $loc $device search_tracks "$search") if [ -n "$search" ]; then
echo -e "$a\n" a=$(sonos $loc $device search_tracks "$search")
read -p "Track to play: " number if [ -n "$a" ]; then
echo -e "$a\n"
read -e -p "Track to play: " number
b=$(echo "$a" | grep -m 1 "$number: ") if [[ "$number" =~ ^[+-]?[0-9]+$ ]]; then
# 1: Artist: Alain Souchon | Album: Collection (1984-2001) | Title: J'veux du cuir b=$(echo "$a" | grep -m 1 "$number: ")
track=$(echo "$b" | awk -F ": " '{print $5}') # 1: Artist: Alain Souchon | Album: Collection (1984-2001) | Title: J'veux du cuir
artist=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g') track=$(echo "$b" | awk -F ": " '{print $5}')
artist=$(echo "$b" | awk -F ": " '{print $3}' | awk -F "|" '{print $1}' | sed 's/ *$//g')
playing="Playing $track from $artist..." playing="Playing $track from $artist..."
echo -e "\n${bold} $playing ${reset}" echo -e "\n${bold} $playing ${reset}"
sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null sonos $loc $device queue_search_result_number $number first : $device play_from_queue > /dev/null
else echo "Please, enter the number of the track to play !"
fi
else echo -e "Track ${underline}$search${reset} was not found !"
fi
else echo "Empty query !"
fi
} }
# Play URI # Play URI