$ cat node-template.py
V
Video Upscale (Real-ESRGAN TRT)
// Upscale a video with Real-ESRGAN accelerated by TensorRT. Pick a variant (x2, x4, anime 6B, 4x-Ultrasharp). First run per variant builds an engine (~5–10 min); subsequent runs are instant.
Process
Video
template.py
1import os2import sys3import json4import traceback56from gais import Gais78INPUT_DIR = "/data/input"9OUTPUT_DIR = "/data/output"101112def main():13 try:14 input_json = sys.stdin.read()15 execution_input = json.loads(input_json)16 inputs = execution_input.get("inputs", {})1718 video = inputs.get("video", "")19 variant = inputs.get("variant", "realesrgan-x4-plus")20 tile_size = int(inputs.get("tile_size", 1024))2122 if not video:23 raise ValueError("Video input is required")2425 video_path = os.path.join(INPUT_DIR, video)26 if not os.path.exists(video_path):27 raise FileNotFoundError(f"Input video not found: {video_path}")2829 os.makedirs(OUTPUT_DIR, exist_ok=True)3031 print(32 f"Processing: variant={variant}, tile_size={tile_size}",33 file=sys.stderr,34 )3536 result = Gais.video.upscale_realesrgan_trt(37 video=video_path,38 variant=variant,39 tile_size=tile_size,40 )4142 base_name = os.path.splitext(os.path.basename(video))[0]43 out_filename = f"upscaled_{base_name}.mp4"44 out_path = os.path.join(OUTPUT_DIR, out_filename)45 with open(out_path, "wb") as f:46 f.write(result.content)4748 inference_ms = result.metadata.get("inference_time_ms", "unknown")49 out_resolution = result.metadata.get("resolution", "unknown")50 frame_count = result.metadata.get("frame_count", "unknown")51 print(52 f"Done: variant={variant}, resolution={out_resolution}, "53 f"frames={frame_count}, inference_time={inference_ms}ms",54 file=sys.stderr,55 )5657 output = {58 "video": out_filename,59 }60 print(json.dumps(output, indent=2))6162 except Exception as e:63 error_output = {64 "error": str(e),65 "errorType": type(e).__name__,66 "traceback": traceback.format_exc(),67 }68 print(json.dumps(error_output), file=sys.stderr)69 sys.exit(1)707172if __name__ == "__main__":73 main()$ git log --oneline
v1.0.0
HEAD
2026-04-22