ApiframeApiframe Docs
Video Editing

Topaz Video Upscale

Pro-grade video upscale and frame interpolation, up to 4K.

Use in Apiframe Studio

POST /v2/videos/upscalemodel: "topaz-video-upscale"

Topaz Labs' video upscaler. Combines spatial super-resolution with frame interpolation, supporting outputs up to 4K at 60 fps. Same engine post-houses use for archival restoration.

See Video Editing overview for common request fields, response format, and error codes.

Model-specific parameters

ParameterTypeDescription
topazVideoParams.videostringSource video URL (mp4, mov, or webm).
topazVideoParams.target_resolutionstringOutput resolution. Values: "720p", "1080p", "4k".
topazVideoParams.target_fpsintegerOutput frame rate. Values: 24, 30, 60.
topazVideoParams.enhance_modelstringTopaz model preset. Values: "auto", "theia-fine-tune-detail", "theia-fine-tune-fidelity", "apollo", "rhea", "iris".
topazVideoParams.subject_detectionstringSubject hint. Values: "all", "foreground", "background", "none".

Credit cost

Pricing is per second of input video, tiered by output resolution × output fps. The route probes the input video's duration via ffprobe at submit time and charges cost-per-second × ceil(duration).

Resolution24 fps30 fps60 fps
720p112
1080p447
4K131326

A 10-second clip at 1080p / 30 fps therefore costs 4 × 10 = 40 credits.

Code examples

curl -X POST https://api.apiframe.ai/v2/videos/upscale \
  -H "X-API-Key: afk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "topaz-video-upscale",
    "topazVideoParams": {
      "video": "https://example.com/clip.mp4",
      "target_resolution": "1080p",
      "target_fps": 30,
      "enhance_model": "auto"
    }
  }'
import requests

response = requests.post(
    "https://api.apiframe.ai/v2/videos/upscale",
    headers={
        "X-API-Key": "afk_your_api_key_here",
        "Content-Type": "application/json",
    },
    json={
        "model": "topaz-video-upscale",
        "topazVideoParams": {
            "video": "https://example.com/clip.mp4",
            "target_resolution": "1080p",
            "target_fps": 30,
            "enhance_model": "auto",
        },
    },
)
print(response.json())
const response = await fetch("https://api.apiframe.ai/v2/videos/upscale", {
  method: "POST",
  headers: {
    "X-API-Key": "afk_your_api_key_here",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "topaz-video-upscale",
    topazVideoParams: {
      video: "https://example.com/clip.mp4",
      target_resolution: "1080p",
      target_fps: 30,
      enhance_model: "auto",
    },
  }),
});
console.log(await response.json());

Try it

POST/v2/videos/upscaleTry it

On this page