wells1137/media-skills · Archived

video-upscaler

Intelligently upscale and enhance videos to cinematic quality using a multi-model backend (Topaz, SeedVR2).

First seen Mar 4, 2026

Installation

$ npx skills add wells1137/media-skills --skill video-upscaler

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Also in this package

Other skills from wells1137/media-skills.

npx skills add wells1137/media-skills

Browse all from wells1137/media-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 25
License MIT
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,780 B
  • docs SUMMARY.md 129 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 27 installs

SKILL.md

Summary

The Video Upscaler skill provides professional-grade video quality enhancement by leveraging a powerful, multi-model backend. It intelligently selects the best AI model (Topaz, SeedVR2, etc.) based on the user-defined profile to achieve optimal results, transforming low-resolution or noisy footage into crisp, cinematic-quality video.

This skill abstracts away the complexity of choosing and configuring different AI upscaling models. Instead of dealing with dozens of technical parameters, the user simply chooses a high-level goal, and the skill handles the rest.

Features

  • Multi-Model Backend: Dynamically routes requests to the best model for the job (Topaz, SeedVR2, etc.) via a unified API.
  • Profile-Based Enhancement: Offers a range of pre-configured profiles for common use cases, from standard 2x upscaling to 4K cinematic conversion and 60 FPS frame boosting.
  • Asynchronous by Design: Handles long-running video processing jobs without blocking the agent.
  • Simple Interface: Requires only a video URL and a profile name to start.

How It Works

The skill operates in a simple, two-step asynchronous workflow:

  1. Submit Job: The agent calls the /upscale endpoint with a video URL and a profile name. The service validates the request, selects the appropriate AI model, and submits the job to the fal.ai backend. It immediately returns a task_id.
  1. Poll for Status: The agent uses the taskid to periodically call the /status/{taskid} endpoint. The status will be queued, in_progress, or completed. Once completed, the response will contain the URL of the final, upscaled video.

Available Profiles

Profile Name Description
standard_x2 2x upscale using Topaz Proteus v4. Best all-around quality for live-action footage.
cinema_4k Upscale to 4K (2160p) using SeedVR2. Best for cinematic content requiring temporal consistency.
frameboost60fps 2x upscale + frame interpolation to 60 FPS using Topaz Apollo v8. Best for sports and action.
aivideoenhance 4x upscale using Topaz. Best for AI-generated videos that need resolution boosting.
web_optimized Upscale to 1080p with web-optimized H264 output. Best for social media and web publishing.

End-to-End Example

User Request: "Enhance this video to 4K cinematic quality: [video_url]"

1. Agent -> Skill (Submit Job)

The agent identifies the user's intent and calls the /upscale endpoint with the cinema_4k profile.

curl -X POST http://<your_backend_url>/upscale \
  -H "Content-Type: application/json" \
  -d 
    "video_url": "[video_url]",
    "profile": "cinema_4k"
  }

Response:

{
  "task_id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "model_used": "fal-ai/seedvr/upscale/video",
  "profile": "cinema_4k"
}

2. Agent -> Skill (Poll for Status)

The agent waits and then polls the status endpoint.

curl http://<your_backend_url>/status/a1b2c3d4-e5f6-7890-1234-567890abcdef

Response (In Progress):

{
  "task_id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "status": "in_progress",
  "logs": ["Processing frame 100/1200..."]
}

Response (Completed):

{
  "task_id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "status": "completed",
  "result": {
    "video_url": "https://.../upscaled_video.mp4"
  }
}

3. Agent -> User

The agent delivers the final, upscaled video URL to the user.