feat: Integrate auto-recording feature into USDA Vision Camera System

- Added instructions for implementing auto-recording functionality in the React app.
- Updated TypeScript interfaces to include new fields for auto-recording status and configuration.
- Created new API endpoints for enabling/disabling auto-recording and retrieving system status.
- Enhanced UI components to display auto-recording status, controls, and error handling.
- Developed a comprehensive Auto-Recording Feature Implementation Guide.
- Implemented a test script for validating auto-recording functionality, including configuration checks and API connectivity.
- Introduced AutoRecordingManager to manage automatic recording based on machine state changes with retry logic.
- Established a retry mechanism for failed recording attempts and integrated status tracking for auto-recording.
This commit is contained in:
Alireza Vaezi
2025-07-29 09:43:14 -04:00
parent 0a26a8046e
commit 0c92b6c277
18 changed files with 1543 additions and 91 deletions

View File

@@ -22,24 +22,28 @@
"api_host": "0.0.0.0",
"api_port": 8000,
"enable_api": true,
"timezone": "America/New_York"
"timezone": "America/New_York",
"auto_recording_enabled": true
},
"cameras": [
{
"name": "camera1",
"machine_topic": "vibratory_conveyor",
"storage_path": "/storage/camera1",
"exposure_ms": 1.0,
"gain": 3.5,
"exposure_ms": 0.5,
"gain": 0.5,
"target_fps": 0,
"enabled": true,
"auto_start_recording_enabled": true,
"auto_recording_max_retries": 3,
"auto_recording_retry_delay_seconds": 5,
"sharpness": 100,
"contrast": 100,
"saturation": 100,
"gamma": 85,
"gamma": 110,
"noise_filter_enabled": false,
"denoise_3d_enabled": false,
"auto_white_balance": false,
"auto_white_balance": true,
"color_temperature_preset": 0,
"anti_flicker_enabled": false,
"light_frequency": 1,
@@ -51,14 +55,17 @@
"name": "camera2",
"machine_topic": "blower_separator",
"storage_path": "/storage/camera2",
"exposure_ms": 1.0,
"gain": 3.5,
"exposure_ms": 0.5,
"gain": 0.3,
"target_fps": 0,
"enabled": true,
"auto_start_recording_enabled": true,
"auto_recording_max_retries": 3,
"auto_recording_retry_delay_seconds": 5,
"sharpness": 100,
"contrast": 100,
"saturation": 100,
"gamma": 100,
"saturation": 75,
"gamma": 110,
"noise_filter_enabled": false,
"denoise_3d_enabled": false,
"auto_white_balance": true,