Discord

Multimodal

Video upscaling

Same POST /v1/videos endpoint as generation, using the same input_video_url field video editing uses — pass an existing video and get back a higher-resolution version of that same clip. No prompt is required. There's no duration field either — output duration always equals your input video's own duration.

import requests, time

job = requests.post(
    "https://videorouter.sh/api/v1/videos",
    headers={"Authorization": "Bearer llmr_sk_live_..."},
    json={
        "model": "bytedance/seedvr2-upscale-video/fal",
        "scale_factor": 2,
        "input_video_url": "https://example.com/clip.mp4",
    },
).json()
# -> {"id": "video_...", "status": "queued", ...}

status = requests.get(
    f"https://videorouter.sh/api/v1/videos/{job['id']}",
    headers={"Authorization": "Bearer llmr_sk_live_..."},
).json()

Two request shapes depending on the model (see the table below): most fal.ai rows take scale_factor (a multiplier on your input video's own resolution, typically 1–4, default 2); the 3 Atlas Cloud rows instead take the existing resolution field (e.g. "1080p") since their own APIs expose an explicit output-resolution tier rather than a continuous factor. Real price depends on the OUTPUT resolution/duration, computed from your input video's own probed dimensions — that cost already includes our 2% platform fee.

Which models

11 models across 3 providers — fal.ai, Atlas Cloud, and Black Forest Labs (direct).

ModelProviderPrice
seedvr2-upscale-videofal.ai$0.001/output MP-frame
fal/flux-video-upscalefal.ai$0.14/s–$0.55/s by output tier
flux-video-upscaleBlack Forest Labs (direct)$0.07/output MP/s, precise mode
flux-video-upscale-creativeBlack Forest Labs (direct)$0.10/output MP/s, creative detail enhancement
fal/crystal-video-upscalefal.ai$0.10/output MP/s
fal/topaz-upscale-video-generativefal.ai (Topaz)$0.12/s–$0.26/s by output tier
fal/topaz-upscale-video-precisionfal.ai (Topaz)$0.01/s–$0.06/s by output tier
fal/topaz-upscale-video-creativefal.ai (Topaz Astra 2)$0.50/s flat, always billed at 4K
atlascloud/video-upscalerAtlas Cloud$0.018/s (1080p), $0.024/s (2K)
atlascloud/tencent-video-upscalerAtlas Cloud$0.004/s–$0.037/s by output tier
atlascloud/byteplus-video-upscalerAtlas Cloud~$0.0034/s (runtime-quoted)

The two flux-video-upscale* rows call Black Forest Labs directly (flux-video-upscale is also a failover sibling of fal/flux-video-upscale). They accept a scale_factor of 1.5–3 (values outside are clamped), inputs up to 2560×1440 and 20 seconds, and settle from Black Forest Labs' own reported cost on the finished job.

The 3 Atlas Cloud rows bill through Atlas Cloud's reserve-then-settle flow (same as every other Atlas Cloud video model) — the price shown is a pre-call estimate; the real charge settles from Atlas Cloud's own completed-job invoice, same as every other Atlas Cloud video row. Every model here also shows up under the Video Upscale filter on the models catalog.

Not yet supported

Frame-rate interpolation (some providers support it upstream) isn't exposed as a request parameter. Topaz Astra 2 (fal/topaz-upscale-video-creative) auto-selects its own output resolution regardless of any request field — always billed at the conservative 4K ceiling. Atlas Cloud's Tencent row is fixed to its general-purpose "live-action-enhance" style; the anime/restore/small-face style variants aren't exposed. stream: true is rejected outright, same as generation.