Skip to content

feat: implement hardware-accelerated live preview transformations#1218

Open
SatyaViswas wants to merge 5 commits into
magic-peach:mainfrom
SatyaViswas:feat/live-preview-transforms
Open

feat: implement hardware-accelerated live preview transformations#1218
SatyaViswas wants to merge 5 commits into
magic-peach:mainfrom
SatyaViswas:feat/live-preview-transforms

Conversation

@SatyaViswas

Copy link
Copy Markdown
Contributor

Description

This PR introduces a complete architectural upgrade to the core video display layer inside src/components/VideoPreview.tsx, enabling a real-time, high-fidelity WYSIWYG (What You See Is What You Get) interface.

Key changes include:

  • Dynamic Canvas Crop Mask: Replaced the static, hardcoded rendering boundaries with an absolute percentage positioning system calculated dynamically from active editing parameters. The viewport accurately scales to all dimensions (including vertical configurations like 9:16 / 4:5 and panoramic modes like 47:10) without warping the application dashboard layout.
  • Real-Time Transformation Rendering: Bound state parameters for rotation, framing styles (fit vs fill), and micro-level color corrections directly to native hardware-accelerated CSS style overrides on the local player tracking node. Adjusting settings instantly cascades visual feedback onto the workspace preview without requiring an intermediate export cycle.
  • Visual Canvas Contrast Isolation: Added a subtle contrast separating border configuration (ring-1 ring-white/10 shadow-2xl bg-black) outlining the dynamic canvas window. This explicitly defines pixel-accurate output frame regions even when manipulating dark source footages that match underlying dark-mode panels.
  • Redundant Logic Pruning: Cleaned up obsolete overlay simulation elements and reference states, keeping the presentation layout lightweight, accessible, and performant.

Related Issue

Fixes #653

Type of Contribution

  • Bug fix
  • New feature
  • Documentation update
  • Refactor
  • GSSoC contribution

Participant Info

  • GitHub username: @SatyaViswas
  • Contribution level (Beginner/Intermediate/Advanced): Advanced

Screen Recording

Screen.Recording.2026-05-26.at.6.03.45.PM.mov

Checklist

  • I have read the contribution guidelines
  • My changes follow the project structure
  • I have tested my changes in Chrome, Firefox, and Safari
  • bun run lint passes (no ESLint errors)
  • bunx tsc --noEmit passes (no TypeScript errors)
  • New interactive elements have aria-label / accessible names
  • No console.log statements left in
  • This PR is related to a valid issue
  • Screen recording attached above (required for UI/feature/design changes)

@vercel

vercel Bot commented May 26, 2026

Copy link
Copy Markdown

@SatyaViswas is attempting to deploy a commit to the magic-peach1's projects Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions

github-actions Bot commented May 26, 2026

Copy link
Copy Markdown
Contributor

✅ PR Format Check Passed — @SatyaViswas

Basic format checks passed. A maintainer will review your code changes.

This does not mean the PR is approved — it just means the format is correct.

@SatyaViswas SatyaViswas changed the title feat: add real-time WYSIWYG preview for video aspect ratios, filters, and rotation feat: add real-time preview for video aspect ratios, filters, and rotation May 26, 2026
@SatyaViswas SatyaViswas changed the title feat: add real-time preview for video aspect ratios, filters, and rotation feat: implement hardware-accelerated live preview transformations May 26, 2026
@github-actions github-actions Bot added level:advanced Advanced level - 55 pts type:bug Bug fix type:design UI/UX design type:docs Documentation type:feature New feature type:refactor Code refactor labels May 26, 2026
@SatyaViswas SatyaViswas force-pushed the feat/live-preview-transforms branch from 4ec67ae to bc73bd8 Compare May 28, 2026 06:13
@SatyaViswas

Copy link
Copy Markdown
Contributor Author

Hey @magic-peach , I have resolved all conflicts. Can you please review my PR!

@SatyaViswas SatyaViswas force-pushed the feat/live-preview-transforms branch from bc73bd8 to 3182030 Compare June 2, 2026 05:08
@SatyaViswas SatyaViswas force-pushed the feat/live-preview-transforms branch from 3182030 to bc9e06a Compare June 8, 2026 00:24
@SatyaViswas

Copy link
Copy Markdown
Contributor Author

Hey @magic-peach , I have resolved all conflicts and CI build issues in my PR. Please review and merge my PR!

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

Labels

level:advanced Advanced level - 55 pts type:bug Bug fix type:design UI/UX design type:docs Documentation type:feature New feature type:refactor Code refactor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: canvas-based live preview — show crop/rotation/color changes instantly

1 participant