Dev.to
7/8/2026

How I Built a Bulk Video Processing Pipeline with Next.js, BullMQ, and FFmpeg
Short summary
A developer shares a detailed architecture for BatchEdits, a tool that processes 50 videos in parallel using Next.js, BullMQ, and FFmpeg. The pipeline uses presigned URLs for direct browser-to-Cloudflare R2 uploads, BullMQ for queue orchestration with configurable worker concurrency, and FFmpeg's silencedetect filter for silence removal. Whisper handles transcription, enabling caption burning and zoom effects, with each worker processing up to 10 videos simultaneously.
- •Presigned URLs bypass Next.js body limits for direct browser-to-R2 uploads of 50 videos in parallel
- •BullMQ orchestrates a worker pool with concurrency: 10, each running FFmpeg and Whisper independently
- •FFmpeg silencedetect filter identifies silence segments, which are then cut to produce edited output
Generated with AI, which can make mistakes.
Is this a good recommendation for you?



