diff options
Diffstat (limited to '.local')
| -rwxr-xr-x | .local/bin/dmenurecord | 29 |
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 |
