Lightningbeam/lightningbeam-ui
Skyler Lehmkuhl d6b86a14b1 Save: skip re-encoding unchanged raster keyframes
save_beam re-encoded every resident raster keyframe to PNG (+ proxy) on every
save, even untouched frames — the dominant per-save cost for painting/animation
projects (the code noted this as deferred "Phase 3").

The infrastructure to do it incrementally already exists: kf.dirty means "current
pixels not yet in the container" (set on any edit, cleared on a successful save,
per main.rs), and it's preserved in the document clone the save worker receives.
Gate the encode on it: a clean keyframe already stored keeps its full + proxy rows
untouched; only dirty (or not-yet-stored) frames are re-encoded. Media blobs were
already incremental; this closes the raster gap.

No new data-loss risk: the mid-save-edit race (edit between the document clone and
save completion) is pre-existing and identical to the old full-write path.
2026-07-09 13:58:34 -04:00
..
beamdsp Code cleanup 2026-02-19 11:19:44 -05:00
egui_node_graph2 highlight node connections directly 2026-02-20 11:13:34 -05:00
gpu-video-encoder Address code-review findings across export, decode, and data model 2026-06-26 17:47:32 -04:00
lightningbeam-core Save: skip re-encoding unchanged raster keyframes 2026-07-09 13:58:34 -04:00
lightningbeam-editor Clean up build warnings 2026-07-09 13:24:32 -04:00
.gitignore Add text layers 2026-06-27 18:14:47 -04:00
Cargo.lock SVG export: emit text layers as real glyph outlines 2026-07-09 07:10:59 -04:00
Cargo.toml Add animated GIF export 2026-07-09 06:02:47 -04:00
GPU_VIDEO_DECODE_PLAN.md export: cache the static background + bilinear video, add render profiling 2026-06-25 23:30:51 -04:00
build-static.sh Video export 2025-12-07 13:17:21 -05:00
build-windows.bat windows build fixes 2026-02-24 14:40:16 -05:00