Multi-select Export and Save to media bin now use the same ffmpeg stitch path as Render Final instead of exporting each clip separately.
Co-authored-by: Cursor <cursoragent@cursor.com>
Clear picked assets when Select mode is off so clicks preview again instead of keeping amber selection styling.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use st.project for zoom frame math, retry status polls on transient Cloudflare errors, and run final ffmpeg stitch as a polled background job.
Co-authored-by: Cursor <cursoragent@cursor.com>
Split chain playback at full scene boundaries, highlight multi-clip selection with batch trim export/save, add timed Ken Burns zoom, and keep media bin preview from rebuilding during generation.
Co-authored-by: Cursor <cursoragent@cursor.com>
Match ffmpeg zoompan by scaling inside a fixed overflow-hidden frame instead of transforming the letterboxed video element directly.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use a separate preview player so bin clicks do not reset the playhead; disable auto-fit after manual zoom until Fit is clicked.
Co-authored-by: Cursor <cursoragent@cursor.com>
Route imported clips through the pooled program monitor, advance source_in on split, and keep the kept half aligned when deleting the head.
Co-authored-by: Cursor <cursoragent@cursor.com>
Videos on the timeline jump to that clip and use the shared player pool; off-timeline videos preview via playhead-driven pool playback instead of a separate controls overlay.
Co-authored-by: Cursor <cursoragent@cursor.com>
Display names can be edited inline (double-click or pencil) without changing file ids or breaking scene references.
Co-authored-by: Cursor <cursoragent@cursor.com>
Type tabs (All/Video/Audio/Images), sort by name/type/date with type grouping, and export one image or video to disk from preview, selection, or card hover.
Co-authored-by: Cursor <cursoragent@cursor.com>
Wire funpack_scene_media_refs even without mixed anchors, keep guide-only pin images off the run anchor LoadImage, and return 400 when pin media is missing.
Co-authored-by: Cursor <cursoragent@cursor.com>
Split, Remove, Export, and Save to media bin share one selection check, show faded disabled styling, and give clearer tooltips when nothing is chosen.
Co-authored-by: Cursor <cursoragent@cursor.com>
Separating audio snapshots the render into pinned_media so video-only regen keeps the old audio; overlay and separated lanes have visible remove controls plus a toolbar Remove audio action.
Co-authored-by: Cursor <cursoragent@cursor.com>
Overlay tracks use kind overlay with absolute timeline placement, original audio stays on its own lane, and the player now rebuilds when audio_tracks change.
Co-authored-by: Cursor <cursoragent@cursor.com>
Single click previews by default; bulk selection only when Select is active, with no double-click timing.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add Save to media bin on the toolbar, type badges on bin cards, video thumbnails, and double-click video preview in the player.
Co-authored-by: Cursor <cursoragent@cursor.com>
Click assets to select them, remove selected in one action, and select all from a footer control; preview and add-to-timeline move to double-click.
Co-authored-by: Cursor <cursoragent@cursor.com>
Pick the fullest scene_boundaries layout from ComfyUI history and fall back to latent overlap math on the client when layout data is missing or truncated.
Co-authored-by: Cursor <cursoragent@cursor.com>
Import timeline helpers at module scope, return structured errors from generate/import, and write project files atomically so a failed save cannot vanish from the list.
Global prompt edits now ghost or drop removed clips by text match with fresh IDs on restore; timeline edits still rebuild the prompt. Also adds waveform lanes, Media Bin audio, separate-audio tracks, and render mix support.
Rebuild the global prompt when clips are removed so preview split checks match the editor. When applying a montage prompt, align scenes by text and revive matching ghosts instead of blind index merge so a re-added middle scene does not overwrite the wrong clip.
Progressive quick preview decoded the full cumulative latent after each scene inside the sampler loop, adding large overhead without fitting ComfyUI's single-pass workflow. Preview now arrives only when the run completes.
Use sampler boundary pixel positions for preview/export offsets instead of subtracting frame_overlap on the client, which misaligned i2v-guided multi-scene runs.
After each scene finishes sampling, decode a downscaled temp mp4 and publish
progress so the Movie Editor can update timeline and preview before the full
chain completes.
Editor chain runs pass multiple scene ratings to Refiner for per-scene learning;
export trims chain output to the selected scene. Also includes parse bridge fixes,
timeline NLE gaps, and seam UI cleanup.