summaryrefslogtreecommitdiff
path: root/.local
diff options
context:
space:
mode:
Diffstat (limited to '.local')
-rwxr-xr-x.local/bin/dmenurecord29
1 files changed, 29 insertions, 0 deletions
diff --git a/.local/bin/dmenurecord b/.local/bin/dmenurecord
new file mode 100755
index 0000000..38e199f
--- /dev/null
+++ b/.local/bin/dmenurecord
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+screencast() { \
+ ffmpeg -f x11grab -r 30 -s 1920x1080 -i :0.0 \
+ -f pulse -ac 2 -ar 48000 -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor \
+ ~/vids/recs/"$(date '+%C%y-%m%M-%d-%H-%M-%S').mp4" &
+ echo $! > /tmp/recordingpid
+}
+
+
+killrecording() {
+ recpid="$(cat /tmp/recordingpid)"
+ kill -15 "$recpid"
+ rm -f /tmp/recordingpid
+ sleep 3
+ kill -9 "$recpid"
+ exit
+ }
+
+asktoend() { \
+ response=$(printf "No\\nYes" | dmenu -i -p "Recording still active. End recording?") &&
+ [ "$response" = "Yes" ] && killrecording
+ }
+
+if [ -f /tmp/recordingpid ]; then
+ asktoend && exit
+else
+ screencast
+fi