diff options
| author | cashmere <cashmere@autistici.org> | 2026-07-26 21:06:33 +0200 |
|---|---|---|
| committer | cashmere <cashmere@autistici.org> | 2026-07-26 21:06:33 +0200 |
| commit | fc0a801e8829b623d62137a3f7cbdec38c6d555a (patch) | |
| tree | b4c9a0458e92eaf44d3331ce3b0ea3ff906a9d15 /apps/web/src/media/processing.ts | |
| parent | cf5e79e919144200294fb9fed22a222592a0aeea (diff) | |
| download | opencut-fc0a801e8829b623d62137a3f7cbdec38c6d555a.tar.gz | |
feat: freeze frame at playhead
Enable the timeline toolbar freeze-frame button: capture the composited
canvas as PNG, add it as an image media asset, split the video element
at the playhead, shift the right part by the freeze duration, and insert
a 3-second image element in the gap. Adds RendererManager.captureFrame(),
reused by createSnapshot().
Also adds the Nix devshell (flake.nix/flake.lock: bun + nodejs) and
AGENTS.md repository guidelines.
Diffstat (limited to 'apps/web/src/media/processing.ts')
| -rw-r--r-- | apps/web/src/media/processing.ts | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/web/src/media/processing.ts b/apps/web/src/media/processing.ts index 34ccadbc..21d4f87c 100644 --- a/apps/web/src/media/processing.ts +++ b/apps/web/src/media/processing.ts @@ -39,7 +39,7 @@ const getStorageLimitDescription = ({ })} is safely available in browser storage.`; }; -async function generateImageThumbnail({ +export async function generateImageThumbnail({ imageFile, }: { imageFile: File; |
