Skip to content

Examples Split

simonefil edited this page Jul 30, 2026 · 1 revision

Examples: Split

Worked configurations for cutting MKV files. Each recipe gives the situation, the WebUI settings, what to expect, and the CLI equivalent.

Read Split Mode first. Fields not mentioned are left at their defaults.


1. A disc rip into four episodes, by chapter groups

A Blu-ray rip containing four episodes, 21 chapters total, split 5 / 5 / 5 / 6.

Field Value
Source /media/disc1.mkv
Output /media/out
Mode Chapter pattern
Pattern 5,5,5,6
Snap nearest

Get the chapter count first. Tick Dry-run, press F5 to list the file, then F10. The log reports Found N chapters and nothing is written. The pattern's sum must equal that number exactly, or the job fails with a mismatch naming both figures.

Expect: four segments in the detail panel, named disc1.part01.mkv through disc1.part04.mkv. Chapter boundaries are already keyframes, so nearest moves nothing and selects the fast path (mkvmerge stream copy, no re-encoding). Minutes rather than hours.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" --pattern "5,5,5,6" \
  --output-dir "/media/out" --snap nearest

2. Explicit ranges, ending at the end of the file

Two episodes and you know the boundary timecode.

Field Value
Mode Ranges
Ranges 00:00:00-00:21:40,00:21:40-END

END is the reserved word for the end of the file, which saves you looking up the exact duration.

Expect: two segments. Ranges is the most controllable mode. Every boundary is yours. Ranges past the end of the file are clamped with a warning; overlapping ranges are allowed but warned about.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" \
  --ranges "00:00:00-00:21:40,00:21:40-END" --output-dir "/media/out"

3. Split at points instead of ranges

Same result as recipe 2 with less typing when the segments are contiguous.

Field Value
Mode Split at
Split at 21:40

N cut points produce N+1 segments, so one point gives two files. 20:00,40:00 would give three.

Expect: identical to a ranges configuration covering the whole file. This is simply a shorthand. Cannot be combined with trim.

RemuxForge.Cli --mode split --source "/media/rec.mkv" --split-at "21:40" \
  --output-dir "/media/out"

4. Trim an intro, an outro, or both

A recording with 90 seconds of junk at the front and 40 seconds at the end.

Field Value
Mode Trim
Trim start 00:01:30
Trim end 00:23:20

Either field on its own is valid; at least one is required. Trim produces one output file, named <source>_trimmed.mkv by default.

Expect: one file with everything outside the bounds dropped.

With Snap = off this is frame-perfect. The output starts on exactly the frame at 00:01:30, at the cost of re-encoding that first GOP. If a keyframe is close enough for your purposes, Snap = nearest is far faster.

RemuxForge.Cli --mode split --source "/media/rec.mkv" \
  --trim-start "00:01:30" --trim-end "00:23:20" --output-dir "/media/out"

5. Cut on an exact frame

You measured the boundary in a frame-accurate player and want that frame, with no timecode rounding in between.

Field Value
Mode Ranges
Ranges f0-f31199,f31200-END
Snap off

f<n> is a direct frame index. Snap = off is essential here. Any snap value would move the boundary to a keyframe and defeat the point.

Expect: segment 1 is frames 0–31199, segment 2 starts exactly at frame 31200. Slow path, because frame-perfect cutting means re-encoding the head GOP of each segment.

Frame indices are resolved against the file's actual PTS list, so this is exact on VFR content too.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" \
  --ranges "f0-f31199,f31200-END" --snap off --output-dir "/media/out"

6. One file per chapter

A concert or compilation where every chapter is a separate item.

Field Value
Mode Chapters each
Template {source_name}.ch{n:02d} - {chapter_name}.mkv

No parameters. It just needs the file to have chapters, otherwise you get chapters-each requires chapters.

Expect: one file per chapter. {chapter_name} inserts the chapter's own name into the filename, which is useful for concerts and compilations. Names are sanitised, so unusual characters in chapter titles cannot produce invalid filenames.

RemuxForge.Cli --mode split --source "/media/concert.mkv" --chapters-each \
  --output-dir "/media/out" --output-template "{source_name}.ch{n:02d} - {chapter_name}.mkv"

7. Continue an existing season numbering

The disc holds episodes 214–217 of a long-running series and you want the filenames to say so, not part01.

Field Value
Mode Chapter pattern
Pattern 5,5,5,6
Template Bleach.S12E{n+213:03d}.mkv

{n} starts at 1, so the offset you need is desired_first − 1 = 213.

Expect: Bleach.S12E214.mkv through Bleach.S12E217.mkv.

This also pairs with Remux Mode, since the output names match a standard S(\d+)E(\d+) pattern without further renaming.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" --pattern "5,5,5,6" \
  --output-dir "/media/out" --output-template "Bleach.S12E{n+213:03d}.mkv"

8. Fast, when frame-perfect does not matter

You want a rough cut quickly and a second either way is irrelevant.

Field Value
Mode Split at
Split at 21:40
Snap nearest

Any snap value other than off selects the fast path: mkvmerge stream-copies everything and no video is re-encoded. off gives frame-perfect boundaries and requires re-encoding the head GOP of every segment.

Snap Boundary lands
before on the previous keyframe
after on the next keyframe
nearest on the closest keyframe

Expect: the boundary moves by up to a GOP, typically under a second. Watch the log for snap would eat segment or snap overlap, which mean snapping collapsed or overlapped a segment.

RemuxForge.Cli --mode split --source "/media/rec.mkv" --split-at "21:40" \
  --snap nearest --output-dir "/media/out"

9. Split a re-encode using the original VFR timing

Your input is a re-encode of an original VFR release. Its timestamps have been normalised and no longer describe the original timing, so cutting by timecode lands in the wrong place.

Field Value
Source /media/reencode.mkv
Source raw /media/original-vfr.mkv
Mode Ranges
Ranges 00:00:00-00:21:40,00:21:40-END

Frames come from Source; presentation timestamps are read from Source raw.

Constraints: single file only, rejected in folder batch mode, and it must be a file, not a folder. The two files must have the same frame count; a mismatch stops the job rather than warning, because different frame counts mean the indices do not correspond and every boundary would be wrong.

Expect: the log confirms both paths. Using Source raw disables the fast path, you will see fast path disabled: source raw, so this is always the slow route.

RemuxForge.Cli --mode split --source "/media/reencode.mkv" \
  --source-raw "/media/original-vfr.mkv" \
  --ranges "00:00:00-00:21:40,00:21:40-END" --output-dir "/media/out"

10. Batch a folder of identical discs

A box set of six discs, all with the same chapter structure.

Field Value
Source /media/boxset (a folder)
Output /media/out
Recursive on
Mode Chapter pattern
Pattern 5,5,5,6
Template {source_name}.part{n:02d}.mkv

The options are shared across every file. 5,5,5,6 has to be right for all six discs. If disc 4 has 20 chapters instead of 21, that file errors with a pattern mismatch while the others succeed. The batch does not abort.

Expect: each input produces four outputs, distinguished by {source_name}. Run it with Dry-run first: you will see immediately if one disc's chapter count does not fit.

Source raw is not available in batch mode.

RemuxForge.Cli --mode split --source "/media/boxset" --recursive \
  --pattern "5,5,5,6" --output-dir "/media/out"

11. Dry-run first

Dry-run reports the complete plan without writing any file.

Field Value
Dry-run on

Press F5 to list the input, then F10. Select the row and the detail panel shows Resulting segments: N with a card per segment giving output filename, start, end, duration, chapter count and frame count. The log adds the chapter count, the frame count and the pipeline that would run. Nothing is written.

This is where a pattern that does not sum, a template that produces duplicate names, or a {n+offset} that is off by one becomes visible: the segment list in the detail panel shows the filenames the template produced.

Then untick Dry-run, press OK, and F10.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" --pattern "5,5,5,6" \
  --output-dir "/media/out" -n

12. Re-running when the output already exists

You split a disc, changed your mind about the template, and want to run it again.

Field Value
Force on

With Force off, segments whose output file already exists are skipped with skipping existing segment, useful for resuming an interrupted batch, confusing if you expected a fresh run.

Expect: with Force on, existing outputs are overwritten. Note that a segment whose output path would equal the input file aborts the whole job regardless of Force, so you cannot destroy your source this way.

RemuxForge.Cli --mode split --source "/media/disc1.mkv" --pattern "5,5,5,6" \
  --output-dir "/media/out" --force

Reference: time formats

Every time field, ranges, split points, trims, accepts:

Format Example
HH:MM:SS.mmm 00:21:40.500
MM:SS.mmm 21:40
SS.mmm 1300.5
f<frame> f31200
END END

Reference: template tokens

Token Value
{source_name} input filename without extension
{n} segment number from 1
{n:02d} zero-padded to 2 digits
{n+213:03d} offset and padded
{n-1} negative offset
{start} / {end} segment timestamps
{chapter_name} first chapter's name

Defaults per mode: {source_name}.part{n:02d}.mkv for pattern/ranges/split-at, {source_name}_trimmed.mkv for trim, {source_name}.ch{n:02d}.mkv for chapters-each.

Next

Clone this wiki locally