Skip to content

Commit

Permalink
SHM tweaks (blakeblackshear#15274)
Browse files Browse the repository at this point in the history
* Use env var to control max number of frames

* Handle type

* Fix frame_name not being sent

* Formatting
  • Loading branch information
NickM-27 authored Dec 1, 2024
1 parent 5802a66 commit 002fdea
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 2 deletions.
6 changes: 5 additions & 1 deletion frigate/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
EXPORT_DIR,
MODEL_CACHE_DIR,
RECORD_DIR,
SHM_FRAMES_VAR,
)
from frigate.db.sqlitevecq import SqliteVecQueueDatabase
from frigate.embeddings import EmbeddingsContext, manage_embeddings
Expand Down Expand Up @@ -523,7 +524,10 @@ def shm_frame_count(self) -> int:
if cam_total_frame_size == 0.0:
return 0

shm_frame_count = min(200, int(available_shm / (cam_total_frame_size)))
shm_frame_count = min(
int(os.environ.get(SHM_FRAMES_VAR, "50")),
int(available_shm / (cam_total_frame_size)),
)

logger.debug(
f"Calculated total camera size {available_shm} / {cam_total_frame_size} :: {shm_frame_count} frames for each camera in SHM"
Expand Down
2 changes: 2 additions & 0 deletions frigate/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
PLUS_ENV_VAR = "PLUS_API_KEY"
PLUS_API_HOST = "https://api.frigate.video"

SHM_FRAMES_VAR = "SHM_MAX_FRAMES"

# Attribute & Object constants

DEFAULT_ATTRIBUTE_LABEL_MAP = {
Expand Down
4 changes: 3 additions & 1 deletion frigate/review/maintainer.py
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,9 @@ def run(self) -> None:

if not self.config.cameras[camera].record.enabled:
if current_segment:
self.update_existing_segment(current_segment, frame_time, [])
self.update_existing_segment(
current_segment, frame_name, frame_time, []
)

continue

Expand Down

0 comments on commit 002fdea

Please sign in to comment.