53 lines
1.4 KiB
Bash
Executable file
53 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
#Script to run SCRCPY
|
|
|
|
if pgrep -x "scrcpy" >/dev/null; then
|
|
pkill -x scrcpy
|
|
exit
|
|
fi
|
|
|
|
# Get connected devices
|
|
devices=$(adb devices | awk 'NR>1 && $2=="device" {print $1}')
|
|
device_count=$(echo "$devices" | wc -l)
|
|
|
|
# If no devices are found, exit the script
|
|
if [ "$device_count" -eq 0 ]; then
|
|
notify-send "No devices connected."
|
|
exit 1
|
|
fi
|
|
|
|
# If multiple devices are connected, prompt to select one
|
|
if [ "$device_count" -gt 1 ]; then
|
|
selected_device=$(echo "$devices" | rofi -dmenu -config ~/.config/dotfiles/rofi/config.rasi -p "Select Device: ")
|
|
else
|
|
selected_device=$(echo "$devices")
|
|
fi
|
|
|
|
# If no device was selected, exit the script
|
|
if [ -z "$selected_device" ]; then
|
|
echo "No device selected."
|
|
exit 1
|
|
fi
|
|
|
|
# Options for SCRCPY modes
|
|
options="Video\nNo Video\nVideo & Audio"
|
|
|
|
# Prompt to select the SCRCPY mode
|
|
selected_option=$(echo -e "$options" | rofi -dmenu -config ~/.config/dotfiles/rofi/config.rasi -p "Select SCRCPY mode: ")
|
|
|
|
# Run scrcpy with the selected mode and device
|
|
case "$selected_option" in
|
|
"Video")
|
|
scrcpy --serial "$selected_device" --max-size=1024 --video-codec=h265 --video-bit-rate=6M --audio-bit-rate=128K --max-fps=30 --no-audio
|
|
;;
|
|
"No Video")
|
|
scrcpy --serial "$selected_device" --no-window
|
|
;;
|
|
"Video & Audio")
|
|
scrcpy --serial "$selected_device" --max-size=1024 --video-codec=h265 --video-bit-rate=6M --audio-bit-rate=128K --max-fps=30
|
|
;;
|
|
*)
|
|
echo "Invalid selection"
|
|
;;
|
|
esac
|