浏览代码

allow the best image timeout to be configurable

Blake Blackshear 4 年之前
父节点
当前提交
b35cc01035
共有 3 个文件被更改,包括 9 次插入3 次删除
  1. 1 1
      README.md
  2. 6 0
      config/config.example.yml
  3. 2 2
      frigate/object_processing.py

+ 1 - 1
README.md

@@ -19,7 +19,7 @@ You see multiple bounding boxes because it draws bounding boxes from all frames
 Run the container with
 ```bash
 docker run --rm \
--name frigate \
+-name blakeblackshear/frigate:stable \
 --privileged \
 --shm-size=512m \ # should work for a 2-3 cameras
 -v /dev/bus/usb:/dev/bus/usb \

+ 6 - 0
config/config.example.yml

@@ -140,6 +140,12 @@ cameras:
     ################
     take_frame: 1
 
+    ################
+    # The number of seconds to retain the highest scoring image for the best.jpg endpoint before allowing it
+    # to be replaced by a newer image. Defaults to 60 seconds.
+    ################
+    best_image_timeout: 60
+
     ################
     # MQTT settings
     ################

+ 2 - 2
frigate/object_processing.py

@@ -193,8 +193,8 @@ class CameraState():
                 current_best = self.best_objects[object_type]
                 now = datetime.datetime.now().timestamp()
                 # if the object is a higher score than the current best score 
-                # or the current object is more than 1 minute old, use the new object
-                if obj_copy['score'] > current_best['score'] or (now - current_best['frame_time']) > 60:
+                # or the current object is older than desired, use the new object
+                if obj_copy['score'] > current_best['score'] or (now - current_best['frame_time']) > self.config.get('best_image_timeout', 60):
                     obj_copy['frame'] = np.copy(self.current_frame)
                     self.best_objects[object_type] = obj_copy
                     for c in self.callbacks['snapshot']: