Skip to content

feat(export): add final video and Remotion rendering - #27

Merged
JustinPerea merged 1 commit into
mainfrom
codex/video-export-completion
Jul 23, 2026
Merged

feat(export): add final video and Remotion rendering#27
JustinPerea merged 1 commit into
mainfrom
codex/video-export-completion

Conversation

@JustinPerea

Copy link
Copy Markdown
Owner

What changed

  • Added final Video Editor exports for MP4/H.264, MOV/ProRes 422 HQ, WebM/VP9, and animated GIF with resolution and quality controls.
  • Replaced the Remotion node's preview-only backend with a real local H.264 renderer using the same composition and exact { manifest } input props as the Player.
  • Added shared render-job progress, cancellation, download, partial-file cleanup, and UI controls for both editor surfaces.
  • Declared hidden runtime editor params so clip state and Remotion manifests persist through the graph API.
  • Pinned the full Remotion package family to 4.0.479 and documented the runtime and license boundary.

Why

The editors could preview work but did not have a complete final-delivery path. The Remotion graph handler also returned no rendered video. This closes both gaps with local renders and no provider inference cost.

Validation

  • Backend: 1,197 passed, with two existing AsyncMock warnings.
  • Frontend: 402 passed, lint, TypeScript, and production build passed.
  • Node contracts: 142 definitions passed; generated model reference is current.
  • Dependency audit: zero findings.
  • Live UI: 1080p WebM completion/download, progress and cancellation with no partial file, and a 5.056 s Remotion H.264/AAC MP4 at 1280x720 and 30 fps.
  • Multiformat ffmpeg smoke: H.264/AAC MP4, ProRes/PCM MOV, VP9/Opus WebM, and GIF.
  • git diff --check and staged credential scans passed.
  • No paid provider call ran.

Known non-blocking finding

scripts/check-utility-nodes.mjs repeatedly timed out waiting for its unrelated pure-utility browser graph after the backend logged that execution as completed. This PR does not touch that execution-event/store path, and the backend/frontend suites covering it pass. The finding is carried into the run-history follow-up.

@JustinPerea
JustinPerea merged commit 532df64 into main Jul 23, 2026
3 checks passed
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