From 0f9f9bc44389107750293d4a16f5959924d90aba Mon Sep 17 00:00:00 2001 From: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com> Date: Wed, 24 Dec 2025 08:10:04 -0600 Subject: [PATCH] fix crash when dynamically adding cameras depending on where we are in the update loop, camera configs might not be updated yet and we are receiving detections already --- frigate/embeddings/maintainer.py | 2 +- frigate/output/output.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/frigate/embeddings/maintainer.py b/frigate/embeddings/maintainer.py index c74bc2310..1a0950cbb 100644 --- a/frigate/embeddings/maintainer.py +++ b/frigate/embeddings/maintainer.py @@ -633,7 +633,7 @@ class EmbeddingMaintainer(threading.Thread): camera, frame_name, _, _, motion_boxes, _ = data - if not camera or len(motion_boxes) == 0: + if not camera or len(motion_boxes) == 0 or camera not in self.config.cameras: return camera_config = self.config.cameras[camera] diff --git a/frigate/output/output.py b/frigate/output/output.py index 674c02b78..a44415000 100644 --- a/frigate/output/output.py +++ b/frigate/output/output.py @@ -139,9 +139,11 @@ class OutputProcess(FrigateProcess): if CameraConfigUpdateEnum.add in updates: for camera in updates["add"]: jsmpeg_cameras[camera] = JsmpegCamera( - cam_config, self.stop_event, websocket_server + self.config.cameras[camera], self.stop_event, websocket_server + ) + preview_recorders[camera] = PreviewRecorder( + self.config.cameras[camera] ) - preview_recorders[camera] = PreviewRecorder(cam_config) preview_write_times[camera] = 0 if (