diff options
| author | srdusr <trevorgray@srdusr.com> | 2023-11-16 17:56:43 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2023-11-16 17:56:43 +0200 |
| commit | 1c9d903a8fea3fe91881a3180fe47a9b48c83c9d (patch) | |
| tree | 05b2ddce84be6220be2535402eb852a8e0ac45a1 /.config/eww/scripts | |
| parent | 15890bf8961bd4863af5179074be9bb18cc55fff (diff) | |
| download | dotfiles-1c9d903a8fea3fe91881a3180fe47a9b48c83c9d.tar.gz dotfiles-1c9d903a8fea3fe91881a3180fe47a9b48c83c9d.zip | |
Add music_info script
Diffstat (limited to '.config/eww/scripts')
| -rwxr-xr-x | .config/eww/scripts/music_info | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/.config/eww/scripts/music_info b/.config/eww/scripts/music_info new file mode 100755 index 0000000..efa3a24 --- /dev/null +++ b/.config/eww/scripts/music_info @@ -0,0 +1,104 @@ +#!/bin/bash +# scripts by adi1090x + +## Get data +STATUS="$(mpc status)" +COVER="/tmp/.music_cover.png" +MUSIC_DIR="$HOME/music/playlist-1" + +## Get status +get_status() { + if [[ $STATUS == *"[playing]"* ]]; then + echo "" + else + echo "奈" + fi +} + +## Get song +get_song() { + song=$(mpc -f %title% current) + if [[ -z "$song" ]]; then + echo "Offline" + else + echo "$song" + fi +} + +## Get artist +get_artist() { + artist=$(mpc -f %artist% current) + if [[ -z "$artist" ]]; then + echo "" + else + echo "$artist" + fi +} + +## Get time +get_time() { + time=$(mpc status | grep "%)" | awk '{print $4}' | tr -d '(%)') + if [[ -z "$time" ]]; then + echo "0" + else + echo "$time" + fi +} +get_ctime() { + ctime=$(mpc status | grep "#" | awk '{print $3}' | sed 's|/.*||g') + if [[ -z "$ctime" ]]; then + echo "0:00" + else + echo "$ctime" + fi +} +get_ttime() { + ttime=$(mpc -f %time% current) + if [[ -z "$ttime" ]]; then + echo "0:00" + else + echo "$ttime" + fi +} + +## Get cover +get_cover() { + ffmpeg -i "${MUSIC_DIR}/$(mpc current -f %file%)" "$COVER" -y &>/dev/null + STATUS=$? + + # Check if the file has a embbeded album art + if [ "$STATUS" -eq 0 ]; then + echo "$COVER" + else + echo "images/music.png" + fi +} + +## Execute accordingly +if [[ "$1" == "--song" ]]; then + get_song +elif [[ "$1" == "--artist" ]]; then + get_artist +elif [[ "$1" == "--status" ]]; then + get_status +elif [[ "$1" == "--time" ]]; then + get_time +elif [[ "$1" == "--ctime" ]]; then + get_ctime +elif [[ "$1" == "--ttime" ]]; then + get_ttime +elif [[ "$1" == "--cover" ]]; then + get_cover +elif [[ "$1" == "--toggle" ]]; then + mpc -q toggle +elif [[ "$1" == "--next" ]]; then + { + mpc -q next + get_cover + } +elif [[ "$1" == "--prev" ]]; then + { + mpc -q prev + get_cover + } +fi |
