Tutorial · Python · ~10 min

Convert 30fps to 60fps

30fps gameplay and screencaps look choppy next to native 60fps content. Interpolation is the fix.

Python30fps→60fpsAPI

Why this matters

30fps captures feel dated; doubling the frame rate with motion-aware interpolation makes pans and camera movement read smooth, not smeared.

For screen recordings (UI, scrolling) interpolation must respect sharp text — the model handles it better than it handles organic video.

How it works

Submit with factor=2; the API generates one in-between frame for every source frame, tuned for crisp synthetic content.

Submit a job with an input URL (S3, GCS or HTTPS), poll the job URL, and download the rendered output. No GPU, no queues, no ffmpeg builds to babysit.

Code

Python
import requests, time

API = "https://api.mlslabs.io/v1/frame-interpolation/jobs"
headers = {"X-API-Key": "YOUR_API_KEY"}
payload = {"input": "s3://bucket/gameplay.mp4", "factor": 2}

resp = requests.post(API, json=payload, headers=headers)
job = resp.json()
while job["status"] not in ("succeeded", "failed"):
    time.sleep(3)
    job = requests.get(job["url"], headers=headers).json()

print("Output:", job["output_url"])

Pro tips

  • The screen-content preset keeps UI text sharp during scrolls.
  • Don't upscale first — interpolate at native res, then upscale if needed.
  • For game footage, compare fast camera turns: the artifact-free result is the win.

Pricing note

Usage is metered per minute of media processed; the first tier is free each month. Volume discounts kick in automatically.

FAQ

Common questions

Is 60fps from 30fps always smooth?

Camera motion becomes smooth; fast-moving on-screen objects (HUD elements) can still strobe — that is physics, not the model.

Can I go to 120fps?

Yes — factor=4 from 30fps works; doubling in stages gives the most stable result.

Does it work for VR recordings?

VR captures have distortion; use the VR preset when available.