You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: crates/editor/PLAYBACK-FINDINGS.md
+38Lines changed: 38 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -831,6 +831,44 @@ The CPU RGBA→NV12 conversion was taking 15-25ms per frame for 3024x1964 resolu
831
831
832
832
---
833
833
834
+
### Session 2026-02-14 (Supersession span threshold retune to 20)
835
+
836
+
**Goal**: Re-evaluate supersession span threshold with CSV-backed multi-run sweeps and improve 4k scrub medians
837
+
838
+
**What was done**:
839
+
1. Ran a 4-way sweep over `CAP_FFMPEG_SCRUB_SUPERSEDE_MIN_SPAN_FRAMES={15,20,25,30}` with `scrub-benchmark --runs 3`.
840
+
2. Compared median last-request latency and p95 tails from CSV outputs.
841
+
3. Updated FFmpeg supersession default span fallback from `25` to `20`.
842
+
4. Re-ran scrub, playback, and decode regression benchmarks after the default change.
843
+
844
+
**Changes Made**:
845
+
-`crates/rendering/src/decoder/ffmpeg.rs`
846
+
- changed default `min_span_frames` fallback from `25` to `20`
847
+
-`crates/editor/PLAYBACK-BENCHMARKS.md`
848
+
- updated command examples to show span `20`
849
+
- added benchmark entry for the threshold sweep and post-change regression runs
850
+
851
+
**Results**:
852
+
- 4k sweep medians (last-request avg / p95):
853
+
- span 15: **836.94ms / 1740.74ms**
854
+
- span 20: **814.93ms / 1743.49ms**
855
+
- span 25: **819.11ms / 1762.74ms**
856
+
- span 30: **923.18ms / 1947.86ms**
857
+
- Post-change default (span 20) validation:
858
+
- 4k scrub median last-request avg **836.61ms**, p95 **1732.40ms**
859
+
- playback throughput remains 60fps-class:
860
+
- 1080p: **60.24 fps**
861
+
- 4k: **60.18 fps**
862
+
- decode metrics remain in expected variance envelope:
863
+
- 1080p random avg **111.79ms**
864
+
- 4k random avg **509.26ms**
865
+
866
+
**Decision**: keep defaults at `min_requests=8`, `min_span_frames=20`.
867
+
868
+
**Stopping point**: supersession defaults now favor a slightly more aggressive span threshold while preserving 60fps throughput and stable decode behavior.
0 commit comments