mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-03 17:55:21 +03:00
Restart ffmpeg if process exceeds detect fps by 10
This commit is contained in:
parent
116edce3dc
commit
a707f21419
@ -272,6 +272,19 @@ class CameraWatchdog(threading.Thread):
|
|||||||
self.logger.info("FFmpeg didnt exit. Force killing...")
|
self.logger.info("FFmpeg didnt exit. Force killing...")
|
||||||
self.ffmpeg_detect_process.kill()
|
self.ffmpeg_detect_process.kill()
|
||||||
self.ffmpeg_detect_process.communicate()
|
self.ffmpeg_detect_process.communicate()
|
||||||
|
elif self.camera_fps.value >= (self.config.detect.fps + 10):
|
||||||
|
self.camera_fps.value = 0
|
||||||
|
self.logger.info(
|
||||||
|
f"{self.camera_name} exceeded fps limit. Exiting ffmpeg..."
|
||||||
|
)
|
||||||
|
self.ffmpeg_detect_process.terminate()
|
||||||
|
try:
|
||||||
|
self.logger.info("Waiting for ffmpeg to exit gracefully...")
|
||||||
|
self.ffmpeg_detect_process.communicate(timeout=30)
|
||||||
|
except sp.TimeoutExpired:
|
||||||
|
self.logger.info("FFmpeg didnt exit. Force killing...")
|
||||||
|
self.ffmpeg_detect_process.kill()
|
||||||
|
self.ffmpeg_detect_process.communicate()
|
||||||
|
|
||||||
for p in self.ffmpeg_other_processes:
|
for p in self.ffmpeg_other_processes:
|
||||||
poll = p["process"].poll()
|
poll = p["process"].poll()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user