fix: set image levels atomically in heatmap update

This commit is contained in:
Honney OC committed 2026-09-16 16:35:22 +00:00
1 parent ba6c6c8d21
commit 25fde25e25
1 file changed
+1 -2
+1 -2
View File
@@ -859,10 +859,9 @@ class VideoSyncWindow:
cp = r["cp"] cp = r["cp"]
k = max(1, cp.shape[1] // 1200) k = max(1, cp.shape[1] // 1200)
img = np.ascontiguousarray(cp[:, ::k].T) # (lags', pixels) col-major x=lag img = np.ascontiguousarray(cp[:, ::k].T) # (lags', pixels) col-major x=lag
self.img.setImage(img, autoLevels=False)
v0 = float(np.percentile(img, 1)) v0 = float(np.percentile(img, 1))
v1 = float(max(np.max(img), v0 + 1e-6)) v1 = float(max(np.max(img), v0 + 1e-6))
self.img.setLevels(v0, v1) self.img.setImage(img, levels=(v0, v1), autoLevels=False)
lag_s = r["lags"][::k] / (r["up"] * ctx.fps) lag_s = r["lags"][::k] / (r["up"] * ctx.fps)
self.p_h.setXRange(self.lag_sec - 2, self.lag_sec + 2, padding=0) self.p_h.setXRange(self.lag_sec - 2, self.lag_sec + 2, padding=0)
self.p_h.setYRange(0, img.shape[1], padding=0) self.p_h.setYRange(0, img.shape[1], padding=0)