Skip to content

fix: prevent waveform OOM on large files#1603

Draft
anirudhu-ui wants to merge 1 commit into
magic-peach:mainfrom
anirudhu-ui:fix-waveform-oom-guard
Draft

fix: prevent waveform OOM on large files#1603
anirudhu-ui wants to merge 1 commit into
magic-peach:mainfrom
anirudhu-ui:fix-waveform-oom-guard

Conversation

@anirudhu-ui

@anirudhu-ui anirudhu-ui commented Jun 25, 2026

Copy link
Copy Markdown

Fixes #1501

Description

This PR prevents large files from being fully loaded into memory during waveform generation by adding a pre-decode file-size guard before file.arrayBuffer() is called.

When waveform generation is skipped or fails, the editor now shows a graceful fallback message instead of risking a browser freeze or crash. Normal waveform generation for smaller files is preserved.

Type of Contribution

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

Participant Info

  • GitHub username: anirudhu-ui
  • Contribution level (Beginner/Intermediate/Advanced): Intermediate

Screen Recording

Recording / Loom link: https://drive.google.com/file/d/1KLARUl0HzdjFo67TPYD9cvigZdtvbSun/view?usp=sharing

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)

Testing

  • npm run lint
  • npx tsc --noEmit
  • npm test
  • npm run build

Note: Bun is not installed in my local environment, so I verified with the equivalent npm/npx commands. The PR is kept as draft until the required browser checks are added.

@vercel

vercel Bot commented Jun 25, 2026

Copy link
Copy Markdown

@anirudhu-ui 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 Jun 25, 2026

Copy link
Copy Markdown
Contributor

✅ PR Format Check Passed — @anirudhu-ui

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

Copy link
Copy Markdown
Contributor

👋 Thanks for your PR, @anirudhu-ui!

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 level:intermediate Intermediate level - 35 pts type:bug Bug fix type:design UI/UX design type:docs Documentation type:feature New feature type:refactor Code refactor type:testing Testing gssoc'26 GirlScript Summer of Code 2026 labels Jun 25, 2026
@anirudhu-ui anirudhu-ui changed the title Fix OOM risk in audio waveform generation for large files fix: prevent waveform OOM on large files Jun 25, 2026
@anirudhu-ui

Copy link
Copy Markdown
Author

@magic-peach

  • Pleasedo look into this .

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:design UI/UX design type:docs Documentation type:feature New feature type:refactor Code refactor type:testing Testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] Out-of-Memory (OOM) Crash Vulnerability in Audio Waveform Generation

1 participant