Skip to content

feat: improve comparison video synchronization with frame callbacks#1682

Open
Priyanshu1-62 wants to merge 1 commit into
magic-peach:mainfrom
Priyanshu1-62:feat/improve-dual-video-sync
Open

feat: improve comparison video synchronization with frame callbacks#1682
Priyanshu1-62 wants to merge 1 commit into
magic-peach:mainfrom
Priyanshu1-62:feat/improve-dual-video-sync

Conversation

@Priyanshu1-62

Copy link
Copy Markdown

Description

  • Replaced the throttled timeupdate-based synchronization mechanism with a frame-based synchronization loop using requestVideoFrameCallback(), with a fallback to requestAnimationFrame() for unsupported browsers.
  • The synchronization loop is started on playback, cancelled on pause, end, and component unmount, resulting in smoother playback synchronization between the comparison videos.
  • Prevented duplicate synchronization loops by ensuring only one active frame callback is scheduled at a time.

Related Issue

Type of Contribution

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

Participant Info

  • GitHub username: Priyanshu1-62
  • Contribution level: Intermediate (Some experience required)

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

@vercel

vercel Bot commented Jul 23, 2026

Copy link
Copy Markdown

@Priyanshu1-62 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

Copy link
Copy Markdown
Contributor

👋 Thanks for your PR, @Priyanshu1-62!

Welcome to Reframe — a browser-based video editor built for everyone 🎬

🟠 GSSoC'26 PR detected — thanks for contributing under GirlScript Summer of Code 2026!

What happens next

  1. 🤖 Automated checks — build & TypeScript typecheck will run automatically
  2. Vercel preview — a preview deployment will be created (requires maintainer authorization for fork PRs)
  3. 👀 Code review — a maintainer will review your changes
  4. 🚀 Merge — once approved, your PR will be merged!

Quick checklist

  • PR title follows Conventional Commits (e.g. feat: add dark mode)
  • Linked the issue this PR closes (e.g. Closes #123)
  • Tested the changes locally (bun run dev)
  • Build passes (bun run build)

Useful links

Happy coding! 🎉

@github-actions github-actions Bot added the gssoc'26 GirlScript Summer of Code 2026 label Jul 23, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ PR Format Check Passed — @Priyanshu1-62

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.

@github-actions github-actions Bot added level:intermediate Intermediate level - 35 pts type:bug Bug fix type:docs Documentation type:feature New feature type:refactor Code refactor labels Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc'26 GirlScript Summer of Code 2026 level:intermediate Intermediate level - 35 pts type:bug Bug fix type:docs Documentation type:feature New feature type:refactor Code refactor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE]: Improve dual video synchronization using frame-based updates

1 participant