config updaters in enrichments

This commit is contained in:
Josh Hawkins 2026-03-07 16:54:29 -06:00
parent b53a47c666
commit 826735bee2
3 changed files with 18 additions and 9 deletions

View File

@ -12,7 +12,7 @@ from frigate.comms.embeddings_updater import EmbeddingsRequestEnum
from frigate.comms.event_metadata_updater import EventMetadataPublisher
from frigate.comms.inter_process import InterProcessRequestor
from frigate.config import FrigateConfig
from frigate.config.classification import LicensePlateRecognitionConfig
from frigate.config.enrichment_updater import EnrichmentConfigEnum
from frigate.data_processing.common.license_plate.mixin import (
WRITE_DEBUG_IMAGES,
LicensePlateProcessingMixin,
@ -48,9 +48,12 @@ class LicensePlatePostProcessor(LicensePlateProcessingMixin, PostProcessorApi):
self.sub_label_publisher = sub_label_publisher
super().__init__(config, metrics, model_runner)
def update_config(self, lpr_config: LicensePlateRecognitionConfig) -> None:
def update_config(self, update_type: EnrichmentConfigEnum, payload: Any) -> None:
"""Update LPR config at runtime."""
self.lpr_config = lpr_config
if update_type != EnrichmentConfigEnum.lpr:
return
self.lpr_config = payload
logger.debug("LPR config updated dynamically")
def process_data(

View File

@ -19,7 +19,7 @@ from frigate.comms.event_metadata_updater import (
)
from frigate.comms.inter_process import InterProcessRequestor
from frigate.config import FrigateConfig
from frigate.config.classification import FaceRecognitionConfig
from frigate.config.enrichment_updater import EnrichmentConfigEnum
from frigate.const import FACE_DIR, MODEL_CACHE_DIR
from frigate.data_processing.common.face.model import (
ArcFaceRecognizer,
@ -96,9 +96,12 @@ class FaceRealTimeProcessor(RealTimeProcessorApi):
self.recognizer.build()
def update_config(self, face_config: FaceRecognitionConfig) -> None:
def update_config(self, update_type: EnrichmentConfigEnum, payload: Any) -> None:
"""Update face recognition config at runtime."""
self.face_config = face_config
if update_type != EnrichmentConfigEnum.face_recognition:
return
self.face_config = payload
logger.debug("Face recognition config updated dynamically")
def __download_models(self, path: str) -> None:

View File

@ -8,7 +8,7 @@ import numpy as np
from frigate.comms.event_metadata_updater import EventMetadataPublisher
from frigate.comms.inter_process import InterProcessRequestor
from frigate.config import FrigateConfig
from frigate.config.classification import LicensePlateRecognitionConfig
from frigate.config.enrichment_updater import EnrichmentConfigEnum
from frigate.data_processing.common.license_plate.mixin import (
LicensePlateProcessingMixin,
)
@ -41,9 +41,12 @@ class LicensePlateRealTimeProcessor(LicensePlateProcessingMixin, RealTimeProcess
self.camera_current_cars: dict[str, list[str]] = {}
super().__init__(config, metrics)
def update_config(self, lpr_config: LicensePlateRecognitionConfig) -> None:
def update_config(self, update_type: EnrichmentConfigEnum, payload: Any) -> None:
"""Update LPR config at runtime."""
self.lpr_config = lpr_config
if update_type != EnrichmentConfigEnum.lpr:
return
self.lpr_config = payload
logger.debug("LPR config updated dynamically")
def process_frame(