Enhance camera configuration and auto-recording functionality

- Updated CameraStreamer to configure streaming settings from config.json, including manual exposure, gain, image quality, noise reduction, and color settings.
- Added new methods in CameraStreamer for configuring image quality, noise reduction, color settings, and advanced settings.
- Extended CameraConfig to include manual white balance RGB gains.
- Improved AutoRecordingManager to handle camera status updates and ensure proper recording starts/stops based on machine state changes.
- Created detailed configuration documentation for blower and conveyor cameras, outlining settings and their mappings to config.json.
- Implemented a comprehensive test script for auto-recording functionality with simulated MQTT messages, verifying correct behavior on machine state changes.
This commit is contained in:
Alireza Vaezi
2025-07-29 13:54:16 -04:00
parent a6514b72c9
commit 28400fbfb8
15 changed files with 1034 additions and 161 deletions

View File

@@ -318,6 +318,9 @@ GET {{baseUrl}}/cameras/camera1/config
# "machine_topic": "vibratory_conveyor",
# "storage_path": "/storage/camera1",
# "enabled": true,
# "auto_start_recording_enabled": true,
# "auto_recording_max_retries": 3,
# "auto_recording_retry_delay_seconds": 2,
# "exposure_ms": 1.0,
# "gain": 3.5,
# "target_fps": 0,
@@ -329,6 +332,9 @@ GET {{baseUrl}}/cameras/camera1/config
# "denoise_3d_enabled": false,
# "auto_white_balance": true,
# "color_temperature_preset": 0,
# "wb_red_gain": 1.0,
# "wb_green_gain": 1.0,
# "wb_blue_gain": 1.0,
# "anti_flicker_enabled": true,
# "light_frequency": 1,
# "bit_depth": 8,
@@ -376,6 +382,19 @@ Content-Type: application/json
###
### Update white balance RGB gains (manual white balance)
PUT {{baseUrl}}/cameras/camera1/config
Content-Type: application/json
{
"auto_white_balance": false,
"wb_red_gain": 1.2,
"wb_green_gain": 1.0,
"wb_blue_gain": 0.8
}
###
### Enable HDR mode
PUT {{baseUrl}}/cameras/camera1/config
Content-Type: application/json