From 4d6de35534c20b556934918e345654b9158f8122 Mon Sep 17 00:00:00 2001 From: Sebastian Englbrecht Date: Fri, 18 Nov 2022 16:12:01 +0100 Subject: [PATCH] Sort out Event disambiguity There was a name collision of multiprocessing Event type and frigate events --- frigate/app.py | 6 +++--- frigate/events.py | 5 +++-- frigate/stats.py | 4 ++-- frigate/watchdog.py | 4 ++-- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/frigate/app.py b/frigate/app.py index 0f8acce66..5728a0493 100644 --- a/frigate/app.py +++ b/frigate/app.py @@ -1,7 +1,7 @@ import logging import multiprocessing as mp from multiprocessing.queues import Queue -from multiprocessing.synchronize import Event +from multiprocessing.synchronize import Event as MpEvent import os import signal import sys @@ -38,10 +38,10 @@ logger = logging.getLogger(__name__) class FrigateApp: def __init__(self) -> None: - self.stop_event: Event = mp.Event() + self.stop_event: MpEvent = mp.Event() self.detection_queue: Queue = mp.Queue() self.detectors: dict[str, ObjectDetectProcess] = {} - self.detection_out_events: dict[str, Event] = {} + self.detection_out_events: dict[str, MpEvent] = {} self.detection_shms: list[mp.shared_memory.SharedMemory] = [] self.log_queue: Queue = mp.Queue() self.plus_api = PlusApi() diff --git a/frigate/events.py b/frigate/events.py index 738646b8f..5f30f8633 100644 --- a/frigate/events.py +++ b/frigate/events.py @@ -14,6 +14,7 @@ from frigate.models import Event from frigate.types import CameraMetricsTypes from multiprocessing.queues import Queue +from multiprocessing.synchronize import Event as MpEvent from typing import Dict logger = logging.getLogger(__name__) @@ -47,7 +48,7 @@ class EventProcessor(threading.Thread): camera_processes: dict[str, CameraMetricsTypes], event_queue: Queue, event_processed_queue: Queue, - stop_event: Event, + stop_event: MpEvent, ): threading.Thread.__init__(self) self.name = "event_processor" @@ -158,7 +159,7 @@ class EventProcessor(threading.Thread): class EventCleanup(threading.Thread): - def __init__(self, config: FrigateConfig, stop_event: Event): + def __init__(self, config: FrigateConfig, stop_event: MpEvent): threading.Thread.__init__(self) self.name = "event_cleanup" self.config = config diff --git a/frigate/stats.py b/frigate/stats.py index d4899bb6d..62c8eeec6 100644 --- a/frigate/stats.py +++ b/frigate/stats.py @@ -8,7 +8,7 @@ import os import requests from typing import Optional, Any from paho.mqtt.client import Client -from multiprocessing.synchronize import Event +from multiprocessing.synchronize import Event as MpEvent from frigate.config import FrigateConfig from frigate.const import RECORD_DIR, CLIPS_DIR, CACHE_DIR @@ -148,7 +148,7 @@ class StatsEmitter(threading.Thread): stats_tracking: StatsTrackingTypes, mqtt_client: Client, topic_prefix: str, - stop_event: Event, + stop_event: MpEvent, ): threading.Thread.__init__(self) self.name = "frigate_stats_emitter" diff --git a/frigate/watchdog.py b/frigate/watchdog.py index 4316dc316..96ba2e371 100644 --- a/frigate/watchdog.py +++ b/frigate/watchdog.py @@ -7,13 +7,13 @@ import signal from frigate.object_detection import ObjectDetectProcess from frigate.util import restart_frigate -from multiprocessing.synchronize import Event +from multiprocessing.synchronize import Event as MpEvent logger = logging.getLogger(__name__) class FrigateWatchdog(threading.Thread): - def __init__(self, detectors: dict[str, ObjectDetectProcess], stop_event: Event): + def __init__(self, detectors: dict[str, ObjectDetectProcess], stop_event: MpEvent): threading.Thread.__init__(self) self.name = "frigate_watchdog" self.detectors = detectors