Only check if an object is stationary to avoid mqtt snapshot

This commit is contained in:
Nicolas Mowen 2025-05-15 07:07:05 -06:00
parent c15fbee537
commit 599699aef8
2 changed files with 6 additions and 6 deletions

View File

@ -249,7 +249,7 @@ class TrackedObjectProcessor(threading.Thread):
def should_mqtt_snapshot(self, camera, obj: TrackedObject):
# object never changed position
if obj.obj_data["position_changes"] == 0:
if obj.is_stationary():
return False
# if there are required zones and there is no overlap

View File

@ -384,16 +384,16 @@ class TrackedObject:
return event
def is_active(self):
def is_active(self) -> bool:
return not self.is_stationary()
def is_stationary(self):
def is_stationary(self) -> bool:
return (
self.obj_data["motionless_count"]
> self.camera_config.detect.stationary.threshold
)
def get_thumbnail(self, ext: str):
def get_thumbnail(self, ext: str) -> bytes | None:
img_bytes = self.get_img_bytes(
ext, timestamp=False, bounding_box=False, crop=True, height=175
)
@ -404,7 +404,7 @@ class TrackedObject:
_, img = cv2.imencode(f".{ext}", np.zeros((175, 175, 3), np.uint8))
return img.tobytes()
def get_clean_png(self):
def get_clean_png(self) -> bytes | None:
if self.thumbnail_data is None:
return None
@ -433,7 +433,7 @@ class TrackedObject:
crop=False,
height: int | None = None,
quality: int | None = None,
):
) -> bytes | None:
if self.thumbnail_data is None:
return None