All Projects → SvenVD → Rpisurv

SvenVD / Rpisurv

Licence: gpl-2.0
Raspberry Pi surveillance

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Rpisurv

Homekitcam
A project to make a Raspberry Pi driven, HomeKit Enabled camera.
Stars: ✭ 69 (-76.45%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3, raspberry-pi-camera
Raspberrypi tempmon
Raspberry pi CPU temperature monitor with many functions such as logging, GPIO output, graphing, email, alarm, notifications and stress testing. Python 3.
Stars: ✭ 52 (-82.25%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Pi Camera In A Box
Stream your Raspberry Pi Camera Module directly to your web browser
Stars: ✭ 49 (-83.28%)
Mutual labels:  raspberry-pi, raspberry-pi-3, raspberry-pi-camera
webcam-to-cctv-using-rpi
In this project, we will use a webcam with Raspberry Pi to live stream wirelessly.
Stars: ✭ 17 (-94.2%)
Mutual labels:  surveillance, raspberry-pi-camera, raspberry-pi-3
Raspberryio
The Raspberry Pi's IO Functionality in an easy-to-use API for Mono/.NET/C#
Stars: ✭ 593 (+102.39%)
Mutual labels:  raspberry-pi, raspberry-pi-3, raspberry-pi-camera
Gassistpi
Google Assistant for Single Board Computers
Stars: ✭ 911 (+210.92%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Openauto
AndroidAuto headunit emulator
Stars: ✭ 1,926 (+557.34%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Fotobox
Python based photo-booth script for Raspberry Pi and RPi Camera
Stars: ✭ 22 (-92.49%)
Mutual labels:  raspberry-pi, raspberry-pi-3, raspberry-pi-camera
Spypi
An (un-)ethical hacking-station based on Raspberry Pi and Python
Stars: ✭ 167 (-43%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Debian Pi Aarch64
This is the first 64-bit system in the world to support all Raspberry Pi 64-bit hardware!!! (Include: PI400,4B,3B+,3B,3A+,Zero2W)
Stars: ✭ 2,505 (+754.95%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Pigeon
Pigeon is a simple 3D printed cloud home surveillance camera project that uses the new Raspberry Pi Zero W
Stars: ✭ 266 (-9.22%)
Mutual labels:  raspberry-pi, raspberrypi, surveillance
Pibooth
The pibooth project provides a Photo Booth application out-of-the-box for Raspberry Pi and opencv compatible devices
Stars: ✭ 398 (+35.84%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-camera
Comitup
Bootstrap Wifi support over Wifi
Stars: ✭ 190 (-35.15%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Aasdk
Library to build AndroidAuto headunit emulator
Stars: ✭ 167 (-43%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
Rpi gpio
Ruby conversion of RPi.GPIO Python module
Stars: ✭ 185 (-36.86%)
Mutual labels:  raspberry-pi, raspberrypi, raspberry-pi-3
PiHueEntertainment
An application that can handle the Hue Entertainment Areas on a Raspberry Pi
Stars: ✭ 28 (-90.44%)
Mutual labels:  raspberrypi, raspberry-pi-camera, raspberry-pi-3
Realtek-USB-Wireless-Adapter-Drivers
Realtek USB Wireless Adapter Drivers [0bda:f179] (Kernel 4.15.x ~ 5.9.x)
Stars: ✭ 34 (-88.4%)
Mutual labels:  raspberrypi, raspberry-pi-3
motor-hat
Node Module to control Adafruits MotorHAT for the RaspberryPi
Stars: ✭ 28 (-90.44%)
Mutual labels:  raspberrypi, raspberry-pi-3
Object-sorting-using-Robotic-arm-and-Image-processing
Sorting objects of different colors using robotic arm and using computer vision (image processing).
Stars: ✭ 21 (-92.83%)
Mutual labels:  raspberry-pi-camera, raspberry-pi-3
raspiApWlanScripts
Wifi station/AP mode scripts
Stars: ✭ 24 (-91.81%)
Mutual labels:  raspberrypi, raspberry-pi-3
Rpisurv 2 is now feature-freezed in favour of Rpisurv 3 which is currently in beta.
Beta testers welcome.

Rpisurv 2 - Raspberry pi surveillance an RPI IP Camera Monitor

Join the community on https://community.rpisurv.net (Please use this place for support questions instead of github issues).
Bug tracking https://github.com/SvenVD/rpisurv/issues.
Follow us on facebook https://www.facebook.com/rpisurv.
Have a chat on https://gitter.im/rpisurv/general.

If you like this software please consider donating:

Release notes

See RELEASE_NOTES

Goal

Rpisurv is designed to be simple to use (no need to fiddle with coordinates or detailed layout configs, although you can if you really want) and to be able to run unattended for long periods of time. Therefore watchdogs and autohealing logic have been implemented. Version 2 adds functionality to define multiple screens which can be cycled between.

Description

You can think of rpisurv as a wrapper for omxplayer with following features (Rpisurv uses omxplayer to fully make use of the GPU of the raspberry pi).

  • Rpisurv implements a watchdog for every stream displayed, if the process gets killed somehow. It will try to restart the stream/process. This gives you a very robust surveillance screen.
  • Autocalculcate coordinates for every stream displayed. The last stream defined will be stretched to make use of the complete screen but only if some pixels are unused (if autostretch option is True).
  • Stream up/down detection and autorearrange of the screen layout (if disable_probing_for_all_streams is False). So for example if you stop a camera (or just stop the server on the camera), rpisurv will detect this and will recalculate/redraw the screen with the still available cameras. The same is true if a previous unconnectable rtsp stream becomes connectable. All without any user interaction.
  • All this behaviour is available per screen, but as of version 2 you can configure multiple screens and cycle between them in an automated way or via the keyboard.
  • Since 2.1.0 you can now also specify "image streams", to display images next to or instead of camera streams. The images will be auto-updated if they change remotely.

How to get started

In short: The idea is to connect your raspberry pi to a monitor and tell rpisurv which stream(s) and screen(s) it should display or cycle between. Rpisurv will autocalculate all the rest.

  • Get a monitor or a TV
  • Get a raspberry pi dedicated for rpisurv, and install raspbian on it. Make sure your monitor is operating at the correct resolution
  • If you are going to have multiple streams, add gpu_mem=512 to your /boot/config.txt
  • git clone this repository: git clone https://github.com/SvenVD/rpisurv
  • move into folder cd rpisurv
  • OPTIONAL: checkout a specific branch, for example git checkout v2_latest, if you want to override the default version on master
  • run sudo ./install.sh
  • Get the correct stream url for your ip camera(s), there are some examples in /etc/rpisurv.conf
  • Configure your screen(s) and stream(s) in /etc/rpisurv.conf. Remove all example config first! This dummy config is for documentation only, you will fail to start rpisurv if you do not remove these examples.
  • OPTIONAL: configure optional options per screen or per camera stream in /etc/rpisurv.conf, the example config file file explains them all
  • reboot

How to update

  • cd rpisurv; git pull
  • OPTIONAL: checkout a specific branch, for example git checkout v2_latest, if you want to override the default version on master
  • run sudo ./install.sh (The installer will ask if you want to preserve your current config file)
  • systemctl restart rpisurv

Placeholder images

After installation you may change the placeholder images to something you like.

  • /usr/local/bin/rpisurv/images/connecting.png is shown when a camera stream is starting up
  • /usr/local/bin/rpisurv/images/placeholder.png is shown on empty squares
  • /usr/local/bin/rpisurv/images/noconnectable.png is shown full screen when no connectable streams are detected for the current active screen in case multiple are cycled between
  • systemctl restart rpisurv

Rpisurv in operation

If you used the install.sh script, you can configure your streams in /etc/rpisurv.conf. Do not forget to reboot afterwards.

If you are connected via keyboard/keypad, you can force the next screen by pressing and holding n or space (or keypad "+") for some seconds in case multiple screens were defined (this takes longer depending on amount of unconnectable streams and they thus need to wait for timeout, keep holding until screen changes. Note, you can change probe_timeout per camera stream if needed).

Keys F1 to F12 (or keypad 0 to 9), will force the equal numbered screen to be shown onscreen (this takes longer depending on amount of unconnectable streams and they thus need to wait for timeout, keep holding until screen changes. Note, you can change probe_timeout per camera stream if needed).

Disable rotation (as in pause rotation, as in fix the current displayed screen) dynamically during runtime. By pressing "p" (or keypad "*") to pause or "r" (or "," or keypad ".")' to resume/rotate. This overrides the disable_autorotation option if this has been set in the config file.

Touchscreen control: The width of the screen is divided in four sections,

  • Touching on the first section trigger a pause event.
  • Touching In the two sections in the middle trigger a resume event.
  • Touching In the last section, a next screen event. Note that a mouse can be used, however mouse cursor is hidden by default.

Troubleshooting

  • I advise you to test your urls in vlc or omxplayer (command line) first. It should work in these applications before attempting to use them in rpisurv

  • If you used the install.sh script, logs are created at /usr/local/bin/rpisurv/logs/. You can use them for troubleshooting. Enable DEBUG logging for very detailed output of what is going on. see logging_config

  • If you are connected via keyboard/keypad, you can stop rpisurv by pressing and holding q (or backspace or keypad "/") (this can take some seconds) .

  • To manage the screen without rebooting use systemctl

    • sudo systemctl stop rpisurv to stop the screen
    • sudo systemctl start rpisurv to start the screen
    • sudo systemctl status rpisurv to see last log and status of service
  • If you want to stream rtsp over tcp please add rtsp_over_tcp: true to the stream in /etc/rpisurv.conf. See example config file for an example. If you have a "smearing" effect this option may resolve it. Note that you need a version of omxplayer which is released after 14 March 2016 (https://github.com/popcornmix/omxplayer/pull/433) to do this.

  • On a raspberry pi 3 and 4 it seems the default overscan settings are not good. If full screen is not used, if you have an unused bar in the bottom -> try to set disable_overscan=1 in /boot/config.txt

  • Users on a raspberry pi 4 which experience flickering can try to set disable_overscan=1 in /boot/config.txt. As reported here: link.

Feature requests

Feature requests are tracked on https://community.rpisurv.net. If you would like to have a feature implemented on rpisurv, please check that this is not already been requested on https://community.rpisurv.net. If it is then add your vote to it, if it is not then request it as a new feature. The votes give us an indication on how feature requests compare to each other regarding popularity.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].