diff --git a/Dockerfile b/Dockerfile index 0c244f901..058bb6ad7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -127,7 +127,9 @@ RUN apt-get -qq update \ libtbb2 libtbb-dev libdc1394-22-dev libopenexr-dev \ libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev \ # scipy dependencies - gcc gfortran libopenblas-dev liblapack-dev && \ + gcc gfortran libopenblas-dev liblapack-dev \ + # faster-fifo dependencies + g++ cython3 && \ rm -rf /var/lib/apt/lists/* RUN wget -q https://bootstrap.pypa.io/get-pip.py -O get-pip.py \ diff --git a/frigate/app.py b/frigate/app.py index 9d85f461e..75eac59a0 100644 --- a/frigate/app.py +++ b/frigate/app.py @@ -6,7 +6,7 @@ import shutil import signal import sys import traceback -from multiprocessing.queues import Queue +from faster_fifo import Queue from multiprocessing.synchronize import Event as MpEvent from types import FrameType from typing import Optional diff --git a/frigate/events/external.py b/frigate/events/external.py index 5422de260..bd93999d2 100644 --- a/frigate/events/external.py +++ b/frigate/events/external.py @@ -6,7 +6,7 @@ import logging import os import random import string -from multiprocessing.queues import Queue +from faster_fifo import Queue from typing import Optional import cv2 diff --git a/frigate/events/maintainer.py b/frigate/events/maintainer.py index 264ab1142..158888374 100644 --- a/frigate/events/maintainer.py +++ b/frigate/events/maintainer.py @@ -3,7 +3,7 @@ import logging import queue import threading from enum import Enum -from multiprocessing.queues import Queue +from faster_fifo import Queue from multiprocessing.synchronize import Event as MpEvent from typing import Dict diff --git a/frigate/log.py b/frigate/log.py index 5dbf4eed0..d826032d2 100644 --- a/frigate/log.py +++ b/frigate/log.py @@ -7,7 +7,7 @@ import signal import threading from collections import deque from logging import handlers -from multiprocessing.queues import Queue +from faster_fifo import Queue from types import FrameType from typing import Deque, Optional diff --git a/frigate/timeline.py b/frigate/timeline.py index 9ca617ba9..ed9b305f7 100644 --- a/frigate/timeline.py +++ b/frigate/timeline.py @@ -3,7 +3,7 @@ import logging import queue import threading -from multiprocessing.queues import Queue +from faster_fifo import Queue from multiprocessing.synchronize import Event as MpEvent from frigate.config import FrigateConfig diff --git a/frigate/types.py b/frigate/types.py index 8c3e54654..41752508c 100644 --- a/frigate/types.py +++ b/frigate/types.py @@ -1,5 +1,5 @@ from multiprocessing.context import Process -from multiprocessing.queues import Queue +from faster_fifo import Queue from multiprocessing.sharedctypes import Synchronized from typing import Optional, TypedDict diff --git a/requirements-wheels.txt b/requirements-wheels.txt index f02317e41..19bd1077c 100644 --- a/requirements-wheels.txt +++ b/requirements-wheels.txt @@ -1,5 +1,6 @@ click == 8.1.* Flask == 2.3.* +faster-fifo == 1.4.* imutils == 0.5.* matplotlib == 3.7.* mypy == 0.942