diff --git a/frigate/video.py b/frigate/video.py index 946e50b2b..21eed9dac 100755 --- a/frigate/video.py +++ b/frigate/video.py @@ -176,7 +176,6 @@ def capture_frames( try: frame_buffer[:] = ffmpeg_process.stdout.read(frame_size) except Exception as e: - fps.value = 0 logger.error(f"{camera_name}: Unable to read frames from ffmpeg process.") if ffmpeg_process.poll() != None: @@ -243,6 +242,7 @@ class CameraWatchdog(threading.Thread): now = datetime.datetime.now().timestamp() if not self.capture_thread.is_alive(): + self.camera_fps.value = 0 self.logger.error( f"Ffmpeg process crashed unexpectedly for {self.camera_name}." ) @@ -252,6 +252,7 @@ class CameraWatchdog(threading.Thread): self.logpipe.dump() self.start_ffmpeg_detect() elif now - self.capture_thread.current_frame.value > 20: + self.camera_fps.value = 0 self.logger.info( f"No frames received from {self.camera_name} in 20 seconds. Exiting ffmpeg..." )