mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-04-05 14:47:40 +03:00
populate and sort global audio filters for all audio labels
This commit is contained in:
parent
b74dcf43b2
commit
2ad3db251f
@ -614,6 +614,21 @@ class FrigateConfig(FrigateBaseModel):
|
|||||||
if self.ffmpeg.hwaccel_args == "auto":
|
if self.ffmpeg.hwaccel_args == "auto":
|
||||||
self.ffmpeg.hwaccel_args = auto_detect_hwaccel()
|
self.ffmpeg.hwaccel_args = auto_detect_hwaccel()
|
||||||
|
|
||||||
|
# Populate global audio filters for all audio labels
|
||||||
|
all_audio_labels = {
|
||||||
|
label
|
||||||
|
for label in load_labels("/audio-labelmap.txt", prefill=521).values()
|
||||||
|
if label
|
||||||
|
}
|
||||||
|
|
||||||
|
if self.audio.filters is None:
|
||||||
|
self.audio.filters = {}
|
||||||
|
|
||||||
|
for key in sorted(all_audio_labels - self.audio.filters.keys()):
|
||||||
|
self.audio.filters[key] = AudioFilterConfig()
|
||||||
|
|
||||||
|
self.audio.filters = dict(sorted(self.audio.filters.items()))
|
||||||
|
|
||||||
# Global config to propagate down to camera level
|
# Global config to propagate down to camera level
|
||||||
global_config = self.model_dump(
|
global_config = self.model_dump(
|
||||||
include={
|
include={
|
||||||
@ -672,12 +687,6 @@ class FrigateConfig(FrigateBaseModel):
|
|||||||
detector_config.model = model
|
detector_config.model = model
|
||||||
self.detectors[key] = detector_config
|
self.detectors[key] = detector_config
|
||||||
|
|
||||||
all_audio_labels = {
|
|
||||||
label
|
|
||||||
for label in load_labels("/audio-labelmap.txt", prefill=521).values()
|
|
||||||
if label
|
|
||||||
}
|
|
||||||
|
|
||||||
for name, camera in self.cameras.items():
|
for name, camera in self.cameras.items():
|
||||||
modified_global_config = global_config.copy()
|
modified_global_config = global_config.copy()
|
||||||
|
|
||||||
@ -801,11 +810,13 @@ class FrigateConfig(FrigateBaseModel):
|
|||||||
if camera_config.audio.filters is None:
|
if camera_config.audio.filters is None:
|
||||||
camera_config.audio.filters = {}
|
camera_config.audio.filters = {}
|
||||||
|
|
||||||
audio_keys = all_audio_labels
|
for key in sorted(all_audio_labels - camera_config.audio.filters.keys()):
|
||||||
audio_keys = audio_keys - camera_config.audio.filters.keys()
|
|
||||||
for key in audio_keys:
|
|
||||||
camera_config.audio.filters[key] = AudioFilterConfig()
|
camera_config.audio.filters[key] = AudioFilterConfig()
|
||||||
|
|
||||||
|
camera_config.audio.filters = dict(
|
||||||
|
sorted(camera_config.audio.filters.items())
|
||||||
|
)
|
||||||
|
|
||||||
# Add default filters
|
# Add default filters
|
||||||
object_keys = camera_config.objects.track
|
object_keys = camera_config.objects.track
|
||||||
if camera_config.objects.filters is None:
|
if camera_config.objects.filters is None:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user