diff options
Diffstat (limited to 'ar/.local')
| -rwxr-xr-x | ar/.local/bin/cron/checkup | 2 | ||||
| -rwxr-xr-x | ar/.local/bin/dmenurecord | 35 | ||||
| -rwxr-xr-x | ar/.local/bin/mpvplay | 16 | ||||
| -rwxr-xr-x | ar/.local/bin/webcam | 1 |
4 files changed, 41 insertions, 13 deletions
diff --git a/ar/.local/bin/cron/checkup b/ar/.local/bin/cron/checkup index dfdfc4a..801d406 100755 --- a/ar/.local/bin/cron/checkup +++ b/ar/.local/bin/cron/checkup @@ -5,8 +5,8 @@ notify-send "π¦ Repository Sync" "Checking for package updates..." sudo pacman -Syyuw --noconfirm || notify-send "β Error downloading updates. - Check your internet connection, if pacman is already running, or run update manually to see errors." + pkill -RTMIN+16 "${STATUSBAR:-dwmblocks}" if pacman -Qu | grep -v "\[ignored\]"; then diff --git a/ar/.local/bin/dmenurecord b/ar/.local/bin/dmenurecord index 4e493c5..037930b 100755 --- a/ar/.local/bin/dmenurecord +++ b/ar/.local/bin/dmenurecord @@ -56,10 +56,34 @@ video() { updateicon "βΊοΈ" } +webcamselect() { + cameras=$( + v4l2-ctl --list-devices | awk ' + BEGIN { RS=""; FS="\n" } + { + name = $1; + sub(/ \(.*$/, "", name); + gsub(/^[ \t]+|[ \t]+$/, "", name); + for (i=2; i<=NF; i++) { + if ($i ~ /\/dev\/video/) { + gsub(/^[ \t]+/, "", $i); + print name "|" $i; + break; + } + } + }' + ) + names=$(echo "$cameras" | cut -d '|' -f1) + choice=$(echo "$names" | dmenu -i -p 'Choose a camera:') + camera=$(echo "$cameras" | awk -F '|' -v sel="$choice" '$1 == sel {print $2}') +} + webcamhidef() { + [ -z "$camera" ] && exit ffmpeg \ + -display_hflip \ -f v4l2 \ - -i /dev/video0 \ + -i "$camera" \ -video_size 1920x1080 \ "$recordings/webcam-$(date '+%y%m%d-%H%M-%S').mkv" & echo $! >/tmp/recordingpid @@ -67,9 +91,11 @@ webcamhidef() { } webcam() { + [ -z "$camera" ] && exit ffmpeg \ + -display_hflip \ -f v4l2 \ - -i /dev/video0 \ + -i "$camera" \ -video_size 640x480 \ "$recordings/webcam-$(date '+%y%m%d-%H%M-%S').mkv" & echo $! >/tmp/recordingpid @@ -92,8 +118,9 @@ askrecording() { audio) audio ;; video) video ;; *selected) videoselected ;; - webcam) webcam ;; - "webcam (hi-def)") webcamhidef ;; + webcam) webcamselect && webcam ;; + "webcam (hi-def)") webcamselect && webcamhidef ;; + *) exit ;; esac } diff --git a/ar/.local/bin/mpvplay b/ar/.local/bin/mpvplay index 08d43ed..f5a899e 100755 --- a/ar/.local/bin/mpvplay +++ b/ar/.local/bin/mpvplay @@ -12,7 +12,7 @@ loginurl() { username="$(echo | dmenu -i -p "Enter a username:")" [ -n "$username" ] && password="$(echo | dmenu -i -P -p "Enter a password:")" || exit if [ -n "$username" ] && [ -n "$password" ]; then - if ! mpv --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' --ytdl-raw-options=username="$username",password="$password" "$url"; then + if ! mpv --x11-name=video --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' --ytdl-raw-options=username="$username",password="$password" "$url"; then notify-send "β Failed to play $url" "β Check your username or password" exit 1 fi @@ -24,7 +24,7 @@ play_url() { [ -n "$url" ] && echo "$url" | grep -E '^https?://' >/dev/null || return 1 if yt-dlp --simulate --dump-json "$url" >/dev/null 2>&1; then notify-send "π½οΈ Playing video from URL:" "$url" - mpv --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' "$url" + mpv --x11-name=video --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' "$url" else loginurl fi @@ -34,14 +34,14 @@ play_media() { if echo "$1" | grep -q ".*\.m3u$"; then playlist_file="${1#--playlist=}" if grep -q "/home/$USER/Private" "$playlist_file"; then - mpv "$@" && check_unmount || exit + mpv --x11-name=video "$@" && check_unmount || exit else - $mount_script && mpv "$@" || exit + $mount_script && mpv --x11-name=video "$@" || exit fi elif echo "$1" | grep -q "/home/$USER/Private"; then - mpv "$@" && check_unmount || exit + mpv --x11-name=video "$@" && check_unmount || exit else - $mount_script && mpv "$@" || exit + $mount_script && mpv --x11-name=video "$@" || exit fi } @@ -172,9 +172,9 @@ EOF # Play the file with mpv, resuming from the saved time position if [ "$time_pos" -gt 0 ]; then - mpv --start="$time_pos" "$file_path" + mpv --x11-name=video --start="$time_pos" "$file_path" else - mpv "$file_path" + mpv --x11-name=video "$file_path" fi } diff --git a/ar/.local/bin/webcam b/ar/.local/bin/webcam index 7800b46..0a4a297 100755 --- a/ar/.local/bin/webcam +++ b/ar/.local/bin/webcam @@ -44,4 +44,5 @@ mpv --untimed \ --profile=low-latency \ --input-conf=/dev/null \ --title=webcam \ + --x11-name=webcam \ $flip "$camera" |
