mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-04 02:05:21 +03:00
handle the stop event in the broadcast threads
This commit is contained in:
parent
600c45246b
commit
4ffce38fc0
@ -109,14 +109,15 @@ class FFMpegConverter:
|
|||||||
|
|
||||||
|
|
||||||
class BroadcastThread(threading.Thread):
|
class BroadcastThread(threading.Thread):
|
||||||
def __init__(self, camera, converter, websocket_server):
|
def __init__(self, camera, converter, websocket_server, stop_event):
|
||||||
super(BroadcastThread, self).__init__()
|
super(BroadcastThread, self).__init__()
|
||||||
self.camera = camera
|
self.camera = camera
|
||||||
self.converter = converter
|
self.converter = converter
|
||||||
self.websocket_server = websocket_server
|
self.websocket_server = websocket_server
|
||||||
|
self.stop_event = stop_event
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
while True:
|
while not self.stop_event.is_set():
|
||||||
buf = self.converter.read(65536)
|
buf = self.converter.read(65536)
|
||||||
if buf:
|
if buf:
|
||||||
manager = self.websocket_server.manager
|
manager = self.websocket_server.manager
|
||||||
@ -426,7 +427,7 @@ def output_frames(config: FrigateConfig, video_output_queue):
|
|||||||
cam_config.live.quality,
|
cam_config.live.quality,
|
||||||
)
|
)
|
||||||
broadcasters[camera] = BroadcastThread(
|
broadcasters[camera] = BroadcastThread(
|
||||||
camera, converters[camera], websocket_server
|
camera, converters[camera], websocket_server, stop_event
|
||||||
)
|
)
|
||||||
|
|
||||||
if config.birdseye.enabled:
|
if config.birdseye.enabled:
|
||||||
@ -439,7 +440,7 @@ def output_frames(config: FrigateConfig, video_output_queue):
|
|||||||
config.birdseye.restream,
|
config.birdseye.restream,
|
||||||
)
|
)
|
||||||
broadcasters["birdseye"] = BroadcastThread(
|
broadcasters["birdseye"] = BroadcastThread(
|
||||||
"birdseye", converters["birdseye"], websocket_server
|
"birdseye", converters["birdseye"], websocket_server, stop_event
|
||||||
)
|
)
|
||||||
|
|
||||||
websocket_thread.start()
|
websocket_thread.start()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user