aboutsummaryrefslogtreecommitdiff
path: root/flowy/src/motion/enc.wgsl
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-01-24 02:16:03 +0100
committermetamuffin <metamuffin@disroot.org>2024-01-24 02:16:03 +0100
commit330cbef6f1953de3e1cbeb5aed03e951bc101965 (patch)
treefc4566dc27ac3d6487fbfe125166335324fd7d88 /flowy/src/motion/enc.wgsl
parent754ebf34cbb6280ef77421e1ca54d35d727dc6f7 (diff)
downloadvideo-codec-experiments-330cbef6f1953de3e1cbeb5aed03e951bc101965.tar
video-codec-experiments-330cbef6f1953de3e1cbeb5aed03e951bc101965.tar.bz2
video-codec-experiments-330cbef6f1953de3e1cbeb5aed03e951bc101965.tar.zst
fix it?
Diffstat (limited to 'flowy/src/motion/enc.wgsl')
-rw-r--r--flowy/src/motion/enc.wgsl17
1 files changed, 15 insertions, 2 deletions
diff --git a/flowy/src/motion/enc.wgsl b/flowy/src/motion/enc.wgsl
index 80618b7..ca3c769 100644
--- a/flowy/src/motion/enc.wgsl
+++ b/flowy/src/motion/enc.wgsl
@@ -30,16 +30,28 @@ var<private> best_tint: vec3<f32> = vec3(0.);
apply_tint(uv);
if best_error < params.skip_threshold { break; }
best_tint = vec3(0.);
+ best_error = 10000000.;
+ do_dist(uv, 64);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 32);
+ if best_error < params.skip_threshold { break; }
+ do_dist(uv, 24);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 16);
- do_dist(uv, 10);
+ if best_error < params.skip_threshold { break; }
+ do_dist(uv, 12);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 8);
if best_error < params.skip_threshold { break; }
do_dist(uv, 6);
- do_dist(uv, 3);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 4);
+ if best_error < params.skip_threshold { break; }
+ do_dist(uv, 3);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 2);
+ if best_error < params.skip_threshold { break; }
do_dist(uv, 1);
if best_error < params.skip_threshold { break; }
@@ -85,6 +97,7 @@ fn apply_tint(uv: vec2<i32>) {
}
}
if err < best_error {
+ best_error = err;
best_tint = tint;
}
}