move script folders to a correct place, some vim config changes, etc...

This commit is contained in:
Arthur Khachaturov 2024-07-04 13:31:45 +03:00
parent c360fc2339
commit ffe452fe24
28 changed files with 380 additions and 360 deletions

54
.local/bin/scripts/cast Executable file
View file

@ -0,0 +1,54 @@
#!/bin/bash
PIDFILE="${XDG_RUNTIME_DIR}/mkchromecast.pid"
WIDTH=1440
HEIGHT=1080
ASPECT_OFFSET=240
OUTPUT_NAME='DVI-I-2-2'
inhibit_pid=''
command() {
echo "ffmpeg -ac 2 -ar 44100 -frame_size 2048 -fragment_size 2048 -f pulse -ac 2 -i Mkchromecast.monitor -f x11grab -r 30 -s ${WIDTH}x${HEIGHT} -i :0.0+$1,0 -vcodec libx264 -preset veryfast -tune zerolatency -maxrate 10000k -bufsize 20000k -pix_fmt yuv420p -g 60 -f mp4 -vf scale=1280:720 -movflags frag_keyframe+empty_moov -ar 44100 -acodec libvorbis pipe:1"
}
set -x
sigint() {
kill -9 ${inhibit_pid}
}
trap 'sigint' SIGINT
cleanup() {
xrandr --output ${OUTPUT_NAME} --off
xrandr --delmode ${OUTPUT_NAME} "1920x1080"
pid="$(cat ${PIDFILE})"
rm "${PIDFILE}"
pkill -35 dwmblocks
kill -INT "${pid}"
}
run() {
xrandr --setprovideroutputsource 1 0
xrandr --addmode ${OUTPUT_NAME} 1920x1080
xrandr --output ${OUTPUT_NAME} --mode 1920x1080 --rate 60 --right-of eDP-1
echo $$ > "${PIDFILE}"
pkill -35 dwmblocks
offset=$(( "$(xrandr | grep ${OUTPUT_NAME} | cut -d ' ' -f 3 | cut -d '+' -f 2)" + ${ASPECT_OFFSET} ))
systemd-inhibit --what=handle-lid-switch sleep 2592000 & inhibit_pid="$!"
mkchromecast --video --command "$(command ${offset})"
}
if [ "$1" = "-k" ]; then
cleanup
exit 0
fi
if [ -f "${PIDFILE}" ]; then
cleanup || run
else
run
fi