mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-07-26 13:47:03 +02:00
Fix go2rtc init (#18708)
* Cleanup process handling * Adjust process name
This commit is contained in:
parent
d7a446e0f6
commit
c3ba834a1c
@ -4,13 +4,13 @@ from statistics import mean
|
||||
|
||||
import numpy as np
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.config import DetectorTypeEnum
|
||||
from frigate.object_detection.base import (
|
||||
ObjectDetectProcess,
|
||||
RemoteObjectDetector,
|
||||
load_labels,
|
||||
)
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
my_frame = np.expand_dims(np.full((300, 300, 3), 1, np.uint8), axis=0)
|
||||
labels = load_labels("/labelmap.txt")
|
||||
@ -91,7 +91,7 @@ edgetpu_process_2 = ObjectDetectProcess(
|
||||
)
|
||||
|
||||
for x in range(0, 10):
|
||||
camera_process = util.Process(
|
||||
camera_process = FrigateProcess(
|
||||
target=start, args=(x, 300, detection_queue, events[str(x)])
|
||||
)
|
||||
camera_process.daemon = True
|
||||
|
@ -16,9 +16,9 @@ from frigate.const import CONFIG_DIR, FACE_DIR
|
||||
from frigate.data_processing.types import DataProcessorMetrics
|
||||
from frigate.db.sqlitevecq import SqliteVecQueueDatabase
|
||||
from frigate.models import Event
|
||||
from frigate.util import Process as FrigateProcess
|
||||
from frigate.util.builtin import serialize
|
||||
from frigate.util.classification import kickoff_model_training
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
from .maintainer import EmbeddingMaintainer
|
||||
from .util import ZScoreNormalization
|
||||
|
@ -11,7 +11,6 @@ from typing import Any, Tuple
|
||||
|
||||
import numpy as np
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.comms.detections_updater import DetectionPublisher, DetectionTypeEnum
|
||||
from frigate.comms.event_metadata_updater import (
|
||||
EventMetadataPublisher,
|
||||
@ -40,6 +39,7 @@ from frigate.ffmpeg_presets import parse_preset_input
|
||||
from frigate.log import LogPipe
|
||||
from frigate.object_detection.base import load_labels
|
||||
from frigate.util.builtin import get_ffmpeg_arg_list
|
||||
from frigate.util.process import FrigateProcess
|
||||
from frigate.video import start_or_restart_ffmpeg, stop_ffmpeg
|
||||
|
||||
try:
|
||||
@ -76,7 +76,7 @@ def get_ffmpeg_command(ffmpeg: FfmpegConfig) -> list[str]:
|
||||
)
|
||||
|
||||
|
||||
class AudioProcessor(util.Process):
|
||||
class AudioProcessor(FrigateProcess):
|
||||
name = "frigate.audio_manager"
|
||||
|
||||
def __init__(
|
||||
|
@ -7,7 +7,6 @@ from multiprocessing.synchronize import Event as MpEvent
|
||||
|
||||
import numpy as np
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.comms.object_detector_signaler import (
|
||||
ObjectDetectorPublisher,
|
||||
ObjectDetectorSubscriber,
|
||||
@ -21,6 +20,7 @@ from frigate.detectors.detector_config import (
|
||||
)
|
||||
from frigate.util.builtin import EventsPerSecond, load_labels
|
||||
from frigate.util.image import SharedMemoryFrameManager, UntrackedSharedMemory
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
from .util import tensor_transform
|
||||
|
||||
@ -85,7 +85,7 @@ class LocalObjectDetector(ObjectDetector):
|
||||
return self.detect_api.detect_raw(tensor_input=tensor_input)
|
||||
|
||||
|
||||
class DetectorRunner(util.Process):
|
||||
class DetectorRunner(FrigateProcess):
|
||||
def __init__(
|
||||
self,
|
||||
name,
|
||||
@ -172,7 +172,7 @@ class ObjectDetectProcess:
|
||||
self.detection_queue = detection_queue
|
||||
self.avg_inference_speed = Value("d", 0.01)
|
||||
self.detection_start = Value("d", 0.0)
|
||||
self.detect_process: util.Process | None = None
|
||||
self.detect_process: FrigateProcess | None = None
|
||||
self.config = config
|
||||
self.detector_config = detector_config
|
||||
self.start_or_restart()
|
||||
@ -195,7 +195,7 @@ class ObjectDetectProcess:
|
||||
if (self.detect_process is not None) and self.detect_process.is_alive():
|
||||
self.stop()
|
||||
self.detect_process = DetectorRunner(
|
||||
f"detector:{self.name}",
|
||||
f"frigate.detector:{self.name}",
|
||||
self.detection_queue,
|
||||
self.cameras,
|
||||
self.avg_inference_speed,
|
||||
|
@ -14,7 +14,6 @@ from ws4py.server.wsgirefserver import (
|
||||
)
|
||||
from ws4py.server.wsgiutils import WebSocketWSGIApplication
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.comms.detections_updater import DetectionSubscriber, DetectionTypeEnum
|
||||
from frigate.comms.ws import WebSocket
|
||||
from frigate.config import FrigateConfig
|
||||
@ -27,6 +26,7 @@ from frigate.output.birdseye import Birdseye
|
||||
from frigate.output.camera import JsmpegCamera
|
||||
from frigate.output.preview import PreviewRecorder
|
||||
from frigate.util.image import SharedMemoryFrameManager, get_blank_yuv_frame
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -71,7 +71,7 @@ def check_disabled_camera_update(
|
||||
birdseye.all_cameras_disabled()
|
||||
|
||||
|
||||
class OutputProcess(util.Process):
|
||||
class OutputProcess(FrigateProcess):
|
||||
def __init__(self, config: FrigateConfig) -> None:
|
||||
super().__init__(name="frigate.output", daemon=True)
|
||||
self.config = config
|
||||
|
@ -7,7 +7,7 @@ from playhouse.sqliteq import SqliteQueueDatabase
|
||||
from frigate.config import FrigateConfig
|
||||
from frigate.models import Recordings, ReviewSegment
|
||||
from frigate.record.maintainer import RecordingMaintainer
|
||||
from frigate.util import Process as FrigateProcess
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -2,14 +2,14 @@
|
||||
|
||||
import logging
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.config import FrigateConfig
|
||||
from frigate.review.maintainer import ReviewSegmentMaintainer
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class ReviewProcess(util.Process):
|
||||
class ReviewProcess(FrigateProcess):
|
||||
def __init__(self, config: FrigateConfig) -> None:
|
||||
super().__init__(name="frigate.review_segment_manager", daemon=True)
|
||||
self.config = config
|
||||
|
@ -1,3 +0,0 @@
|
||||
from .process import Process
|
||||
|
||||
__all__ = ["Process"]
|
@ -14,7 +14,7 @@ from frigate.comms.embeddings_updater import EmbeddingsRequestEnum, EmbeddingsRe
|
||||
from frigate.comms.inter_process import InterProcessRequestor
|
||||
from frigate.const import CLIPS_DIR, MODEL_CACHE_DIR, UPDATE_MODEL_STATE
|
||||
from frigate.types import ModelStatusTypesEnum
|
||||
from frigate.util import Process
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
BATCH_SIZE = 16
|
||||
EPOCHS = 50
|
||||
@ -144,7 +144,7 @@ def kickoff_model_training(
|
||||
# run training in sub process so that
|
||||
# tensorflow will free CPU / GPU memory
|
||||
# upon training completion
|
||||
training_process = Process(
|
||||
training_process = FrigateProcess(
|
||||
target=__train_classification_model,
|
||||
name=f"model_training:{model_name}",
|
||||
args=(model_name,),
|
||||
|
@ -39,7 +39,7 @@ class BaseProcess(mp.Process):
|
||||
pass
|
||||
|
||||
|
||||
class Process(BaseProcess):
|
||||
class FrigateProcess(BaseProcess):
|
||||
logger: logging.Logger
|
||||
|
||||
@property
|
||||
|
@ -11,7 +11,6 @@ from typing import Any
|
||||
|
||||
import cv2
|
||||
|
||||
import frigate.util as util
|
||||
from frigate.camera import CameraMetrics, PTZMetrics
|
||||
from frigate.comms.inter_process import InterProcessRequestor
|
||||
from frigate.config import CameraConfig, DetectConfig, ModelConfig
|
||||
@ -51,6 +50,7 @@ from frigate.util.object import (
|
||||
is_object_filtered,
|
||||
reduce_detections,
|
||||
)
|
||||
from frigate.util.process import FrigateProcess
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -437,7 +437,7 @@ class CameraCaptureRunner(threading.Thread):
|
||||
)
|
||||
|
||||
|
||||
class CameraCapture(util.Process):
|
||||
class CameraCapture(FrigateProcess):
|
||||
def __init__(
|
||||
self, config: CameraConfig, shm_frame_count: int, camera_metrics: CameraMetrics
|
||||
) -> None:
|
||||
@ -461,7 +461,7 @@ class CameraCapture(util.Process):
|
||||
camera_watchdog.join()
|
||||
|
||||
|
||||
class CameraTracker(util.Process):
|
||||
class CameraTracker(FrigateProcess):
|
||||
def __init__(
|
||||
self,
|
||||
config: CameraConfig,
|
||||
|
Loading…
Reference in New Issue
Block a user