30 lines
683 B
Bash
Executable file
30 lines
683 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
notify="notify-send -i mpv -a mpv"
|
|
url="$1"
|
|
|
|
# NOTE: You need to configure mpv to
|
|
# enable ipc server on this path (see my mpv config for an example)
|
|
MPVSOCKET="/tmp/mpvsocket"
|
|
|
|
# See if MPV is already running
|
|
if [ -z "$(pidof mpv)" ]; then
|
|
# mpv is not running
|
|
|
|
# pause other players
|
|
playerctl pause
|
|
|
|
# start mpv
|
|
/usr/bin/mpv --no-terminal "$url" & disown
|
|
|
|
# Wait for mpv to be up before adding anything else to playlist
|
|
while [ -z "$(pidof mpv)" ]; do
|
|
sleep 1
|
|
done
|
|
$notify "Playing $url"
|
|
|
|
else
|
|
# mpv is running, so add stuff to playlist
|
|
$notify "Adding $url"
|
|
echo "{\"command\": [\"loadfile\", \"$url\", \"append\"]}" | socat - /tmp/mpvsocket
|
|
fi
|