Build with Video Matte (Background Removal).
Remove a video's background → per-frame alpha clip.
Read the Video Matte (Background Removal) docs
Best for
Remove a video's background → per-frame alpha clip. Use the playground to set up a single step, then open a workflow when you want to connect more tools.
Inputs explained
- Video Url (required)
- Set the video url used by this model. Type: video.
- Matting Model (optional)
- Set the matting model used by this model. Type: text. Options: VEED (fast, 4K, WebM alpha), Bria V-RMBG (SOTA edges, WebM alpha), BiRefNet (ProRes 4444 alpha + WebM). Default: "veed".
- Alpha Format (optional)
- Set the alpha format used by this model. Type: text. Options: WebM / VP9 (alpha. all backends), ProRes 4444 (alpha. requires model=birefnet), MP4 / H.264 (no alpha). Default: "webm_vp9".
- Subject Is Person (VEED) (optional)
- Set the subject is person (veed) used by this model. Type: boolean. Default: true.
- Refine Foreground Edges (VEED) (optional)
- Set the refine foreground edges (veed) used by this model. Type: boolean. Default: true.
Tips before you run
Start with the default settings and change one input at a time. Keep the result you like on your board so the next step can use it.
If you add a reference file, use a link the workflow can read. Check the inputs and credit estimate on the board before starting a run.
Working with this model
Text behind the subject, which is what most people came here for
The effect: a title sits on screen and the person walks in front of it. It is this node plus a track ordering, and nothing else.
Your clip -> Video Matte -> Video Editor
track 1: the text
track 2: the alpha clip (on top, so it wins)
- Wire the clip into Video Url. It is a port, so wire it; do not paste the url into config where nobody can see where it came from.
- Leave Alpha Format on
webm_vp9unless a tool downstream has to read the alpha itself. - Run it. The Matte Video (alpha) output is your subject with the background gone, frame by frame.
- In the Video Editor, put the text on one timeline track and the matte clip on a track AFTER it. Track order is z-order and the first track is the bottom one, so the later track is the one that covers the other.
Get the order backwards and the text sits on top of the person, which looks like the node failed. It did not; the tracks are just the wrong way round.
One more setting, if your matte and your composition are different shapes: a
timeline clip fits cover by default, which CROPS the mismatch and can quietly
eat the edges of your subject. Set the clip's fit to contain and it letterboxes
instead.
Subject Is Person mattes the person and NOTHING they are on
This is the setting that costs an afternoon.
With Subject Is Person on, VEED cuts out the human and treats everything else as background. A bike, a skateboard, a horse, a held prop: all background. Frame to frame the model disagrees with itself about where the person stops and the object starts, so the edge crawls and the thing your subject is sitting on drifts in and out. On a moving shot the occlusion visibly flickers.
Turn it off when the subject and their vehicle or prop should be cut out as ONE object. You get whole-foreground matting instead, the rider and the bike come out together, and the flicker goes with them.
Leave it on for a plain talking head, where it is the more accurate of the two.
Three backends, and they are not interchangeable
They all cost the same. Pricing on this node is flat per run, so switching backends changes the edges and the speed, never the bill. Pick on quality.
| Model | Use it for |
|---|---|
veed (default) | Fastest, handles 4K. Start here. |
bria_v_rmbg | Cleanest edges (hair, motion blur). Reach for it when VEED's edges crawl. |
birefnet | The only one that emits true ProRes 4444 alpha. |
Alpha Format interacts with that choice, and the node protects you rather than surprising you:
webm_vp9carries real alpha on all three. This is the default and the right answer almost always.proresneedsbirefnet. Ask for it on VEED or Bria and you get WebM alpha instead, never a silently flattened file.mp4_h264has NO alpha channel. Picking it means the background comes back as solid black, which defeats the point of the node.
The output reports which backend actually ran, so an A/B between two of them is readable after the fact instead of a guess.
WebM alpha is real even when your player says it is not
VP9 alpha_mode is what webm_vp9 produces. Browsers decode it, Remotion
decodes it, so the Video Editor and the render both see the transparency.
ffmpeg's default decoder does NOT, so a clip that looks like it has a black
background in a local ffmpeg preview can be perfectly correct in the render.
If something downstream genuinely has to read the alpha channel, that is the
one reason to switch to birefnet and ProRes.
Common questions
How do I use Video Matte (Background Removal) on Wireflow?
Set the inputs above and choose Open in a workflow. Sign in to save your board, then check its credit estimate before you run.
Can I use Video Matte (Background Removal) through an API?
Yes. Save a workflow with this model, then call the Wireflow run API with its workflow ID. The API tab has examples you can copy.
What changes the credit price?
The price shown uses the model defaults. Your inputs and model settings can change the total. The workflow shows an estimate before you run.
Can I connect this to another model?
Yes. Open it in a workflow and connect its output to another node with a matching input type.