mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-05 18:55:23 +03:00
Fixes
This commit is contained in:
parent
6c1fda11f6
commit
5748efb352
@ -195,7 +195,7 @@ class AudioEventMaintainer(threading.Thread):
|
|||||||
except FileExistsError:
|
except FileExistsError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
start_or_restart_ffmpeg(
|
self.audio_listener = start_or_restart_ffmpeg(
|
||||||
self.ffmpeg_cmd, logger, self.logpipe, None, self.audio_listener
|
self.ffmpeg_cmd, logger, self.logpipe, None, self.audio_listener
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@ -72,26 +72,28 @@ class EventProcessor(threading.Thread):
|
|||||||
except queue.Empty:
|
except queue.Empty:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
logger.error(f"Event received: {source_type} {event_type} {camera} {event_data['id']}")
|
logger.error(
|
||||||
|
f"Event received: {source_type} {event_type} {camera} {event_data['id']}"
|
||||||
self.timeline_queue.put(
|
|
||||||
(
|
|
||||||
camera,
|
|
||||||
source_type,
|
|
||||||
event_type,
|
|
||||||
self.events_in_process.get(event_data["id"]),
|
|
||||||
event_data,
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if source_type == EventTypeEnum.tracked_object:
|
if source_type == EventTypeEnum.tracked_object:
|
||||||
|
self.timeline_queue.put(
|
||||||
|
(
|
||||||
|
camera,
|
||||||
|
source_type,
|
||||||
|
event_type,
|
||||||
|
self.events_in_process.get(event_data["id"]),
|
||||||
|
event_data,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
if event_type == "start":
|
if event_type == "start":
|
||||||
self.events_in_process[event_data["id"]] = event_data
|
self.events_in_process[event_data["id"]] = event_data
|
||||||
continue
|
continue
|
||||||
|
|
||||||
self.handle_object_detection(event_type, camera, event_data)
|
self.handle_object_detection(event_type, camera, event_data)
|
||||||
elif source_type == EventTypeEnum.audio:
|
elif source_type == EventTypeEnum.audio:
|
||||||
self.handle_audio_detection(event_type, camera, event_data)
|
self.handle_audio_detection(event_type, event_data)
|
||||||
elif source_type == EventTypeEnum.api:
|
elif source_type == EventTypeEnum.api:
|
||||||
self.handle_external_detection(event_type, event_data)
|
self.handle_external_detection(event_type, event_data)
|
||||||
|
|
||||||
@ -217,7 +219,7 @@ class EventProcessor(threading.Thread):
|
|||||||
self.event_processed_queue.put((event_data["id"], camera))
|
self.event_processed_queue.put((event_data["id"], camera))
|
||||||
|
|
||||||
def handle_audio_detection(self, type: str, event_data: Event) -> None:
|
def handle_audio_detection(self, type: str, event_data: Event) -> None:
|
||||||
if type == "new":
|
if type == "start":
|
||||||
event = {
|
event = {
|
||||||
Event.id: event_data["id"],
|
Event.id: event_data["id"],
|
||||||
Event.label: event_data["label"],
|
Event.label: event_data["label"],
|
||||||
@ -235,14 +237,14 @@ class EventProcessor(threading.Thread):
|
|||||||
Event.end_time: event_data["end_time"],
|
Event.end_time: event_data["end_time"],
|
||||||
}
|
}
|
||||||
|
|
||||||
(
|
(
|
||||||
Event.insert(event)
|
Event.insert(event)
|
||||||
.on_conflict(
|
.on_conflict(
|
||||||
conflict_target=[Event.id],
|
conflict_target=[Event.id],
|
||||||
update=event,
|
update=event,
|
||||||
)
|
|
||||||
.execute()
|
|
||||||
)
|
)
|
||||||
|
.execute()
|
||||||
|
)
|
||||||
|
|
||||||
def handle_external_detection(self, type: str, event_data: Event) -> None:
|
def handle_external_detection(self, type: str, event_data: Event) -> None:
|
||||||
if type == "new":
|
if type == "new":
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user