Skip to content

Preview transcoding, trim controls, preserve-original#68

Open
magent-cryptograss wants to merge 2 commits intocryptograss:mainfrom
magent-cryptograss:preview-transcoding-v2
Open

Preview transcoding, trim controls, preserve-original#68
magent-cryptograss wants to merge 2 commits intocryptograss:mainfrom
magent-cryptograss:preview-transcoding-v2

Conversation

@magent-cryptograss
Copy link
Copy Markdown
Contributor

Summary

Rebased cleanly on current main. Adds the frontend pieces for the preview transcoding system (delivery-kid backend already deployed via maybelle-config #77).

  • Preview polling: initVideoPreview() checks delivery-kid for preview status, loads 480p MP4 from IPFS gateway when ready, polls every 10s during transcoding, falls back to staging URL
  • Trim controls: Start/End inputs with "Set to current" buttons that capture playback position. Trim values saved to wiki YAML and sent in finalize request.
  • Preserve original: "Keep original file" checkbox sends preserve_original in finalize request body
  • Shared rendering: New renderVideoPreviewAndTrim() method used by both generic and video form paths

Supersedes #66 (which was based on a stale branch).

Test plan

  • Upload video via demo wiki → preview status shows "Checking preview..." then loads
  • Trim controls: set start/end from playback position, save draft, values persist
  • Finalize with trim → delivery-kid receives trim_start/trim_end
  • "Keep original file" checkbox → preserve_original sent in request
  • Not logged in → shows "Log in to preview video."

Hook name PageForms::FormPrinterSetup requires method with double
underscores (onPageForms__FormPrinterSetup). Also remove static from
getResourceModuleNames() since parent PFFormInput has it non-static.

Fixes 500 on Special:FormEdit pages.
- Rewrite initVideoPreview() to check delivery-kid for background
  transcoding status: loads 480p MP4 from IPFS when ready, polls every
  10s while processing, falls back to staging URL
- Extract renderVideoPreviewAndTrim() shared by both renderGenericForm
  and renderVideoForm — preview status div, video player, trim controls
- Add trim_start/trim_end to save serialization and finalize request
- Add "Keep original file" checkbox in renderActions
- CSS for trim controls, preview status, preserve label, more-settings
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