Cut a clip from a video with ffmpeg
Extract part of a video in seconds by copying streams instead of re-encoding them.
Run ffmpeg -ss 00:01:30 -to 00:03:00 -i input.mp4 -c copy clip.mp4 to snip 1:30–3:00 instantly and losslessly.
01Command
Command
$ ffmpeg -ss 00:01:30 -to 00:03:00 -i input.mp4 -c copy clip.mp402What it does
With -c copy, ffmpeg remuxes the existing audio and video packets into a new file without decoding them, so the cut finishes almost instantly and quality is untouched. -ss sets the start and -to the end (or -t a duration); putting -ss before -i seeks into the input first, which is much faster on long files. For frame-accurate cuts or unusual codecs, drop -c copy and let ffmpeg re-encode.
03Risk
!Warning: Stream copy can only start at a keyframe, so clips may open a few frames early or produce a brief glitch — re-encode (add -c:v libx264 -c:a aac) when precision matters. Browser and editor compatibility also improves if you add -movflags +faststart for MP4 output.
04Undo
✓No undo needed — this command does not change persistent state.
05Sources
- ffmpeg(1) — Arch Manual PagesEvidence: Same options: input/output seeking with -ss/-to and stream copy via -c copy described in detail.
- ffmpeg(1) — Debian bookwormEvidence: Documents -ss position, -to position, -t duration and the -c copy stream-copy mode for cutting without re-encoding.
Last verified: 2026-09-19 · Category: Media