Flux 3 Video V2V (BFL)
Remix an existing clip with FLUX 3 video-to-video — bring your own MP4
- config
- video
Video-to-video is the node that makes FLUX 3 feel like a remix tool rather than a toy. Instead of starting from a prompt or a still, Flux3VideoV2V_BFL takes an existing MP4 and re-renders it - keep the motion, change the look, extend the story. It's the third leg of the FLUX 3 Video trio in gelasdev's ComfyUI-FLUX-BFL-API, and it's the one people get the most use out of once they've got a clip they actually like.
It's still a cloud call, same as every node in this pack: your video and prompt go to api.bfl.ai, BFL renders the continuation on their hardware, and your GPU sits this one out. The practical difference from T2V and I2V is that the input is bigger and harder to handle - which is exactly where this node's sibling, Video to Base64 (BFL), comes in.
How it works
The node POSTs {"mode": "v2v", "start_video": ...} to /v1/flux-3-video and then does the standard poll-every-5-seconds dance, with the same ~20-minute ceiling as the other video nodes (a real fhd continuation was still generating at eleven minutes in the maintainers' testing). The output is ComfyUI's native VIDEO type, straight into Save Video or a preview node.
The one input that needs explaining is start_video. It's a plain STRING that accepts either:
- a URL to an MP4 you have hosted somewhere, or
- a base64-encoded MP4, typically produced by the pack's Video to Base64 (BFL) node.
The base64 path is the one that keeps people honest in ComfyUI: wire a LoadVideo's output into Video to Base64, then that node's STRING into start_video. Note that pasting a giant base64 blob into the widget yourself works but is brutal to look at and impossible to read - the utility node exists so you don't have to.
The rest of the inputs
prompt is where you direct the transformation - describe the style shift, the added action, the audio continuation. Then the shared FLUX 3 knobs: resolution (hd/fhd), duration (auto or 5–20s), aspect_ratio (auto, 21:9 … 9:16), generate_audio (on by default - and V2V is where native audio continuation really shines), safety_tolerance (0–4, default 2), and draft for cheap test passes. The optional config socket overrides key/base URL/region per node.
Installing
The whole pack installs once:
cd ComfyUI/custom_nodes
git clone https://github.com/gelasdev/ComfyUI-FLUX-BFL-API.git
cd ComfyUI-FLUX-BFL-API
pip install -r requirements.txt
Or use ComfyUI Manager and search "ComfyUI-FLUX-BFL-API". Dependencies are just torch plus what ComfyUI already ships. Requirements: ComfyUI ≥ 0.3.30 (older versions silently disable the video nodes) and a BFL API key in config.ini or a Flux Config (BFL) node - the config-file-in-workflow route is sturdier, since updates keep resetting config.ini.
Where it bites
Black output is the tell for a dead job, same as the other video nodes - the fallback is a 1-frame black clip, so a blank result means moderation, error, or timeout, not a wiring bug. Watch the console for the status. And budget for the fact that this is early-access BFL infrastructure: an fhd V2V pass can sit in Generating for over ten minutes. That's not a hang, and your API credits are quietly draining while it churns - check the Flux Credits (BFL) node before you queue up a dozen of these.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| start_video | STRING | — | |
| resolution | COMBO | hd | 2 options: hd, fhd |
| duration | COMBO | auto | 17 options: auto, 5, 6, 7, 8, 9, +11 |
| aspect_ratio | COMBO | auto | 8 options: auto, 21:9, 2:1, 16:9, 4:3, 1:1, +2 |
| generate_audio | BOOLEAN | true | — |
| safety_tolerance | INT | 20–4 | — |
| draft | BOOLEAN | false | — |
| configopt | BFL_CONFIG | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |