NVR with realtime local object detection for IP cameras
Go to file
Nicolas Mowen 6c0978498d
Abstract MQTT from communication and make mqtt optional (#4462)
* Add option for mqtt config

* Setup communication layer

* Have a dispatcher which is responsible for handling and sending messages

* Move mqtt to communication

* Separate ws communications module

* Make ws client conform to communicator

* Cleanup imports

* Migrate to new dispatcher

* Clean up

* Need to set topic prefix

* Remove references to mqtt in dispatcher

* Don't start mqtt until dispatcher is subscribed

* Cleanup

* Shorten package

* Formatting

* Remove unused

* Cleanup

* Rename mqtt to ws on web

* Fix ws mypy

* Fix mypy

* Reformat

* Cleanup if/else chain

* Catch bad set commands
2022-11-23 20:03:20 -06:00
.devcontainer Improve the devcontainer experience (#3492) 2022-11-20 07:34:12 -06:00
.github Faster image builds with caching (#4491) 2022-11-23 20:00:45 -06:00
config Improve the devcontainer experience (#3492) 2022-11-20 07:34:12 -06:00
docker Faster image builds with caching (#4491) 2022-11-23 20:00:45 -06:00
docs Abstract MQTT from communication and make mqtt optional (#4462) 2022-11-23 20:03:20 -06:00
frigate Abstract MQTT from communication and make mqtt optional (#4462) 2022-11-23 20:03:20 -06:00
migrations Limit recording retention to available storage (#3942) 2022-10-09 06:28:26 -05:00
web Abstract MQTT from communication and make mqtt optional (#4462) 2022-11-23 20:03:20 -06:00
.dockerignore Improve the devcontainer experience (#3492) 2022-11-20 07:34:12 -06:00
.gitignore feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
.pylintrc use fstr log style 2021-02-25 07:01:59 -06:00
benchmark.py Refactor to simplify support for additional detector types (#3656) 2022-11-03 21:23:09 -05:00
docker-compose.yml Improve the devcontainer experience (#3492) 2022-11-20 07:34:12 -06:00
Dockerfile Faster image builds with caching (#4491) 2022-11-23 20:00:45 -06:00
labelmap.txt refactor and reduce false positives 2020-09-17 07:37:27 -05:00
LICENSE switch to MIT license 2020-07-26 12:07:47 -05:00
Makefile Faster image builds with caching (#4491) 2022-11-23 20:00:45 -06:00
process_clip.py Refactor to simplify support for additional detector types (#3656) 2022-11-03 21:23:09 -05:00
README.md update docs url 2021-09-26 16:43:26 -05:00
requirements-dev.txt Easy Python Updates (#4424) 2022-11-18 06:33:10 -06:00
requirements-wheels.txt Easy Python Updates (#4424) 2022-11-18 06:33:10 -06:00
requirements.txt Use requirement file for pip installs (#3090) 2022-04-12 07:21:21 -05:00
test.db-journal Add go2rtc and add restream role / live source (#4082) 2022-11-02 06:36:09 -05:00

logo

Frigate - NVR With Realtime Object Detection for IP Cameras

A complete and local NVR designed for Home Assistant with AI object detection. Uses OpenCV and Tensorflow to perform realtime object detection locally for IP cameras.

Use of a Google Coral Accelerator is optional, but highly recommended. The Coral will outperform even the best CPUs and can process 100+ FPS with very little overhead.

  • Tight integration with Home Assistant via a custom component
  • Designed to minimize resource use and maximize performance by only looking for objects when and where it is necessary
  • Leverages multiprocessing heavily with an emphasis on realtime over processing every frame
  • Uses a very low overhead motion detection to determine where to run object detection
  • Object detection with TensorFlow runs in separate processes for maximum FPS
  • Communicates over MQTT for easy integration into other systems
  • Records video with retention settings based on detected objects
  • 24/7 recording
  • Re-streaming via RTMP to reduce the number of connections to your camera

Documentation

View the documentation at https://docs.frigate.video

Donations

If you would like to make a donation to support development, please use Github Sponsors.

Screenshots

Integration into Home Assistant

Also comes with a builtin UI:

Events