ffmpeg filter_complex [0:v] in video-filter: refused, labels fine

Sume video-filter refuses stream specifiers like [0:v] in a filtergraph because the server wraps the input and output. Internal labels such as [a] are allowed.

4 min readSume
All posts

Do not write [0:v] in a Sume video-filter graph. The server wraps your filters as [0:v]...[vout] itself, so a stream specifier is refused as invalid_filtergraph. Internal labels you invent, such as split[a][b], are fine.

This is from the Video filter docs, read 2026-10-01. If an assistant ported an ffmpeg command after the Resolve 21.1 announcement, the leading [0:v] is the line to delete.

Why is [0:v] refused?

A filter_complex string normally names its inputs and outputs. Here the request has exactly one clip, supplied as video_url, so there is nothing to select. The client supplies filters only; the server wraps [0:v] in front and [vout] behind.

Which labels are allowed?

Labels that start and end inside your graph. The docs give split[a][b] as the example.

Label examples against the Video filter rules, read 2026-10-01.
Graph fragmentResult
split[a][b];[a]hflip[c];[b][c]hstackAccepted: internal labels only
[0:v]hflipRefused: stream specifier
[0:v]split[a][b]Refused: leading [0:v]

What does the refusal look like?

The code is invalid_filtergraph; the free check returns it as a diagnostic, so nothing is billed. This sample is refused on its leading label.

curl -X POST https://api.sume.com/v1/video-filter/check \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://media.sume.com/artifacts/artf_demo/talk.mp4",
    "filtergraph": "[0:v]hflip"
  }'

What should I use instead?

Write the same chain without the outer labels. For a first look at the allowlist, see the filter allowlist post. Clients also cannot send vf, ffmpeg or cmd fields.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume