Cut a Video into Segments

Pick a video, type a list of start-end windows, and keep just those clips (joined) or remove them — it's cut in your browser, nothing is uploaded.

Try:
Cut video

About this tool

video-cut-segments trims a single video down to the exact parts you want. Type a list of start-end time windows and pick a mode:

Each time can be written as SS, MM:SS, or HH:MM:SS, and fractions of a second work too (0:03.5). Separate windows with a new line, a comma, or a semicolon. Overlapping or touching windows are merged automatically, so a frame is never duplicated. Audio stays in sync — the tool trims and re-joins the video and audio tracks together (trim/atrim + concat), which is more reliable across multiple sections than the bare select filter. The result is a single re-encoded H.264/AAC .mp4.

Everything runs locally in your browser with ffmpeg (WebAssembly). Your video is never uploaded to a server. For a single continuous clip with no re-encode, use the video-trim tool instead; to auto-drop silent gaps, see video-silence-cut.

FAQ

How do I write the time windows?

Each window is start-end, and you list one or more of them. Times can be SS (seconds), MM:SS, or HH:MM:SS, with optional fractions — for example 5-10, 0:05-0:10, or 1:02:03-1:02:30. Put each window on its own line, or separate them with commas or semicolons: 0:05-0:10, 1:30-1:45.

What's the difference between keep and remove?

Keep produces a clip containing only the windows you listed, joined together — everything else is discarded. Remove does the opposite: it deletes the listed windows and keeps all the footage around them. Both run in a single pass and join into one output file.

Will the audio stay in sync?

Yes. The video and audio tracks are trimmed and re-joined together for every window (trim/atrim + setpts/asetpts + concat), which keeps them aligned across multiple cuts. This is why the output is re-encoded rather than a stream-copy — a frame-accurate multi-segment join can't be done losslessly.

Is my video uploaded anywhere?

No. The cut runs entirely in your browser with ffmpeg compiled to WebAssembly. The file never leaves your device, so it works offline and keeps private footage private.

What if my windows overlap?

Overlapping or back-to-back windows are merged before cutting, so the same frame is never selected twice (in keep mode) or double-counted (in remove mode). The windows are also sorted by start time, so you don't have to list them in order.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool video-cut-segments 'url=https://example.com/input' 'segments=0:05-0:10
1:30-1:45' 'mode=keep'

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/video-cut-segments/?url=https://example.com/input&segments=0%3A05-0%3A10%0A1%3A30-1%3A45&mode=keep

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.