mirror of
				https://github.com/blakeblackshear/frigate.git
				synced 2025-10-27 10:52:11 +01:00 
			
		
		
		
	* Basic functionality
* Threaded motion estimator
* Revert "Threaded motion estimator"
This reverts commit 3171801607.
* Don't detect motion when ptz is moving
* fix motion logic
* fix mypy error
* Add threaded queue for movement for slower ptzs
* Move queues per camera
* Move autotracker start to app.py
* iou value for tracked object
* mqtt callback
* tracked object should be initially motionless
* only draw thicker box if autotracking is enabled
* Init if enabled when initially disabled in config
* Fix init
* Thread names
* Always use motion estimator
* docs
* clarify fov support
* remove size ratio
* use mp event instead of value for ptz status
* update autotrack at half fps
* fix merge conflict
* fix event type for mypy
* clean up
* Clean up
* remove unused code
* merge conflict fix
* docs: update link to object_detectors page
* Update docs/docs/configuration/autotracking.md
Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
* clarify wording
* pass actual instances directly
* default return preset
* fix type
* Error message when onvif init fails
* disable autotracking if onvif init fails
* disable autotracking if onvif init fails
* ptz module
* verify required_zones in config
* update util after dev merge
---------
Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
		
	
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from multiprocessing.context import Process
 | |
| from multiprocessing.sharedctypes import Synchronized
 | |
| from multiprocessing.synchronize import Event
 | |
| from typing import Optional, TypedDict
 | |
| 
 | |
| from faster_fifo import Queue
 | |
| 
 | |
| from frigate.object_detection import ObjectDetectProcess
 | |
| 
 | |
| 
 | |
| class CameraMetricsTypes(TypedDict):
 | |
|     camera_fps: Synchronized
 | |
|     capture_process: Optional[Process]
 | |
|     detection_enabled: Synchronized
 | |
|     detection_fps: Synchronized
 | |
|     detection_frame: Synchronized
 | |
|     ffmpeg_pid: Synchronized
 | |
|     frame_queue: Queue
 | |
|     motion_enabled: Synchronized
 | |
|     improve_contrast_enabled: Synchronized
 | |
|     ptz_autotracker_enabled: Synchronized
 | |
|     ptz_stopped: Event
 | |
|     motion_threshold: Synchronized
 | |
|     motion_contour_area: Synchronized
 | |
|     process: Optional[Process]
 | |
|     process_fps: Synchronized
 | |
|     read_start: Synchronized
 | |
|     skipped_fps: Synchronized
 | |
| 
 | |
| 
 | |
| class FeatureMetricsTypes(TypedDict):
 | |
|     audio_enabled: Synchronized
 | |
|     record_enabled: Synchronized
 | |
| 
 | |
| 
 | |
| class StatsTrackingTypes(TypedDict):
 | |
|     camera_metrics: dict[str, CameraMetricsTypes]
 | |
|     detectors: dict[str, ObjectDetectProcess]
 | |
|     started: int
 | |
|     latest_frigate_version: str
 | |
|     last_updated: int
 | |
|     processes: dict[str, int]
 |