aboutsummaryrefslogtreecommitdiff
path: root/scripts/record-save-application-name.sh
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2024-05-11 23:03:10 +0200
committerdec05eba <dec05eba@protonmail.com>2024-05-11 23:03:10 +0200
commit2cd031db48272635b851d6c79a6f283e497293d1 (patch)
treef019214f1c1af70d69fae0ce74238d7e3a381e08 /scripts/record-save-application-name.sh
parent357df7ce5351bb6e2a388c6b9a780483969c5707 (diff)
Add -sc example script to save the replay video to a folder with the game name
Diffstat (limited to 'scripts/record-save-application-name.sh')
-rwxr-xr-xscripts/record-save-application-name.sh14
1 files changed, 14 insertions, 0 deletions
diff --git a/scripts/record-save-application-name.sh b/scripts/record-save-application-name.sh
new file mode 100755
index 0000000..c002376
--- /dev/null
+++ b/scripts/record-save-application-name.sh
@@ -0,0 +1,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" \ No newline at end of file