birdcam-pi/view_birdcam.sh

64 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
player="cvlc" ### var: player command
player_path="$(command -v $player)"
player_package="vlc" ### var: player apt package
if [ -z "$player_path" ]; then
echo "Missing $player, try to install it ..."
echo "Check internet connection ..."
pingserver="raspbian.raspberrypi.org" ### var: pingcheck destination
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="/home/pi/birdcam/conf/cameralist.txt" ### var: list of all cameras/commands file
playerproc="vlc" ### var: media player process name
playerparam="--no-osd --play-and-exit" ### var: media player parameters
streamurl="rtsp://$1:554/user=admin&password=&channel=1&stream=0.sdp?real_stream" ### var: camera stream url
randomvideosh="/home/pi/birdcam/randomvideo.sh" ### var: path to random video script
randomvideoproc="randomvideo.sh" ### var: name of process for random video script
if [ -n "$(pgrep $playerproc)" ]; then
pkill $playerproc
fi
if [ -n "$(pgrep $randomvideoproc)" ]; then
pkill $randomvideoproc
fi
if [ "$1" = "random" ]; then
$randomvideosh
exit 0
fi
if [ "$1" = "birdcam1" ]; then ### var: hostname camera1
$player_path $playerparam "$streamurl"
elif [ "$1" = "birdcam2" ]; then ### var: hostname camera2
$player_path $playerparam "$streamurl"
else
echo "Wrong camera! Available cameras:"
cat $cameralist
fi