blakeblackshear / frigate

NVR with realtime local object detection for IP cameras
https://frigate.video
MIT License
18.28k stars 1.66k forks source link

Consolidating multiple instances #3839

Closed lordratner closed 1 year ago

lordratner commented 2 years ago

Describe what you are trying to accomplish and why in non technical terms I have multiple Frigate instances at separated locations (HomeServer and Farm). I use a shared folder on HomeServer to save the clips and recordings from Farm, since Farm has limited storage and a slow connection that makes streaming the recordings difficult. There are a couple issues with this:

  1. I can't see all my feeds on one webpage or one birdseye view. I have to go to the Frigate GUI on each instance to monitor/review that instance's events
  2. Even with the recordings stored on HomeServer, going to the Farm Frigate GUI (from home) and watching a clip streams the recording stored through the Farm host, subjecting the feed to the limited bandwidth twice.

Describe the solution you'd like Give Frigate the ability to run as master (default) or slaved to another instance running as master. This would have a few primary functions:

  1. Live camera views on slaved instances can be viewed from the master instance, and the master instance birdseye would incorporate the slave instances cameras (most likely using RTMP)
  2. Events from slaved instances would be saved to the directory of the master instance and be viewable on the master GUI whether the slave is connected or not.
  3. Viewing events would be done through the master instance GUI, pulling from the master instance directory. This removes a slow internet connection between separated instances as a factor when reviewing events.

This way the image processing is still done on-site and not subject to the bad internet connection., but the clips are streamed from the Master (with the good internet connection), and everything you might want to save is in one location.

Describe alternatives you've considered I see a couple ways to make this work:

Optional: The HomeAssistant integration would only require once instance connected to the Master instance, which would give access to all master and slave cameras. Only one MQTT client and topic is used by the Master that incorporates all slave instances.

Additional context This could be a game changer for anyone looking to add surveillance to multiple locations. A RaspberryPi+Coral handling a couple cameras at each location but all feeding into one Master instance on a more powerful server allowing for centralized monitoring and event review. Another big benefit is having all the event recordings in one location for easier preservation and replication. You don't have to worry about the integrity of the remote SD cards, or have to set up independent backup solutions for each location.

Thoughts?

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.