mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-06 18:41:26 +00:00
* Disk cache: stamp footage files for the salt off the UI thread Importing an After Effects project whose footage includes long image sequences on a network share froze the desktop app for 15-27 s. The import itself takes about 0.25 s; the time went into the edit's bump(), where refresh_disk_salt() stats every footage file (13,466 sequence frames in the measured project, ~15 s) on the UI thread whenever a disk cache is attached. File > Open and footage reload hit the same path. With Session::disk_salt_background (set by the desktop app) the salt is taken on a worker thread and picked up by poll_disk_salt() from the UI tick. Until it lands the layer cache runs memory-only, so keys under the old salt (other files, or another project's items) are never read. A newer footage change supersedes a salt still being taken. Headless sessions keep taking it synchronously. A settings change that keeps the disk cache folder no longer re-stamps every footage file either. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Disk cache: opening a project drops the footage salt being taken A salt job still running for the old project was kept when the new project named the same footage, so the salt stamped before the files changed stayed in use. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>