summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xrec.sh44
1 files changed, 44 insertions, 0 deletions
diff --git a/rec.sh b/rec.sh
new file mode 100755
index 0000000..fefd829
--- /dev/null
+++ b/rec.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+XDG_CACHE_HOME=${XDG_CACHE_HOME:-$HOME/.cache}
+
+function status() {
+ pstatus=$(cat $XDG_CACHE_HOME/rec_paused)
+ if [ "$pstatus" == "true" ]; then
+ echo ""
+ exit
+ fi
+ if pgrep -f gpu-screen-recorder >/dev/null; then
+ echo ""
+ else
+ echo ""
+ fi
+}
+
+function recorder() {
+ if pgrep -f gpu-screen-recorder>/dev/null; then
+ killall -SIGINT gpu-screen-recorder || exit 1
+ # reload module
+ pkill -RTMIN+3 waybar
+ else
+ gpu-screen-recorder -w screen -restore-portal-session yes -q ultra -oc yes -cr full -f 160 -o $XDG_VIDEOS_DIR/$(date +"%Y-%m-%d_%H:%M:%S").mp4
+ # reload module
+ pkill -RTMIN+3 waybar
+ fi
+}
+
+function pause() {
+ killall -SIGUSR2 gpu-screen-recorder || exit 1
+ pstatus=$(cat $XDG_CACHE_HOME/rec_paused)
+ if [ "$pstatus" == "true" ]; then
+ echo "false" > $XDG_CACHE_HOME/rec_paused
+ else
+ echo "true" > $XDG_CACHE_HOME/rec_paused
+ fi
+ # reload module
+ pkill -RTMIN+3 waybar
+}
+
+if [ "$1" ]; then
+ $@
+fi