Miscellaneous Fixes (0.17 Beta) (#21320)
CI / AMD64 Build (push) Waiting to run
CI / ARM Build (push) Waiting to run
CI / Jetson Jetpack 6 (push) Waiting to run
CI / AMD64 Extra Build (push) Blocked by required conditions
CI / Synaptics Build (push) Blocked by required conditions
CI / Assemble and push default build (push) Blocked by required conditions
CI / ARM Extra Build (push) Blocked by required conditions

* Exclude D-FINE from using CUDA Graphs

* fix objects count in detail stream

* Add debugging for classification models

* validate idb stored stream name and reset if invalid

fixes https://github.com/blakeblackshear/frigate/discussions/21311

* ensure jina loading takes place in the main thread to prevent lazily importing tensorflow in another thread later

reverts atexit changes in https://github.com/blakeblackshear/frigate/pull/21301 and fixes https://github.com/blakeblackshear/frigate/discussions/21306

* revert old atexit change in bird too

* revert types

* ensure we bail in the live mode hook for empty camera groups

prevent infinite rendering on camera groups with no cameras

---------

Co-authored-by: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>
This commit is contained in:
Nicolas Mowen
2025-12-16 22:35:43 -06:00
committed by GitHub
co-authored by Josh Hawkins
parent c292cd207d
commit 78eace258e
11 changed files with 93 additions and 44 deletions
-23
View File
@@ -146,29 +146,6 @@ class EmbeddingMaintainer(threading.Thread):
self.detected_license_plates: dict[str, dict[str, Any]] = {}
self.genai_client = get_genai_client(config)
# Pre-import TensorFlow/tflite on main thread to avoid atexit registration issues
# when importing from worker threads later (e.g., during dynamic config updates)
if (
self.config.classification.bird.enabled
or len(self.config.classification.custom) > 0
):
try:
from tflite_runtime.interpreter import Interpreter # noqa: F401
except ModuleNotFoundError:
try:
from tensorflow.lite.python.interpreter import ( # noqa: F401
Interpreter,
)
logger.debug(
"Pre-imported TensorFlow Interpreter on main thread for classification models"
)
except Exception as e:
logger.warning(
f"Failed to pre-import TensorFlow Interpreter: {e}. "
"Classification models may fail to load if added dynamically."
)
# model runners to share between realtime and post processors
if self.config.lpr.enabled:
lpr_model_runner = LicensePlateModelRunner(