diff --git a/scripts/efi-flicker-test.sh b/scripts/efi-flicker-test.sh index e21b88be..7a3de52b 100755 --- a/scripts/efi-flicker-test.sh +++ b/scripts/efi-flicker-test.sh @@ -58,10 +58,10 @@ kill "$QPID" 2>/dev/null || true; wait "$QPID" 2>/dev/null || true echo "==> analizando el framebuffer capturado" [ -r "$SHOT" ] || { echo "✗ no se capturó el framebuffer"; exit 1; } -# media de brillo normalizada 0..255 (imagemagick reporta en % o 0..1 según versión → forzamos 0..255) -MEAN=$(identify -verbose "$SHOT" | awk '/[Mm]ean:/ {gsub(/[()]/,""); print $2; exit}') -# si identify reportó fracción 0..1, escalar ×255 -MEAN255=$(python3 -c "m=float('$MEAN'); print(m*255 if m<=1.0 else m)") +# %[fx:mean] = media de brillo NORMALIZADA 0..1 (fiable entre versiones/quantum; el 1er número de +# `identify -verbose` varía por quantum). ×255 para expresarla 0..255. Negro ≈ 0; texto de boot ≈ 11. +MEANNORM=$(identify -format '%[fx:mean]' "$SHOT") +MEAN255=$(python3 -c "print(float('$MEANNORM')*255)") GEO=$(identify -format '%wx%h' "$SHOT") printf " framebuffer %s · media de brillo = %.3f / 255 (umbral cero-parpadeo: < %.1f)\n" "$GEO" "$MEAN255" "$MEAN_MAX"