Skip to content

Fix timeline gap frame conditioning#134

Draft
Paul (nuclearspike) wants to merge 1 commit into
Lightricks:mainfrom
nuclearspike:codex/fix-gap-frame-conditioning
Draft

Fix timeline gap frame conditioning#134
Paul (nuclearspike) wants to merge 1 commit into
Lightricks:mainfrom
nuclearspike:codex/fix-gap-frame-conditioning

Conversation

@nuclearspike

Copy link
Copy Markdown

Summary

  • pass the selected timeline boundary frame into the existing image-to-video generation path
  • reverse the generated video and linked audio when the end frame is selected
  • use the real filesystem path for replacement frames while keeping data URLs preview-only
  • preserve text-to-video behavior when frame conditioning is disabled and preserve explicit source-image precedence

Root cause

The editor extracted the clips' boundary frames, but used them only for prompt suggestions and previews. The modal's Start/End selection was local UI state, and handleGapGenerate only forwarded a separately uploaded gapImageFile, so ordinary gap fills omitted imagePath and ran as text-to-video. Generated gap clips also hardcoded reversed: false, despite the UI promising that End-frame generation would be played in reverse.

Scope

This implements the behavior already documented in the UI: one conditioning frame at a time. Start conditions the beginning directly; End is used as the generation's start frame and the result is reversed.

This does not add simultaneous first-and-last-frame interpolation. The current local and cloud request contracts accept one conditioning image, so true two-boundary conditioning would require a separate backend/API capability change.

Addresses #89.

Validation

  • pnpm typecheck
  • pnpm build:frontend
  • pnpm openapi:check
  • pnpm backend:test — 567 passed
  • independent control/data-flow QA for Start, End, disabled, replacement-frame, and explicit-source-image paths
  • git diff --check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant