-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathrun_on_next
51 lines (38 loc) · 2.41 KB
/
run_on_next
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/bin/sh
# vol=35
# some things here are redundant but that's only to show various ways of doing them
# wait for mpv to load before continuing so the commands aren't sent to a black hole
# while true; do [ -n "$( echo '{ "command": ["get_property", "pid"] }' | socat - /tmp/mpvsocketytmp )" ] && break; sleep .1; done >/dev/null 2>&1
# the lines below comments mentioning toggling are toggled by the ytmpsuite script; don't change the comments
# (feel free to change the commands or move the comment and command to a different place
# but be sure to leave a space after the # and put the cmds directly below the comments)
# or else the toggle system won't work
# LINE BELOW IS TOGGLED BY AN EXTERNAL SCRIPT
# mpv_socket_commands s volume $vol st /tmp/mpvsocketytmp && exit
# ytmp -vl $vol && exit
# LINE BELOW IS TOGGLED BY AN EXTERNAL SCRIPT ALT
# mpv_socket_commands s volume $vol st /tmp/mpvsocketytmp && mpv_socket_commands s loop true && exit
# ytmp -vl $vol && ytmp -l && exit
# LINE BELOW IS TOGGLED BY AN EXTERNAL SCRIPT 1
# mpv_socket_commands s volume $vol st /tmp/mpvsocketytmp
# LINE BELOW IS TOGGLED BY AN EXTERNAL SCRIPT 2
# mpv_socket_commands s loop true st /tmp/mpvsocketytmp
# LINE BELOW IS TOGGLED BY AN EXTERNAL SCRIPT MASTER
# if [ "$( ytmpsuite gt1 | tail -1 )" = 'ON' ] || [ "$( ytmpsuite gt2 | tail -1 )" = 'ON' ]; then exit; fi
# if /tmp/mpvsocketytmp is not the socket in /tmp/active_mpvsocket (i.e. the active socket for the mpv_socket_commands script) check if it's the only socket open; if it is, make it the active socket.
# [ "`cat /tmp/active_mpvsocket`" = '/tmp/mpvsocketytmp' ] || ( mpv_socket_commands k; [ "`grep -c . /tmp/current_mpvsockets`" = '1' ] && echo '/tmp/mpvsocketytmp' > /tmp/active_mpvsocket )
ifytmpactive () {
if [ "`cat /tmp/active_mpvsocket`" = '/tmp/mpvsocketytmp' ]; then
return
else
# if /tmp/mpvsocketytmp is not the active socket, lower the volume
mpv_socket_commands s volume $vol st /tmp/mpvsocketytmp
# ytmp -vl $vol
fi
}
# if -d -r -n options are not running, loop; otherwise don't.
# ( ! pgrep -f 'ytmp (-d|-r|-n)+' ) && echo '{ "command": ["set_property", "loop", true ] }' | socat - /tmp/mpvsocketytmp || echo '{ "command": ["set_property", "loop", false ] }' | socat - /tmp/mpvsocketytmp
# mpv_socket_commands s volume $vol st /tmp/mpvsocketytmp && exit || ifytmpactive
# ifytmpactive
# echo '{ "command": ["set_property", "loop", true ] }' | socat - /tmp/mpvsocketytmp
# ytmp -l