Add Key Colors target type for extracting colors from screen regions
Introduce a new "key_colors" target type alongside WLED targets, enabling real-time color extraction from configurable screen rectangles with average/median/dominant modes, temporal smoothing, and WebSocket streaming. - Split WledPictureTarget into its own module, add KeyColorsPictureTarget - Add KC target lifecycle to ProcessorManager (register, start/stop, processing loop) - Extend API routes and schemas for KC targets (CRUD, settings, state, metrics, colors) - Add WebSocket endpoint for real-time color updates with auth - Add KC sub-tab in Targets UI with editor modal and live color swatches - Add EN and RU translations for all key colors strings Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -341,5 +341,40 @@
|
||||
"targets.metrics.actual_fps": "Actual FPS",
|
||||
"targets.metrics.target_fps": "Target FPS",
|
||||
"targets.metrics.frames": "Frames",
|
||||
"targets.metrics.errors": "Errors"
|
||||
"targets.metrics.errors": "Errors",
|
||||
"targets.subtab.key_colors": "Key Colors",
|
||||
"targets.section.key_colors": "🎨 Key Colors Targets",
|
||||
"kc.add": "Add Key Colors Target",
|
||||
"kc.edit": "Edit Key Colors Target",
|
||||
"kc.name": "Target Name:",
|
||||
"kc.name.placeholder": "My Key Colors Target",
|
||||
"kc.source": "Picture Source:",
|
||||
"kc.source.hint": "Which picture source to extract colors from",
|
||||
"kc.source.none": "-- No source assigned --",
|
||||
"kc.fps": "Extraction FPS:",
|
||||
"kc.fps.hint": "How many times per second to extract colors (1-60)",
|
||||
"kc.interpolation": "Color Mode:",
|
||||
"kc.interpolation.hint": "How to compute the key color from pixels in each rectangle",
|
||||
"kc.interpolation.average": "Average",
|
||||
"kc.interpolation.median": "Median",
|
||||
"kc.interpolation.dominant": "Dominant",
|
||||
"kc.smoothing": "Smoothing:",
|
||||
"kc.smoothing.hint": "Temporal blending between extractions (0=none, 1=full)",
|
||||
"kc.rectangles": "Color Rectangles",
|
||||
"kc.rectangles.hint": "Define named rectangles in relative coordinates (0.0–1.0) on the captured image",
|
||||
"kc.rect.name": "Name",
|
||||
"kc.rect.x": "X",
|
||||
"kc.rect.y": "Y",
|
||||
"kc.rect.width": "W",
|
||||
"kc.rect.height": "H",
|
||||
"kc.rect.add": "Add Rectangle",
|
||||
"kc.rect.remove": "Remove",
|
||||
"kc.rect.empty": "No rectangles defined. Add at least one rectangle to extract colors.",
|
||||
"kc.created": "Key colors target created successfully",
|
||||
"kc.updated": "Key colors target updated successfully",
|
||||
"kc.deleted": "Key colors target deleted successfully",
|
||||
"kc.delete.confirm": "Are you sure you want to delete this key colors target?",
|
||||
"kc.error.no_rectangles": "Please add at least one rectangle",
|
||||
"kc.error.required": "Please fill in all required fields",
|
||||
"kc.colors.none": "No colors extracted yet"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user