Commit Graph
126 Commits
Author SHA1 Message Date
Blake Blackshear 95343b6094 Merge remote-tracking branch 'origin/master' into dev 2022-11-05 09:27:38 -05:00
Nate MeyerandNicolas Mowen 4383b883c0 Refactor to simplify support for additional detector types (#3656)
* Refactor EdgeTPU and CPU model handling to detector submodules.

* Fix selecting the correct detection device type from the config

* Remove detector type check when creating ObjectDetectProcess

* Fixes after rebasing to 0.11

* Add init file to detector folder

* Rename to detect_api

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

* Add unit test for LocalObjectDetector class

* Add configuration for model inputs
Support transforming detection regions to RGB or BGR.
Support specifying the input tensor shape.  The tensor shape has a standard format ["BHWC"] when handed to the detector, but can be transformed in the detector to match the model shape using the model  input_tensor config.

* Add documentation for new model config parameters

* Add input tensor transpose to LocalObjectDetector

* Change the model input tensor config to use an enumeration

* Updates for model config documentation

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2022-11-03 21:23:09 -05:00
TuurkevgandBlake Blackshear bcc26dd86a Update docs to reflect recommended custom birdseye icon size (#4065)
* ffmpeg stopped working without correct png size

When I made my own size for my picture,  ffmpeg stopped working. Only with a size of 180x180 my frigate runs normal

* Adjusting language

Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2022-11-02 07:03:32 -05:00
banthungprong 8163afce79 Allow cameras to be disabled in config (#4162)
* add option enabled for each camera in config

* Simplified If-block and removed wrong Optional

* Update Docs enabling/disabling camera in config

* correct format for option

* Disabling Camera for processes, no config changes

* Describe effects of disabled cam in documentation

* change if-logic, obsolete copy, info disabled cam

* changed color to white, added top padding in disabled camera info

* changed indentation
2022-11-02 06:41:44 -05:00
d8123d2497 Add go2rtc and add restream role / live source (#4082)
* Pull go2rtc dependency

* Add go2rtc to local services and add to s6

* Add relay controller for go2rtc

* Add restream role

* Add restream role

* Add restream to nginx

* Add camera live source config

* Disable RTMP by default and use restream

* Use go2rtc for camera config

* Fix go2rtc move

* Start restream on frigate start

* Send restream to camera level

* Fix restream

* Make sure jsmpeg works as expected

* Make view rspect live size config

* Tweak player options to fit live view

* Adjust VideoPlayer to accept live option which disables irrelevant controls

* Add multiple options from restream live view

* Add base for webrtc option

* Setup specific restream modules

* Make mp4 the default streaming for now

* Expose 8554 for rtsp relay from go2rtc

* Formatting

* Update docs to suggest new restream method.

* Update docs to reflect restream role

* Update docs to reflect restream role

* Add webrtc player

* Improvements to webRTC

* Support webrtc

* Cleanup

* Adjust rtmp test and add restream test

* Fix tests

* Add restream tests

* Add live view docs and show different options

* Small docs tweak

* Support all stream types

* Update to beta 9 of go2rtc

* Formatting

* Make jsmpeg the default

* Support wss if made from https

* Support wss if made from https

* Use onEffect

* Set url outside onEffect

* Fix passed deps

* Update docs about required host mode

* Try memo instead

* Close websocket on changing camera

* Formatting

* Close pc connection

* Set video source to null on cleanup

* Use full path since go2rtc can't see PATH var

* Adjust audio codec to enable browser audio by default

* Cleanup stream creation

* Add restream tests

* Format tests

* Mock requests

* Adjust paths

* Move stream configs to restream

* Remove live source

* Remove live config

* Use live persistence for which view to use on each camera

* Fix live sizes

* Only use jsmpeg sizes for jsmpeg live

* Set max live size

* Remove access of live config

* Add selector for live view source in web view

* Remove RTMP from default list of roles

* Update docs

* Fix tests

* Fix docs for live view modes

* make default undefined to avoid race condition

* Wait until camera source is loaded to avoid race condition

* Fix tests

* Add config to go2rtc

* Work with config

* Set full path for config

* Set to use stun

* Check for mounted file

* Look for frigate-go2rtc

* Update docs to reflect webRTC configuration.

* Add link to go2rtc config

* Update docs to be more clear

* Update docs to be more clear

* Update format

Co-authored-by: Felipe Santos <felipecassiors@gmail.com>

* Update live docs

* Improve bash startup script

* Add option to force audio compatibility

* Formatting

* Fix mapping

* Fix broken link

* Update go2rtc version

* Get go2rtc webui working

* Add support for mse

* Remove mp4 option

* Undo changes to video player

* Update docs for new live view options

* Make separate path for mse

* Remove unused

* Remove mp4 path

* Try to get go2rtc proxy working

* Try to get go2rtc proxy working

* Remove unused callback

* Allow websocket on restrea dashboard

* Make mse default stream option

* Fix mse sizing

* don't assume roles is defined

* Remove nginx mapping to go2rtc ui

Co-authored-by: Felipe Santos <felipecassiors@gmail.com>
Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2022-11-02 06:36:09 -05:00
MariusMueller 86268b99fb Doc Update: Added "-c:v mjpeg" to MJPEG Cameras input_agrs in order to make a video stream work that comes from an ESP32-cam using ESPHome standard software (#4171) 2022-10-25 17:30:12 -05:00
Nicolas Mowen b4d4adb75b Limit recording retention to available storage (#3942)
* Add field and migration for segment size

* Store the segment size in db

* Add comment

* Add default

* Fix size parsing

* Include segment size in recordings endpoint

* Start adding storage maintainer

* Add storage maintainer and calculate average sizes

* Update comment

* Store segment and hour avg sizes per camera

* Formatting

* Keep track of total segment and hour averages

* Remove unused files

* Cleanup 2 hours of recordings at a time

* Formatting

* Fix bug

* Round segment size

* Cleanup some comments

* Handle case where segments are not deleted on initial run or is only retained segments

* Improve cleanup log

* Formatting

* Fix typo and improve logging

* Catch case where no recordings exist for camera

* Specifically define sort

* Handle edge case for cameras that only record part time

* Increase definition of part time recorder

* Remove warning about not supported storage based retention

* Add note about storage based retention to recording docs

* Add tests for storage maintenance calculation and cleanup

* Format tests

* Don't run for a camera with no recording segments

* Get size of file from cache

* Rework camera stats to be more efficient

* Remove total and other inefficencies

* Rewrite storage cleanup logic to be much more efficient

* Fix existing tests

* Fix bugs from tests

* Add another test

* Improve logging

* Formatting

* Set back correct loop time

* Update name

* Update comment

* Only include segments that have a nonzero size

* Catch case where camera has 0 nonzero segment durations

* Add test to cover zero bandwidth migration case

* Fix test

* Incorrect boolean logic

* Formatting

* Explicity re-define iterator
2022-10-09 06:28:26 -05:00
Jörg MenkeandNicolas Mowen 2eada219cd Restructured camera specific documentation (#4005)
* Restructured camera specific documentation

* Make room for manufacture specific docs
* Added initial (more or less) working setup for Annke C800 camera

* Update docs/docs/configuration/camera_specific.md

remove tracking settings from example

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

* Moved unify and blue iris cams examples

* headline cleanup

* removed doubled headline in advanced options
* changed headline level for camera specific setup to make headlines
  show up in toc

* removed specific optimizations not related to cam

* more generic phrasing

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2022-10-07 21:15:12 -05:00
Nicolas Mowen 8dd367efa9 Link to env var option (#4032) 2022-10-07 21:13:47 -05:00
KamahatandNicolas Mowen 10783fec49 identation, device Id (#3921)
* identation, device Id

indentation issue : "deploy"  need to ne at th esame level as "image"
Device ID : use "device id" instead of "count: 1" cf : https://docs.docker.com/compose/gpu-support/

* Update docs/docs/configuration/hardware_acceleration.md

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2022-10-01 09:04:28 -05:00
Julien Ehrhart 3bed4611f1 Add an example for birdseye override at camera level (#3922) 2022-10-01 09:04:05 -05:00
Nicolas Mowen be7b858cbd Remove JELLYFIN from intel driver name hwaccel docs (#3855) 2022-09-16 10:47:22 -06:00
Nicolas Mowen bdfe4a961a Add documentation for custom ffmpeg builds (#3771)
* Add instructions for custom ffmpeg build

* Add note about mapping /bin
2022-09-15 06:34:07 -05:00
Nick Mowen b6f799e641 Add camera specific for unify protect cameras 2022-08-28 11:14:01 -05:00
Jason afefa3ec02 Update camera_specific.md (#3292)
Change fflag arg to remove `nobuffer`, which causes stream errors in 0.11-beta2
2022-08-25 07:33:47 -05:00
Blake Blackshear 01482d791b Merge remote-tracking branch 'origin/master' into release-0.11.0 2022-08-13 06:50:21 -05:00
Nick Mowen 6e2e297aeb Add clean copy to configuration docs 2022-08-13 06:47:58 -05:00
ZuluWhiskeyandBlake Blackshear 7a1215d581 Adding configuration example for retain modes (#3589)
* Adding configuration example for retain modes

Reading the documentation on its own didn't help me but when I found https://github.com/blakeblackshear/frigate/discussions/2447 I was able to understand how to add this to my configuration. I've added the example given in that discussion to help future readers of the page.

* Update record.md

Added suggested changes and have also added wording beneath the example mentioning the configuration can be added on a per camera basis.
Have also built on the example to add object specific retentions timings - Not sure if it would be preferred to have it all within one example to not complicate things?

Let me know your thoughts

* Update record.md

Created Object Specific Retention header

* Typo

Co-authored-by: Blake Blackshear <blake@frigate.video>
2022-08-13 06:42:25 -05:00
Nick Mowen a94297ac93 Add link to supported encoding for each GPU 2022-08-13 06:32:24 -05:00
Caros2017 dfbebb63ff Update hardware_acceleration.md
Added the solution for the problem in https://github.com/blakeblackshear/frigate/issues/3227
2022-07-19 07:06:40 -05:00
Matthew Parlane e68f80b44a Use relative path without .. for rtmp documentation to fix #3481
../faq was used in rtmp.md which leads to the wrong URL when
the current URL ends in a slash due to 301 redirect of netlify
2022-07-19 07:06:27 -05:00
Blake Blackshear b36b63599b update stimeout to timeout 2022-07-05 11:55:55 -05:00
Blake Blackshear 1d45b0b351 update hwaccel docs 2022-06-11 06:42:09 -05:00
Blake Blackshear 75c2feb387 ffmpeg5 and intel va driver 2022-06-09 07:16:21 -05:00
Blake Blackshear bc078fcc88 remove deprecated max_seconds config option 2022-06-01 06:50:09 -05:00
Nicolas Mowen 93cd973e59 Update index.md (#3267) 2022-05-29 09:48:55 -05:00
Patrick Fruh 7b2b5bfa71 update hwaccel docs for nvidia docker-compose 2022-05-18 17:19:37 -05:00
Blake Blackshear efe3f96223 update hwaccel docs for RPi 2022-05-15 07:19:55 -05:00
Nicolas MowenandBlake Blackshear de244d6873 Send mqtt message when motion is detected (#3152)
* Send mqtt message when motion is detected

* Use object processing instead of passing mqtt client around

* Cleanup

* Formatting

* add comment

* Make off delay configurable.

* Handle updating each camera based on config off delay

* Formatting

* Update docker-compose.yml

* Fix processing issue

* Update mqtt docs

* Update main config docs

* Make sure multiple True values aren't published for the same motion

* Make sure multiple True values aren't published for the same motion

* Update payload to fit existing HA standard values

* Update docs to fit new values

* Update docs

* Update motion topic

* Use datetime.datetime and remove unused imports

* Cast to int

* Clarify motion detector behavior in docs

* Fix typo

Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2022-05-15 07:03:33 -05:00
Blake Blackshear f536494a38 Multi arch image with nvidia decode support
* build working

* update makefile

* use jellyfin-ffmpeg for all arch

* just build web once for all arch

* update actions build

* update docs
2022-04-24 13:52:12 -05:00
Blake Blackshear d890217447 Merge remote-tracking branch 'origin/master' into release-0.11.0 2022-04-18 06:45:30 -05:00
Nicolas Mowen a5016afdd4 FEAT: Ability to reorder & ability to hide Cameras in UI (#2981)
* Add options for reordering and hiding cameras selectively

* Add newline at end of camera file

* Make each camera for birdseye togglable as well

* Update names to be less ambiguous

* Update defaults

* Include sidebar change

* Remove birdseye toggle (will be added in separate PR)

* Remove birdseye toggle (will be added in separate PR)

* Remove birdseye toggle (will be added in separate PR)

* Update sidebar to only sort cameras once

* Simplify sorting logic
2022-04-15 07:23:02 -05:00
Nicolas Mowen d749cf2e6b Allow birdseye to be overridden at the camera level (#3083)
* Add camera level processing for birdseye

* Add camera level birdseye configruation

* Propogate birdseye from global

* Update docs to show that birdseye is overridable

* Fix incorrect default factory

* Update note to indicate values that can be overridden

* Cleanup config accessing

* Add tests for birdseye config behavior

* Fix mistake on test format

* Update tests
2022-04-15 06:59:30 -05:00
Nicolas Mowen a292f272e9 DOCS: Add stationary tracking config section to elaborate more on stationary tracking (#3077)
* Add docs to elaborate more on stationary tracking

* Add link to guide on avoiding stationary objects in driveway scenario

* Update wording in reference config

* Small cleanups

* Update with PR comments
2022-04-11 07:19:25 -05:00
Nicolas Mowen 51fd18f56d FEAT: Ability to set custom birdseye icon and birdseye docs (#2979)
* Show custom.png for birdseye icon if available

* Don't look for config value

* Add birdseye docs
2022-04-10 09:15:56 -05:00
Nick 045aac8933 Add object filter ratio (#2952)
* Add object ratio config parameters

Issue: #2948

* Add config test for object filter ratios

Issue: #2948

* Address review comments

- Accept `ratio` default
- Rename `bounds` to `box` for consistency
- Add migration for new field

Issue: #2948

* Fix logical errors

- field migrations require default values
- `clipped` referenced the wrong index for region, since it shifted
- missed an inclusion of `ratio` for detections in `process_frames`
- revert naming `o[2]` as `box` since it is out of scope!

This has now been test-run against a video, so I believe the kinks are
worked out.

Issue: #2948

* Update contributing notes for `make`

Issue: #2948

* Fix migration

- Ensure that defaults match between Event and migration script
- Deconflict migration script number (from rebase)

Issue: #2948

* Filter objects out of ratio bounds

Issue: #2948

* Update migration file to 009

Issue: #2948
2022-04-10 08:25:18 -05:00
Nicolas Mowen 2e5d082ef3 Update docs to include warnings about needing record enabled in the config (#3045)
* Update record docs to include note for automations.

* Update config to warn about recording needing to be enabled.

* Update wording from PR comments
2022-04-02 08:33:10 -05:00
Blake Blackshear b1a2b0cda2 make dynamic contrast optional and disable by default 2022-03-10 19:46:55 -06:00
Nicolas MowenandBlake Blackshear e4afe50509 Docs: Update recording docs to include examples of retain modes. (#2914)
* Update recording docs to include examples of retain modes.

* Minor adjustment

Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2022-03-10 06:37:20 -06:00
JohnMark Sill 3e07d4eddb feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
Blake Blackshear 08f573aaa5 Clarify max_frames setting 2022-02-20 08:17:43 -06:00
Blake Blackshear bfecee9650 add missing optional comment in docs 2022-02-18 21:18:26 -06:00
Blake Blackshear ff19cdb773 refactor stationary config into section 2022-02-18 21:18:26 -06:00
Blake Blackshear ee5b9986ad bump default stationary_threshold to 10s 2022-02-18 21:18:26 -06:00
Blake Blackshear 190f217b13 set stationary_threshold default to 5x fps 2022-02-18 21:18:26 -06:00
Blake Blackshear 3e90f3032c make stationary_threshold configurable 2022-02-18 21:18:26 -06:00
Blake Blackshear 5792cf042e fix resolution on reolink example 2022-02-18 21:18:26 -06:00
Blake Blackshear 304a569c7e remove outdated output args tip 2022-02-18 21:18:26 -06:00
Blake Blackshear 10c200dc24 clarify that zones are based on the bottom center 2022-02-18 21:18:26 -06:00
Blake Blackshear 34fa53afcc make motion the default retain mode 2022-02-18 21:18:26 -06:00