aboutsummaryrefslogtreecommitdiff
path: root/scripts/record-save-application-name.sh
blob: c002376986d1dad1f3b589b69a4fcae065fea839 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/sh

# This script should be passed to gpu-screen-recorder with the -sc option, for example:
# gpu-screen-recorder -w screen -f 60 -a "$(pactl get-default-sink).monitor" -r 60 -sc scripts/record-save-application-name.sh -c mp4 -o "$HOME/Videos"

window=$(xdotool getwindowfocus)
window_name=$(xdotool getwindowclassname "$window" || xdotool getwindowname "$window" || echo "game")
window_name="$(echo "$window_name" | tr '/\\' '_')"

video_dir="$HOME/Videos/Replays/$window_name"
mkdir -p "$video_dir"
video="$video_dir/$(date +"${window_name}_%Y-%m-%d_%H-%M-%S.mp4")"
mv "$1" "$video"
sleep 0.5 && notify-send -t 2000 -u low "GPU Screen Recorder" "Replay saved to $video"