diff --git a/server/src/wled_controller/core/processing/wled_target_processor.py b/server/src/wled_controller/core/processing/wled_target_processor.py index 7b12d86..0a507b0 100644 --- a/server/src/wled_controller/core/processing/wled_target_processor.py +++ b/server/src/wled_controller/core/processing/wled_target_processor.py @@ -245,10 +245,13 @@ class WledTargetProcessor(TargetProcessor): extract_ms = round(css_timing.get("extract_ms", 0), 1) if css_timing else None map_ms = round(css_timing.get("map_leds_ms", 0), 1) if css_timing else None smooth_ms = round(css_timing.get("smooth_ms", 0), 1) if css_timing else None - total_ms = ( - round(css_timing.get("total_ms", 0) + metrics.timing_send_ms, 1) - if css_timing else None - ) + if css_timing: + total_ms = round(css_timing.get("total_ms", 0) + metrics.timing_send_ms, 1) + elif self._is_running and send_ms is not None: + # Non-picture sources have no CSS pipeline timing — total = send only + total_ms = send_ms + else: + total_ms = None return { "target_id": self._target_id, diff --git a/server/src/wled_controller/static/js/features/targets.js b/server/src/wled_controller/static/js/features/targets.js index d8fe479..9f4b22d 100644 --- a/server/src/wled_controller/static/js/features/targets.js +++ b/server/src/wled_controller/static/js/features/targets.js @@ -486,15 +486,15 @@ export function createTargetCard(target, deviceMap, colorStripSourceMap) {