Media Splitter

Split an audio or video file into segments, cut exact time ranges, or extract its audio track.

Media Splitter

Node type: utility:media_splitter
Category: Editing

Description

Splits an audio OR video file into an ordered array of segments via a server-side ffmpeg time-split. Three ways to drive it:

  • Even chunking (default). Every segment is at most maxSeconds long (default 14) and the cuts are plain time offsets, so the segments concatenate back continuously. A general-purpose cutter: for example, split a full TTS track into sub-15s slices to fan out one talking-avatar clip per slice (Seedance caps a clip at 15s).
  • Exact ranges. Set ranges to cut specific windows: 0-30, 30-45. See below.
  • Audio extraction. Set extract to audio to re-encode every segment as audio-only mp3.

Cutting exact ranges

ranges takes comma-separated start-end pairs in seconds, decimals allowed:

0-30, 30-45
12.5-18, 90-95.25

Rules worth knowing:

  • ranges overrides maxSeconds and chunkCount. When it is set, those are not sent at all.
  • Ranges are used as given. They may sit out of order, overlap, or leave gaps, because they are explicit cuts and not a tiling of the source. 30-45, 0-10 returns the 30-45 clip first.
  • They compose with extract: audio, giving audio-only slices of those windows.
  • A malformed range fails the node and quotes the bad token. Nothing is silently dropped.
  • A range whose end runs past the end of the media fails the node and tells you the real duration, rather than quietly returning a short clip.
  • Up to 50 ranges per node.

Canvas ports

These appear as port handles on the left side of the node.

ID Label Details
media Audio or Video UNKNOWN (required)

These render as form fields in the right-side config panel when the node is selected.

ID Label Details
extract Output TEXT · default segments. One of segments or audio. Any other value fails the node
ranges Ranges (seconds) TEXT · optional. Exact cut windows, e.g. 0-30, 30-45. Overrides maxSeconds/chunkCount

maxSeconds (default 14) and chunkCount are also honored by the executor, but they are not declared in the node catalog, so they have no sidebar field: set them through the API, the MCP surface, or an agent. ranges covers most of what they were used for.

Outputs

ID Label Type
segments Segment URLs ARRAY
segmentsDetailed Segments (detailed JSON) JSON
count Segment Count NUMBER
audio Audio Track AUDIO

segments is a plain string array of segment URLs; wire it into a Text Iterator's array input to fan out per-segment processing. segmentsDetailed carries { index, url, startSeconds, durationSeconds } per segment for inspection or timing-aware consumers.

Notes

  • The media input accepts a bare URL string or an object carrying url / audioUrl / videoUrl / video / audio.
  • In audio mode with no explicit maxSeconds/chunkCount/ranges, the window defaults to 3600s, so the WHOLE track comes back as one file on the audio output. That is the usual way to pull a reference video's soundtrack.
  • The audio output is empty in segments mode.

Auto-generated from the Wireflow node registry.

© 2026 Wireflow. All rights reserved.

Media Splitter | Wireflow Docs