37 lines
1.2 KiB
Bash
Executable file
37 lines
1.2 KiB
Bash
Executable file
#!/usr/bin/bash
|
|
|
|
wf-recorder_check() {
|
|
if pgrep -x "wf-recorder" >/dev/null; then
|
|
pkill -INT -x wf-recorder
|
|
pkill -RTMIN+8 waybar
|
|
notify-send "Saved recording at " "$(cat /tmp/recording.txt)"
|
|
wl-copy <"$(cat /tmp/recording.txt)"
|
|
celluloid "$(cat /tmp/recording.txt)" &
|
|
exit 0
|
|
fi
|
|
}
|
|
|
|
wf-recorder_check
|
|
|
|
SCREEN=$(echo "$(hyprctl monitors | awk '/^Monitor/ {print $2} END { print "selection" }')" | rofi -dmenu)
|
|
|
|
AUDIO=$(echo "$(pactl list sources | grep Name | grep -v easyeffects | awk -F ": " '{print $2}' | awk '{$1=$1};1')" | rofi -dmenu)
|
|
|
|
VID="$HOME/Videos/Escritorio/$(date +%Y-%m-%d-%s).mp4"
|
|
|
|
if [ "$SCREEN" = "selection" ]; then
|
|
echo "$VID" >/tmp/recording.txt
|
|
sleep 1
|
|
wf-recorder -c hevc_vaapi --audio="$AUDIO" -d /dev/dri/renderD128 -g "$(slurp)" -f "$VID" &>/dev/null &
|
|
while pgrep -x slurp >/dev/null; do
|
|
sleep 1
|
|
done
|
|
notify-send "Recording started" "Selection\nAudio: $AUDIO"
|
|
pkill -RTMIN+8 waybar
|
|
elif [ "$SCREEN" != "" ]; then
|
|
echo "$VID" >/tmp/recording.txt
|
|
sleep 1
|
|
wf-recorder -c hevc_vaapi --audio="$AUDIO" -d /dev/dri/renderD128 -o "$SCREEN" -f "$VID" &>/dev/null &
|
|
notify-send "Recording started" "Screen: $SCREEN\nAudio: $AUDIO"
|
|
pkill -RTMIN+8 waybar
|
|
fi
|