I appreciate him trying to drum up excitement for the terminal. A lot of people are afraid of it and I understand why, but you don't need to know everything about it in order to benefit from it.
I wanted to post some Trackmania replays to Bluesky when they first rolled out video, but they only supported up to 50MB. I dreaded having to open kdenlive, figure out how to work the GUI and then also possibly have to do some terrible math to balance size and quality. Maybe this is easier than I expected, but I found this: https://unix.stackexchange.com/questions/520597/how-to-reduce-the-size-of-a-video-to-a-target-size
ffmpeg_resize () {
file=$1
target_size_mb=$2 # target size in MB
target_size=$(( $target_size_mb * 1000 * 1000 * 8 )) # target size in bits
length=`ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 "$file"`
length_round_up=$(( ${length%.*} + 1 ))
total_bitrate=$(( $target_size / $length_round_up ))
audio_bitrate=$(( 128 * 1000 )) # 128k bit rate
video_bitrate=$(( $total_bitrate - $audio_bitrate ))
ffmpeg -i "$file" -b:v $video_bitrate -maxrate:v $video_bitrate -bufsize:v $(( $target_size / 20 )) -b:a $audio_bitrate "${file}-${target_size_mb}mb.mp4"
}
ffmpeg_resize file1.mp4 25 # resize `file1.mp4` to 25 MB
ffmpeg_resize file2.mp4 64 # resize `file2.mp4` to 64 MB
I'm not proficient in bash enough to have written this myself, but even I can glance over this and see it's just doing some math for me while invoking two programs: ffprobe and ffmpeg. Easy peasy.
I put this in my ~/.bashrc and use it all the time now, it's almost silly how simple this has made things. I get why nerds get super attached to their profiles now, I'm collecting a bunch of scripts and functions that just make life easier.
Currently I'm working on writing some scripts with ratbagctl (https://github.com/libratbag/libratbag) so when I launch a game through Steam it'll automatically set my Logitech mouse profile for that game. You know, the thing the Logitech mouse software makes you sign up for an account and connect to the internet for. All of the control, none of the bloat π
I'm unsure if this is related, but I've had some small issues with settings getting "stuck" in the Piper GUI and just not translating well to the actual device.
To fix this, use the underlying ratbagctl program in the terminal to clear out the DPI settings on the mouse itself. This only needs to be done once and the next time you open Piper it should read from the mouse and clear whatever GUI issue you were having,
Replace screaming-chipmunk with whatever your device is listed as from
ratbagctl list
, it'll be something similar. Hope that helps!