Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.unifically.com/llms.txt

Use this file to discover all available pages before exploring further.

Upscale videos using Topaz Labs AI models. One endpoint covers both upscale-only and upscale + frame-interpolation flows. Output sizing is set via a resolution tier — the long edge maps to exact pixels and the short edge is derived from the probed source aspect ratio.

Model

topaz-labs/video-upscale

Parameters

ParameterTypeRequiredDefaultDescription
video_urlstringYes-Publicly-accessible URL of the source video
presetstringNoprob-4Topaz upscale model short-code. See Upscale presets
resolutionstringNo-Output resolution tier. One of 480p, 720p, 1080p, 1440p, 4k, 8k. Short edge is derived from the source aspect ratio
target_fpsnumberNosource fpsOutput frame rate. Defaults to the source video’s fps
frame_interpolationbooleanNofalseEnable a frame-interpolation pass chained after the upscale. When true, interpolation_preset is required
interpolation_presetstringConditional-Required when frame_interpolation: true. One of apo-8, apf-2, chr-2, chf-3
interpolation_settingsobjectNo-Pass-through key/values for the interpolation filter. Only valid when frame_interpolation: true. See Interpolation settings
extra_settingsobjectNo-Model-specific enhancement tuning. See Enhancement parameters

Upscale presets

CodeModelBest for
prob-4 (default)ProteusGeneral purpose. Recommended for most sources; handles low-to-medium quality, grainy, or compressed footage
rhea-1Rhea4x high-fidelity upscaling of organic textures, fine detail, and faces. Best for clean or low-res sources
thd-3Theia Fine Tune DetailAggressive per-frame sharpening and detail extraction; may introduce subtle frame-to-frame variation
thf-4Theia Fine Tune FidelityStable clarity-focused sharpening with reduced artifacts. More consistent than the Detail variant
iris-2, iris-3IrisFace recovery for degraded footage. Restores faces in old, low-quality, or compressed video
gcg-5, ghq-5Gaia CG / HQCGI and animation upscaling. Preserves clean edges and flat colour regions
amq-13, ahq-12, alq-13ArtemisBalanced denoise + sharpening across quality tiers (Medium / High / Low quality sources)
ddv-3Dione DVDeinterlacing for legacy DV footage
dtd-4, dtv-4Dione TV / DetailDeinterlacing for broadcast / TV legacy footage
nyx-3, nxf-1, nxl-1, nxhf-1NyxVideo denoise variants (standard, fast, lossless, high-fidelity)
aaa-9Artemis AA / MoiréAliasing and moiré artifact correction
color-1ColorizeBlack-and-white to colour conversion
thm-2ThemisMotion deblur for fast-moving footage

Enhancement parameters

Pass any of these inside extra_settings. Anything omitted is auto-configured by Topaz. Use auto: "Manual" to override all values explicitly, or auto: "Relative" to use autopilot as a base with your values as offsets.
KeyTypeRange / valuesDescription
autostringAuto (default), Manual, RelativeParameter mode
video_typestringProgressive, Interlaced, ProgressiveInterlacedSource frame/field type
field_orderstringTopFirst, BottomFirst, AutoInterlaced field order (interlaced sources only)
focus_fix_levelstringNone, Normal, StrongDownscales input before the model for stronger blur correction
compressionfloat-1 to 1Compression-artifact recovery strength. Higher = more aggressive
detailsfloat-1 to 1Detail reconstruction amount
noisefloat-1 to 1Noise reduction. Higher = more reduction
blurfloat-1 to 1Sharpness applied to output. Higher = sharper
halofloat-1 to 1Halo reduction around edges
preblurfloat-1 to 1Anti-aliasing / deblur applied before the model
prenoisefloat0 to 0.1Adds noise to input to reduce over-smoothing
recover_original_detail_valuefloat0 to 1Blends source detail back into the output
grainfloat0 to 0.1Adds film grain after AI processing
grain_sizefloat0 to 5Size of generated grain
grain_sigmafloat0 to 1Grain softness
grain_typestringsilver_rich, gaussian, greyGrain character / style

Frame interpolation

Set frame_interpolation: true to chain a frame-interpolation filter after the upscale. This is used to increase frame rate or create slow motion.
CodeModelBest for
apo-8ApolloSmooth slow-motion and frame-rate conversion. Handles non-linear motion
apf-2Apollo FastFaster Apollo variant for simpler motion
chr-2ChronosNatural slow motion for real-world motion with minimal artifacts
chf-3Chronos FastFaster Chronos variant

Interpolation settings

Pass any of these inside interpolation_settings. Only valid when frame_interpolation: true.
KeyTypeRangeDescription
slowmoint1–16Slow-motion multiplier. 2 makes output 2x slower and doubles duration
fpsnumber15–240Target output frame rate without changing duration
duplicateboolean-Detect and remove duplicate frames from input before interpolating
duplicateThresholdnumber0.001–0.1Sensitivity for duplicate-frame detection

Resolution

Output resolution is set via resolution. The long edge is mapped to exact pixels; the short edge is computed from the source aspect ratio so the output matches source orientation.
TierLong edge
480p854 px
720p1280 px
1080p1920 px
1440p2560 px
4k3840 px
8k7680 px

Example - Basic upscale

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "resolution": "1080p"
    }
  }'

Example - CGI / animation upscale

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/animation.mp4",
      "preset": "gcg-5",
      "resolution": "4k"
    }
  }'

Example - Face recovery on degraded footage

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/old-interview.mp4",
      "preset": "iris-3",
      "resolution": "1080p"
    }
  }'

Example - Deinterlacing legacy TV footage

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/legacy-tv.mp4",
      "preset": "dtv-4",
      "resolution": "1080p",
      "extra_settings": {
        "video_type": "Interlaced",
        "field_order": "TopFirst"
      }
    }
  }'

Example - 4K upscale with 2x slow motion

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/action.mp4",
      "preset": "prob-4",
      "resolution": "4k",
      "frame_interpolation": true,
      "interpolation_preset": "chr-2",
      "interpolation_settings": {
        "slowmo": 2
      }
    }
  }'

Example - Interpolate to 60 fps without changing duration

curl -X POST https://api.unifically.com/v1/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "topaz-labs/video-upscale",
    "input": {
      "video_url": "https://example.com/clip.mp4",
      "resolution": "1080p",
      "frame_interpolation": true,
      "interpolation_preset": "apo-8",
      "interpolation_settings": {
        "fps": 60,
        "duplicate": true
      }
    }
  }'

Response

{
  "code": 200,
  "success": true,
  "data": {
    "task_id": "abc123def456",
    "status": "pending"
  }
}