• 1 Post
  • 134 Comments
Joined 3 years ago
cake
Cake day: July 22nd, 2023

help-circle





  • i have this script on a keybind.

    uses rofi, slurp and gpu-screen-recorder

    modify as needed. i dont remember where i got it from originally

    #!/bin/env bash
    
    recorder_check() {
    	if pgrep -x "gpu-screen-reco" > /dev/null; then
    			pkill -INT -x gpu-screen-reco
    			notify-send "Stopping all instances of gpu-screen-recorder" "$(cat /tmp/recording.txt)"
    			cat /tmp/recording.txt | wl-copy
    			exit 0
    	fi
    }
    
    recorder_check
    
    SELECTION=$(echo -e "record selection\nrecord eDP-1\nrecord DP-4" | rofi -dmenu -p "󰄀 ")
    
    VID="${HOME}/video/recordings/$(date +%Y-%m-%d_%H-%m-%s).mp4"
    
    case "$SELECTION" in
    	"record selection")
    		echo "$VID" > /tmp/recording.txt
        # Get selection geometry
        read X Y W H <<< $(slurp -f "%x %y %w %h")
    
        # Get monitor info (JSON)
        MONITORS=$(hyprctl monitors -j)
    
        # Find the monitor containing the selection and extract its scale
        SCALE=$(echo "$MONITORS" | jq -r \
          --argjson x "$X" --argjson y "$Y" '
          .[] | select(.x <= $x and .y <= $y and
                       ($x < (.x + .width)) and
                       ($y < (.y + .height))) | .scale')
    
        # Calculate physical coordinates
        PX=$(awk "BEGIN {printf \"%d\", $X * $SCALE}")
        PY=$(awk "BEGIN {printf \"%d\", $Y * $SCALE}")
        PW=$(awk "BEGIN {printf \"%d\", $W * $SCALE}")
        PH=$(awk "BEGIN {printf \"%d\", $H * $SCALE}")
    
        # Format geometry string
        GEOM="${PW}x${PH}+${PX}+${PY}"
    		gpu-screen-recorder -w region -region "$GEOM" -o "$VID" &>/dev/null
    		;;
    	"record eDP-1")
    		echo "$VID" > /tmp/recording.txt
        gpu-screen-recorder -w eDP-1 -o "$VID" &>/dev/null
    		;;
    	"record DP-4")
    		echo "$VID" > /tmp/recording.txt
        gpu-screen-recorder -w DP-4 -o "$VID" &>/dev/null
    	;;
    "record both screens")
    	notify-send "recording both screens is not functional"
    	;;
    *)
    	;;
    esac
    







  • cobwomstoScience Memes@mander.xyzbeans 🫘
    link
    fedilink
    English
    arrow-up
    11
    ·
    4 months ago

    these days it’s not because people are trying to censor the content from the viewer, but they’re censoring from the algorithms. they want their content to be seen, and algorithms will demote content when it has profanity. probably not the case on lemmy, but this was a screenshot from somewhere