Black Forest Labs' FLUX Upscale Pushes AI Video to 4K Without Smeared Faces

Black Forest Labs shipped a dedicated video super-resolution endpoint that regenerates any clip up to native 4K with two quality-vs-fidelity modes.

·
·
Read4 min
TopicVideo · Api
  • FLUX Video Upscale from Black Forest Labs regenerates any clip up to native 4K resolution.
  • Two modes: Precise ($0.07/mp-s, 4 steps) preserves identity; Creative ($0.10/mp-s, 8 steps) invents detail.
  • Supports 1.5x, 2x, and 3x upscale factors on inputs up to 20 seconds and 2560x1440.
  • Fixes FLUX 3 generation artifacts natively: smudged faces, gridded water and grass textures.
  • Available via BFL API with submit-and-poll flow; source audio is preserved.
  • 10-second 1080p clip costs $1.39 precise or $1.98 creative; 4K roughly $5.50 to $7.90.

Black Forest Labs just added a video super-resolution tool to its FLUX lineup, and it targets a very specific pain point: taking generated or captured footage from HD to broadcast and campaign resolutions without the smudged faces and gridded textures that plague general-purpose upscalers. FLUX Upscale ships as a standalone endpoint on the BFL API and playground, and it works on any video, not just FLUX-generated output.

What it actually does

The endpoint takes a clip up to 20 seconds and 2560x1440, then regenerates it at a higher resolution. The upscale_factor supports 1.5x, 2x, and 3x, which from an HD input lands at roughly 1080p, 2K, and 4K. Output frames are capped at around 14.4 megapixels, so pushing 3x on an already-large source will land below the requested factor. The output preserves the source aspect ratio and keeps the original audio track.

The pitch against existing tools is direct: local upscalers can lose quality as you move toward broadcast and campaign resolutions, and high-quality upscalers available today can be slow when processing video at scale. Because the model understands FLUX 3 output natively, it also cleans up common generation artifacts like smudged faces or gridded patterns on water and grass.

Two modes, one parameter

The creativity flag picks between two behaviors:

  • Precise (creativity: 0): preserves the source exactly and sharpens it. 4 sampling steps. Use it when identity matters: faces, products, brand assets, footage of real people.
  • Creative (creativity: 1): restores and invents fine detail more aggressively. 8 sampling steps. Better for generated footage, textures, crowds, and scenery, but faces and products can drift.

You can also pass an optional prompt to steer creative mode toward the right kind of detail, which is a useful lever when the model has to hallucinate texture from limited source information.

How you call it

The API is a standard submit-and-poll flow. One POST with the video as either a base64-encoded mp4 (max 50MB) or an HTTPS URL, then you poll a returned URL until status flips to Ready.

import os, time, requests
submit = requests.post(
    "https://api.bfl.ai/v1/flux-tools/video-upscale-v1",
    headers={"x-key": os.environ["BFL_API_KEY"]},
    json={
        "input_video": "https://your-storage.example.com/clip.mp4",
        "upscale_factor": 2.0,
        "creativity": 1,
    },
).json()
while True:
    time.sleep(5)
    r = requests.get(submit["polling_url"],
                     headers={"x-key": os.environ["BFL_API_KEY"]}).json()
    if r["status"] == "Ready":
        print(r["result"]["sample"])
        break

Signed delivery URLs expire about 1 hour after the result is ready, so download before then.

Pricing math

Billing is per megapixel-second of delivered output, charged only on successful deliveries. The rate card:

OutputPreciseCreative
1080p$0.14/s$0.20/s
2K$0.25/s$0.35/s
4K$0.55/s$0.79/s

Upscaling a 10-second 1080p clip works out to 19.8 megapixel-seconds: $1.39 in precise mode or $1.98 in creative mode. A 10-second 4K clip in creative mode is closer to $8. That is not cheap for hobby use, but reasonable for finishing hero shots in a campaign pipeline.

The real limits

A few constraints will shape how you fit this into a workflow:

  • Max input is 20 seconds, 50MB, and 2560x1440. Longer or larger clips are rejected outright, not truncated, and no charge applies.
  • The endpoint upscales toward 4K, it does not take 4K in. If you already have 2K footage, 1.5x is the only path to full 4K.
  • Creative mode does not strictly preserve identity. For anything with recognizable people or products, precise is the safer default.
  • Compression artifacts in the source cap how much real detail the model can recover, so start from the least-compressed master you have.

Where it fits

The practical slot for this is a finishing step at the end of an AI video pipeline. Generate at HD with a model like FLUX 3 Video (or any competing text-to-video system), edit and trim, then upscale only the final cut to avoid paying for footage you throw away. For teams shipping social-first content at 1080p the cost is negligible; for anyone doing broadcast or out-of-home work, the interesting comparison is against topaz-style local upscalers on the quality-per-hour axis, where a hosted 4K path removes a lot of GPU scheduling pain. You can try the demo before wiring up the API.

Comments

avatar