🎬 Movie Editor

AI-powered video pipeline

CPU
RAM
Disk

Change Password

Password updated successfully.

Start Job

Import Video

📁

Drag & drop video, or click to browse

MP4, MOV, MKV — any size

🎬

Uploading...

Downloaded! Loading preview...

Preview & Trim

Generating preview thumbnails…

Trim applied — pipeline will process only the selected range.

Pipeline Options

Jobs ()

ThumbID / FileStatusStageCreatedActions

No jobs yet.

⚠ zombie
Zombie job detected. This job shows as running but has no active worker thread — likely interrupted by a server restart. Click ⚠ Mark Cancelled to clean it up, or 🗑 Delete to remove it entirely.
✓ Pipeline complete!
● live
🏆 Full Highlight Reel
All best clips combined · full_edit.mp4
↓ Download

No output files yet.

No transcript available.

Editor

Select job: Loading…
⚡ Analyzing signals…
Speed:
✓ Rendered: Download

Transcript

No segments match
/ ⏩ SKIP DEAD
Score heat Loudness HF Score Burst Impact Voice Beat ΔLoud Motion Space=play I/O=mark G/H=peak/highlight R=peak-review U=marker ?=help
no signals loaded
Signals:
LOUD HF BURST VOICE BEAT PERC SUB ΔLOUD SCORE EXCITE DEAD TEXT MOTION WPM CONV CUT
Loud
HF
Burst
Voice
Beat
Perc
ΔLoud
Motion
Cut
Score
⚡ CONV — multi-signal peak (great cut point)
▶ REVIEW MODE
Y=keep · N=skip · Esc=exit
⚡ PEAK REVIEW Moment of
Y=add clip · N=skip · I/O=adjust · Esc=exit
🎯 Smart Fill auto-select top highlights to fill a target duration
s target
Preview: (target: )
🔬 Clip Inspector
Click a clip in the timeline to inspect it
📊 Content Analysis
§ Chapter List
Paste into YouTube video description →
⚡ Top Highlights ranked by EXCITE score — uncovered moments first
# Time EXCITE Burst Voice Perc Beat Status Action
EXCITE = burst×0.28 + voice×0.22 + onset×0.13 + beat×0.12 + perc×0.08 + bass×0.04 + motion×0.13

Clip List

Click to seek · Delete to remove

Top Highlights

Color grade
Transition →
LABEL

Editor Keyboard Shortcuts

SpacePlay / Pause
I / OMark IN / OUT
GGo to highest-score uncovered peak (auto-sets IN/OUT)
HNext uncovered highlight marker (auto-sets IN/OUT)
Alt+HToggle Highlights Dashboard — top ranked excitement moments
Ctrl+IToggle Clip Inspector — edit selected clip properties
XSkip past next dead zone (jump over boring content)
RPeak Review: cycle through top moments → Y=add / N=skip
BGo back to previous playhead position (nav history)
+ / -Zoom in / out (centered on current time)
W / ESet IN / OUT mark to clip boundary at playhead
AQuick-add clip ±N sec around playhead
MAdd highlight as clip
UPlace user marker at playhead (right-click ruler to delete)
CCommit IN/OUT → new clip (clears marks)
[ / ]Trim clip edge inward ±0.5s at playhead
Shift+[ / ]Expand clip edge outward ±0.5s
DDuplicate clip at playhead
TTrim clip to highlight — auto-trims to most exciting sub-window
QSmart cut — snap playhead to best cut point in ±2s window (low excite, beat/scene bias)
1/2/3/4/5Quick label: 1=keep · 2=maybe · 3=reject · 4=b-roll · 5=clear (clip at playhead or all selected)
SSplit clip at playhead
VCycle transition on clip at playhead (Cut→Fade→Dissolve→Wipe)
⇌ X-Fade btnAuto-crossfade: 0.5s fade between all adjacent clips (gap ≤3s)
Drag handlesSnap: clip edges snap to impactful audio peaks (burst ≥25%) and ▾ audio-novelty cut points (structural boundaries); beat snap also active with ♩ Beat grid enabled. Alt to disable snap.
DeleteDelete clip at playhead
Ctrl+DeleteRipple delete (close gap)
Double-click clipZoom timeline to clip
Alt+drag clipSlip edit — shift source content without moving clip position
J / K / LJog back 2s (or halve speed while playing) / pause / play 1x (or double speed while playing)
Ctrl+LLock / unlock selected clips (locked clips can't be moved or trimmed)
Ctrl+dragMulti-select clips, then drag any selected clip to move them all
← / →Seek ±1 second
Shift+← / →Prev / Next highlight
Tab / Shift+TabNext / Prev clip
Alt+← / →1-frame nudge (±1/30s)
Home / EndJump to start / end
PToggle IN/OUT loop preview
Ctrl+Z / Ctrl+YUndo / Redo clip edits
FZoom to fit (whole video in view)
+ / -Zoom in / out
Ctrl+scrollZoom timeline (mouse-pivot)
ScrollPan timeline
Click minimap / rulerJump to position
Alt+click transcriptAdd that spoken segment as a clip (±0.3s padding)
?Toggle this help

Signals: ── EXCITE (composite) · ■ waveform · ■ HF · ■ burst · ■ voice · ■ beat · ◆ impact · ■ sub · ─ score · ▼ Δloud · ■ dead zone · ■ motion · ── WPM · │ CONV (multi-signal confluence) · ▾ CUT (audio-novelty cut points)

Click signal labels (left of timeline) to toggle layers. EXCITE bar above timeline shows uncovered peaks (▲) + captured clips (violet). 🎉 teal bands on ruler = reaction windows after kills. ⚡ PEAK badge on video = highlight incoming in <5s.

AI Edit Suggestions

Analyzing clips and signals…

Settings

LiteLLM Connection

Point this at your local LiteLLM proxy. It works with Ollama, LM Studio, or any OpenAI-compatible endpoint.

AI Studio (Anthropic Claude)

Use Claude API directly (claude-opus-4-7 with adaptive thinking) for highlight detection. Enables the AI Studio pipeline mode — much smarter than LLM-based highlight detection, especially for complex gaming footage. Requires an Anthropic API key.

In AI Studio mode, Claude analyzes the full transcript + audio features together using extended reasoning to identify the most impactful highlight moments. Results load directly into the editor — no video render needed.

Enable to unlock the 🤖 AI Studio pipeline mode in the Start Job modal.

Models per Pipeline Stage

You can use different models for each stage. For JSON accuracy (highlights) use a model strong at structured output. For creative writing (commentary) any good instruct model works.

scenes (evenly sampled if video has more; default 120)

Transcription (Whisper)

GPU mode — fastest. compute_type auto-upgraded to float16. Make sure the NVIDIA runtime is passed to this container.

CPU mode — BatchedInferencePipeline splits audio into chunks processed in parallel. beam_size=1 (greedy) is fastest; VAD filter skips silence.

threads/chunk × chunks = cores active

Editing

Commentary Audio

Silence Removal

Removes dead air and long pauses from each rendered clip, tightening pacing automatically.

Background Music

Loops a music file under the full edit. Sidechain ducking lowers music volume automatically when speech is detected.

Watermark / Branding

Burn a text watermark onto every clip. Leave blank to disable.

Extra Export Formats

9:16 vertical shorts are always exported. Enable additional crops per clip.

Caption Translation

Translate burnt-in captions to another language via LLM. Leave blank for source language.

Color Grading & Visual FX

Intro / Outro

Provide video file paths on the server. They'll be normalized and prepended/appended to the full edit.

Advanced Pipeline

Automation

Automatically restarts from the failed stage. Traceback is saved to progress.log.

YouTube Upload

Provide OAuth2 credentials to enable one-click YouTube publish from job detail. Get credentials at console.cloud.google.com.

GPU Acceleration:
✓ Saved!

Clip Library

Star clips from any job to save them here for reuse across projects.

🎞 Stream Gallery

⚠ Found duplicate files in groups

📁

Drop stream files here or browse

Multiple files supported · MP4, MKV, MOV, AVI, WebM — no processing, just storage

Loading gallery…
No videos yet — drop some stream files above to get started.
Queue as:

Pipeline Workflow

Exactly what happens inside the app, step by step.

Resource Legend

🖥 CPU · 80 threadsLocal server CPU
⚡ GPU (optional)NVENC — off by default
🤖 LLM · highlight_modelText model via LiteLLM
👁 LLM · vision_modelMultimodal model via LiteLLM
🔊 Edge TTSMicrosoft cloud, free
⚙ Pure PythonNo AI, no GPU

Recommended Models

PurposeModelWhy
Visual Analysisllama3.2-vision:11b
qwen2-vl:7b
Must accept base64 image input
Highlights / Validationllama3.3:70b
qwen2.5:72b
Strong JSON + long context
Commentaryllama3.3:70b
phi4 · mistral-nemo
Creative writing, short output
Transcriptionlarge-v3 (best)
medium (faster)
faster-whisper, runs locally

Pipeline Statistics

Model Debug

Server Controls

System Logs (OOM kills, crashes, container output)

Chat with LLM

Available Models (LiteLLM)

Whisper Model Cache

Whisper CPU Benchmark

Transcribes a clip of your last uploaded audio with different thread configs to find the fastest setup for your machine.

TikTok Cutter

Select a job above to start cutting.

Layout

Clip Range