Skip to main content
Video upscaling lets you enhance existing videos to higher resolutions while improving visual quality. The Topaz Video Upscale model uses AI-powered upscaling to increase resolution by 2x or 4x, or apply quality enhancement at the original resolution (1x).

How it works

Video upscaling uses the same async queue system as video generation:
  1. Queue — Submit your video to /video/queue with the topaz-video-upscale model
  2. Poll — Check /video/retrieve with the returned queue_id until the status is completed
  3. Complete — Call /video/complete to finalize and get the output URL
The server automatically detects the input video’s duration, frame rate, and dimensions from the uploaded file. You don’t need to provide these values — billing is calculated from the actual video metadata.

Upscale factors

The upscale_factor parameter replaces resolution for upscale models. Passing resolution will return an error. This is because the output resolution depends on the input video’s dimensions — a 2x upscale of a 720p video produces a different result than a 2x upscale of a 480p video.

Supported input formats

  • Formats: MP4, MOV, WebM
  • Input methods: HTTPS URL or data:video/...;base64,... data URL
  • Max duration: 300 seconds (5 minutes)

API usage

Queue an upscale job

The response includes a queue_id to track the job:

Poll for completion

Finalize with complete

After retrieving the result, call /video/complete to finalize:

API parameters

Parameters not used for upscale models

The following parameters are not accepted for topaz-video-upscale and will return an error if provided: The duration parameter is also ignored — the server detects duration directly from the video file for billing accuracy.

Pricing

Pricing is based on duration, output resolution tier, and frame rate. The output resolution tier is determined by the input video’s height multiplied by the upscale factor.

Output resolution tiers

Videos with frame rates above 48fps cost 2x the per-second rate.

Pricing examples

Use the Video Quote API to get exact pricing before submitting a job.

Getting a quote

The quote endpoint accepts input_height so it can estimate the output resolution tier. This is optional — if omitted, the quote assumes a conservative estimate.

Troubleshooting