Meet OpenCut, a free, open-source online video editor aiming to become the open-source alternative to CapCut. Built with modern web technologies (Next.js + TypeScript + FFmpeg + Bun), it runs entirely in your browser with all video content stored locally. Multi-track timeline editing, real-time preview, no watermarks—the free video editing experience you've been waiting for.

🎤 Introduction

Looking for a free, open-source video editor that aims to become the open-source alternative to CapCut? As a "young" open-source project, it provides a browser-based video editing tool with all content stored locally on your device—supporting multi-track timeline editing, real-time preview, no watermarks, and more. OpenCut is a web technology-based open-source video editor that makes professional-grade editing accessible. This article will walk you through this emerging project comprehensively—from features to installation and usage.

Note: This is the English translation of the original Chinese version.

🌟 What Is OpenCut?

OpenCut is an open-source video editor built on a modern web tech stack:

  • Tech Stack: Next.js + TypeScript + FFmpeg
  • Runtime: Bun (a high-performance JavaScript runtime that replaces Node.js)
  • Core Advantages: Fully open-source, cross-platform, lightweight

Project URL: https://github.com/OpenCut-app/OpenCut

Unlike traditional bulky video editing software, OpenCut runs in the browser with no complex installation, while preserving professional-grade video processing capabilities.


🔥 Core Features

1. Basic Editing Functions

  • ✂️ Precise Cutting: Frame-accurate video segment splitting
  • 🧩 Seamless Merging: Smooth multi-clip stitching
  • ⏱️ Duration Adjustment: Freely expand/contract video segment speed

2. Advanced Editing Capabilities

  • 🎚️ Audio Control: Independent audio track volume adjustment + background music
  • 📝 Subtitle Editing: Real-time dynamic subtitle add/edit (with SRT import support)
  • 🎞️ Transitions: Built-in transition effects (fade in/out, slide, etc.)

3. Professional-Grade Processing

  • 🎨 Color Correction: Adjust brightness, contrast, saturation
  • 🔍 Frame Cropping: Custom aspect ratios
  • 📤 Multi-Format Export: MP4, WebM, and other mainstream formats

4. Developer-Friendly Features

  • 🔧 Modular Architecture: Easy to extend
  • 🌐 API-Driven: Integrates with other systems via interfaces
  • 📦 FFmpeg Core: Mature video processing library for stability

💻 Installation Guide (3 minutes)

Prerequisites

  • System: Linux / macOS / Windows (requires WSL)
  • Memory: 4 GB+ recommended (video processing is resource-hungry)

Step-by-Step

1. Install Bun runtime (critical dependency)

# Linux/macOS
curl -fsSL https://bun.sh/install | bash

# Windows (PowerShell)
powershell -c "irm bun.sh/install.ps1|iex"

Verify installation:

bun --version

2. Clone the repo & install dependencies

git clone https://github.com/OpenCut-app/OpenCut.git
cd OpenCut
bun install  # 3x faster than npm/yarn!

3. Configure environment variables

cp .env.example .env.local
# Edit API keys and other configs as needed

4. Start the local server

bun run dev

Visit http://localhost:3000 and start your editing journey!


🚀 Quick Start Tutorial

1. Import Media

  • Drag and drop video files directly into the workspace
  • Supports MP4, MOV, AVI, and other common formats

2. Pro Tips

Keyboard shortcuts:

ShortcutAction
SpacePlay / Pause
Ctrl+ZUndo
I / OSet In / Out point
Arrow keysFrame-by-frame navigation

Multi-track editing: Drag media to the timeline to layer tracks.


🛠️ Developer Extension Guide

Want to develop further? OpenCut provides friendly extension points:

1. Add a New Effect

Create a new component in /src/effects:

// waveEffect.tsx
export const WaveEffect = {
  name: "Wave Effect",
  apply: (frame) => {
    // Implement effect algorithm
    return modifiedFrame;
  }
}

2. Integrate AI Features

Connect to AI services via the API (example):

// Auto-generate subtitles
async function generateSubtitles(video) {
  const response = await fetch('/api/ai/subtitles', {
    method: 'POST',
    body: video
  });
  return response.json();
}

3. Build a Desktop Version

Use Tauri to package as a desktop app:

// tauri.conf.json
"build": {
  "distDir": "../build",
  "devPath": "http://localhost:3000"
}

❓ Common Issues & Solutions

IssueSolution
🎥 Video processing lagSolution 1: Lower preview resolution (Settings → Quality). Solution 2: Enable hardware acceleration (requires FFmpeg config)
📦 Missing FFmpeg dependencyUbuntu: sudo apt install ffmpeg / macOS: brew install ffmpeg / Windows: download from ffmpeg.org and add to PATH
📤 Export failureCheck .env.local config: FFMPEG_PATH=/path/to/ffmpeg (manual path), MAX_EXPORT_TIME=300 (increase max export time)

🔮 Future Roadmap

Per the GitHub roadmap, coming soon:

  • 🧩 Plugin Marketplace: User-shared effects / templates
  • ☁️ Cloud Rendering Service: Complex projects processed in the cloud
  • 🤖 AI Smart Editing: Auto-identify highlight segments
  • 📱 PWA Support: Use directly on mobile

💎 Conclusion: Why Choose OpenCut?

Compared to traditional video editing software, OpenCut offers:

  • Zero Cost: Fully free and open-source (MIT license)
  • Privacy & Security: Data processed locally, no uploads
  • Low Barrier: Runs in the browser
  • Highly Customizable: Modular architecture ready for extension

For users who care about privacy, cost, or customization, OpenCut is a video editor worth trying. As an open-source project, it's still evolving rapidly—now is a great time to join the community and contribute!

Project URL: https://github.com/OpenCut-app/OpenCut

Let's embrace a freer, more open video editing experience!