birdcam-pi/view_birdcam.sh

67 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
vars="/home/pi/birdcam/vars"
player="$(cat $vars | grep playercmd | cut -d'=' -f2)"
player_path="$(command -v $player)"
player_package="$(cat $vars | grep playerpackage | cut -d'=' -f2)"
if [ -z "$player_path" ]; then
echo "Missing $player, try to install it ..."
echo "Check internet connection ..."
pingserver="$(cat $vars | grep pingserver | cut -d'=' -f2)"
if ! ping -q -c1 $pingserver>/dev/null; then
echo "No internet connection ..."
exit 0
fi
sudo apt-get update; sudo apt-get -y install $player_package
player_path="$(command -v $player)"
if [ -z "$player_path" ]; then
echo "Cannot install $player, exiting ..."
exit 0
fi
fi
if [ -z "$1" ]; then
echo "Usage: $0 [Name_of_Camera]"
exit 0
fi
cameralist="$(cat $vars | grep cameralist | cut -d'=' -f2)"
playerproc="$(cat $vars | grep playerproc | cut -d'=' -f2)"
playerparam="$(cat $vars | grep playerparam | cut -d'=' -f2)"
randomvideosh="$(cat $vars | grep randompathsh | cut -d'=' -f2)"
randomvideoproc="$(cat $vars | grep randomsh | cut -d'=' -f2)"
if [ -n "$(pgrep $playerproc)" ]; then
pkill $playerproc
fi
if [ -n "$(pgrep $randomvideoproc)" ]; then
pkill $randomvideoproc
fi
if [ "$1" = "$(cat $vars | grep camparamr | cut -d'=' -f2)" ]; then
$randomvideosh
exit 0
fi
streamurl="rtsp://$1:554/user=admin&password=&channel=1&stream=0.sdp?real_stream"
if [ "$1" = "$(cat $vars | grep camparam1 | cut -d'=' -f2)" ]; then
$player_path $playerparam ""$streamurl""
elif [ "$1" = "$(cat $vars | grep camparam2 | cut -d'=' -f2)" ]; then
$player_path $playerparam ""$streamurl""
else
echo "Wrong camera! Available cameras:"
cat $cameralist
fi