Seedream 5.0 Pro ya está aquí | Pruébalo en el Generador de Imágenes →
Inicio/Explorar/Bria/Fibo/Video Upscaler

Fibo Video Upscaler

bria /

Bria Video Upscaler increases video resolution up to 8K with 2x or 4x upscaling. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

upscaler
Entrada

Inactivo

$0.14por ejecución·~71 / $10

EjemplosVer todo

Modelos relacionados

README

Bria Fibo Video Upscaler

Bria Fibo Video Upscaler is an AI-powered video enhancement model that upscales videos to higher resolutions. Upload your video and select a target resolution — the model intelligently enhances detail and sharpness while maintaining temporal consistency across frames.

Why Choose This?

  • AI-powered upscaling Enhances resolution with intelligent detail reconstruction, not simple interpolation.

  • 2K and 4K output Upscale to 2K or 4K resolution for crisp, high-quality results.

  • Temporal consistency Maintains smooth, flicker-free results throughout the video.

  • Multiple output formats Export as MP4, MOV, MKV, WebM, or GIF with various codec options.

  • Detail preservation Reconstructs fine textures and sharp edges without over-sharpening.

Parameters

ParameterRequiredDescription
videoYesSource video to upscale (URL or upload)
target_resolutionNoOutput resolution: 2k (default), 4k
output_container_and_codecNoOutput format (see table below, default: mp4_h264)

Output Format Options

OptionContainerCodec
webm_vp9WebMVP9
mp4_h264MP4H.264
mp4_h265MP4H.265/HEVC
mov_h265MOVH.265/HEVC
mov_prores4sMOVProRes 4444
mkv_h264MKVH.264
mkv_h265MKVH.265/HEVC
mkv_vp9MKVVP9
gifGIF-

How to Use

  1. Upload your video — provide the video you want to upscale.
  2. Select target resolution — choose 2K or 4K output.
  3. Choose output format — select your preferred container and codec.
  4. Run — submit and download your upscaled video.

Pricing

DurationCost
Per second$0.14

Billing Rules

  • Total cost = $0.14 × video duration (in seconds)

Examples

  • 5s video → $0.70
  • 10s video → $1.40
  • 30s video → $4.20

Best Use Cases

  • Content Remastering — Upscale old or low-resolution footage for modern displays.
  • Social Media — Enhance video quality for higher engagement.
  • Professional Production — Prepare footage for 4K delivery requirements.
  • Archival Restoration — Improve quality of legacy video content.
  • Marketing Materials — Create crisp, high-resolution promotional videos.

Pro Tips

  • Upload the highest quality source available for best upscaling results.
  • Use 2K for moderate enhancement with faster processing.
  • Choose 4K for maximum detail on large displays or professional delivery.
  • mp4_h264 offers best compatibility across devices and platforms.
  • mov_prores4s provides highest quality for professional editing workflows.
  • Avoid upscaling already heavily compressed videos — artifacts may be amplified.

Notes

  • Maximum video length is 30 seconds. Longer videos will return an error.
  • Only video is required; other parameters have defaults.
  • Upscaling works best on clean source footage with minimal compression artifacts.
  • Ensure uploaded video URLs are publicly accessible.
  • Processing time depends on video length and target resolution.

Related Models

Nota:Este sitio web utiliza modelos de IA proporcionados por terceros.

Fibo Video Upscaler API — Quick start

Grab a WaveSpeedAI API key, then call POST https://api.wavespeed.ai/api/v3/bria/fibo/video-upscaler with your input as JSON. The endpoint returns a prediction id. Start polling the result endpoint around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. On completed, read output values from data.outputs. Examples for Fibo Video Upscaler below.

HTTP example
set -euo pipefail

: "${WAVESPEED_API_KEY:?Set WAVESPEED_API_KEY}"

REQUEST_BODY=$(cat <<'JSON'
{
    "video": "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4",
    "target_resolution": "2k",
    "output_container_and_codec": "mp4_h264"
}
JSON
)

# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
  -X POST "https://api.wavespeed.ai/api/v3/bria/fibo/video-upscaler" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $WAVESPEED_API_KEY" \
  -d "$REQUEST_BODY")

TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
  printf 'Submission response did not contain a prediction id
' >&2
  exit 1
fi
RESULT_URL=$(printf '%s' "$TASK" | jq -r '.urls.get // empty')
if [ -z "$RESULT_URL" ]; then
  RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
fi

# 2. Poll until the prediction finishes.
while true; do
  RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
    -H "Authorization: Bearer $WAVESPEED_API_KEY")
  RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
  STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
  case "$STATUS" in
    completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
    failed|cancelled|timeout) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
    created|processing) sleep 2 ;;
    *) printf 'Unexpected status: %s
' "$STATUS" >&2; exit 1 ;;
  esac
done
Node.js example
const submitUrl = "https://api.wavespeed.ai/api/v3/bria/fibo/video-upscaler";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');

async function requestJson(url, options = {}) {
  const response = await fetch(url, options);
  if (!response.ok) throw new Error(await response.text());
  return response.json();
}

// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
        "video": "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4",
        "target_resolution": "2k",
        "output_container_and_codec": "mp4_h264"
}),
});
const task = body.data ?? body;
if (!task.id) throw new Error("Submission response did not contain a prediction id");
const resultUrl = task.urls?.get ||
  `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;

// 2. Poll until the prediction finishes.
while (true) {
  const resultBody = await requestJson(resultUrl, {
    headers: { "Authorization": `Bearer ${apiKey}` },
  });
  const result = resultBody.data ?? resultBody;
  if (result.status === "completed") {
    console.log(result.outputs);
    break;
  }
  if (["failed", "cancelled", "timeout"].includes(result.status)) throw new Error(JSON.stringify(result));
  if (!["created", "processing"].includes(result.status)) throw new Error("Unexpected status: " + result.status);
  await new Promise(resolve => setTimeout(resolve, 2000));
}
Python example
import json
import os
import time
from urllib.request import Request, urlopen

api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
    "video": "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4",
    "target_resolution": "2k",
    "output_container_and_codec": "mp4_h264"
}

def request_json(url, data=None):
    request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
    with urlopen(request) as response:
        return json.load(response)

# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/bria/fibo/video-upscaler", json.dumps(payload).encode())
task = body.get("data", body)
if not task.get("id"):
    raise RuntimeError("Submission response did not contain a prediction id")
result_url = task.get("urls", {}).get("get") or f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"

# 2. Poll until the prediction finishes.
while True:
    result_body = request_json(result_url)
    result = result_body.get("data", result_body)
    status = result.get("status")
    if status == "completed":
        print(result.get("outputs", []))
        break
    if status in {"failed", "cancelled", "timeout"}:
        raise RuntimeError(result)
    if status not in {"created", "processing"}:
        raise RuntimeError(f"Unexpected status: {status}")
    time.sleep(2)

Fibo Video Upscaler API — Frequently asked questions

What is the Fibo Video Upscaler API?

Fibo Video Upscaler is a Bria model for upscaling, exposed as a REST API on WaveSpeedAI. Bria Video Upscaler increases video resolution up to 8K with 2x or 4x upscaling. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing. You can call it programmatically or try it from the playground above.

How do I call the Fibo Video Upscaler API?

POST your input parameters to the model's REST endpoint (shown in the API tab of this playground) with your WaveSpeedAI API key in the Authorization header. Submission returns a prediction ID. Poll the result endpoint starting around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. The playground generates production-oriented Python, JavaScript, and cURL examples with timeouts, transient-error handling, and safe GET retries. Full request/response shape is documented at https://wavespeed.ai/docs/docs-api/bria/bria-fibo-video-upscaler.

How much does Fibo Video Upscaler cost per run?

Fibo Video Upscaler starts at $0.14 per run. That figure is the base price — the final charge scales with the parameters you set in the form (output size, length, count, references, or whatever knobs this model exposes), so a higher-quality or larger output costs more than a minimal one. The exact cost for your current input is shown live next to the Generate button before you submit, and the actual per-call charge is recorded on the prediction afterwards.

What inputs does Fibo Video Upscaler accept?

Key inputs: `video`, `output_container_and_codec`, `target_resolution`. The full JSON schema (types, defaults, allowed values) is rendered above the Generate button and mirrored in the API reference at https://wavespeed.ai/docs/docs-api/bria/bria-fibo-video-upscaler.

How long does Fibo Video Upscaler take to generate?

Median end-to-end generation time on WaveSpeedAI is around 69 seconds per request, based on recent successful runs. Queue time varies with global demand; live status is visible in the prediction record.

Can I use Fibo Video Upscaler outputs commercially?

Commercial usage rights depend on the model's license, set by its provider (Bria). The license summary appears on the model card above; see WaveSpeedAI's Terms of Service for platform-level conditions.

Fibo Video Upscaler | AI Video Upscaler API | WaveSpeedAI