JSON → Video

Create Videos at Scale

Turn structured data into production-ready videos in minutes using a simple API.

{
  "name": "pizza-margherita",
  "resolution": "instagram-reel",
  "duration": 25.04,
  "frameRate": 30,
  "backgroundColor": "#000000",
  "visuals": [
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-01-hook.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 0,
      "exitEnd": 3.76,
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-02-ingredients.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 3.16,
      "enterEnd": 3.41,
      "exitEnd": 6.48,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-03-dough.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 5.88,
      "enterEnd": 6.13,
      "exitEnd": 8.96,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-04-sauce.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 8.36,
      "enterEnd": 8.61,
      "exitEnd": 12.4,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-05-mozzarella.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 11.8,
      "enterEnd": 12.05,
      "exitEnd": 15.28,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-06-bake.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 14.68,
      "enterEnd": 14.93,
      "exitBegin": 18.21,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-07-final-touch.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 17.96,
      "enterEnd": 18.21,
      "exitBegin": 21.41,
      "enterAnimation": "slideleft",
      "zoom": true
    },
    {
      "type": "IMAGE",
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/scene-08-final-shot.png",
      "width": 1080,
      "height": 1920,
      "position": "center-center",
      "resize": "cover",
      "enterBegin": 21.16,
      "enterEnd": 21.41,
      "exitEnd": 25.04,
      "enterAnimation": "slideleft",
      "zoom": true
    }
  ],
  "audios": [
    {
      "src": "https://cdn.zvid.io/assets/header/pizza-margherita/voice-over.mp3",
      "volume": 1
    }
  ],
  "subtitle": {
    "styles": {
      "color": "#ffffff",
      "isBold": true,
      "fontSize": 98,
      "fontFamily": "Montserrat",
      "marginV": 180,
      "marginH": 100,
      "outline": {
        "width": 4,
        "color": "#000000"
      },
      "mode": "karaoke",
      "activeWord": {
        "color": "#FFD700"
      },
      "textTransform": "uppercase"
    },
    "captions": [
      {
        "start": 0.24,
        "end": 2.96,
        "text": "Want to make authentic",
        "words": [
          {
            "start": 0.24,
            "end": 0.36,
            "text": "Want"
          },
          {
            "start": 0.36,
            "end": 0.52,
            "text": "to"
          },
          {
            "start": 0.52,
            "end": 0.72,
            "text": "make"
          },
          {
            "start": 0.72,
            "end": 1.28,
            "text": "authentic"
          }
        ]
      },
      {
        "start": 1.28,
        "end": 3.44,
        "text": "Italian pizza margherita at home,",
        "words": [
          {
            "start": 1.28,
            "end": 1.84,
            "text": "Italian"
          },
          {
            "start": 1.84,
            "end": 2.28,
            "text": "pizza"
          },
          {
            "start": 2.28,
            "end": 2.96,
            "text": "margherita"
          },
          {
            "start": 2.96,
            "end": 3.44,
            "text": "at home,"
          }
        ]
      },
      {
        "start": 3.76,
        "end": 6.16,
        "text": "You only need six",
        "words": [
          {
            "start": 3.76,
            "end": 4.12,
            "text": "You"
          },
          {
            "start": 4.12,
            "end": 4.44,
            "text": "only"
          },
          {
            "start": 4.44,
            "end": 4.8,
            "text": "need"
          },
          {
            "start": 4.8,
            "end": 5.16,
            "text": "six"
          }
        ]
      },
      {
        "start": 5.16,
        "end": 6.16,
        "text": "simple ingredients.",
        "words": [
          {
            "start": 5.16,
            "end": 5.6,
            "text": "simple"
          },
          {
            "start": 5.6,
            "end": 6.16,
            "text": "ingredients."
          }
        ]
      },
      {
        "start": 6.48,
        "end": 7.72,
        "text": "Stretch your dough gently.",
        "words": [
          {
            "start": 6.48,
            "end": 6.92,
            "text": "Stretch"
          },
          {
            "start": 6.92,
            "end": 7.08,
            "text": "your"
          },
          {
            "start": 7.08,
            "end": 7.36,
            "text": "dough"
          },
          {
            "start": 7.36,
            "end": 7.72,
            "text": "gently."
          }
        ]
      },
      {
        "start": 7.72,
        "end": 8.8,
        "text": "Using your hands,",
        "words": [
          {
            "start": 7.72,
            "end": 8,
            "text": "Using"
          },
          {
            "start": 8,
            "end": 8.32,
            "text": "your"
          },
          {
            "start": 8.32,
            "end": 8.8,
            "text": "hands,"
          }
        ]
      },
      {
        "start": 8.96,
        "end": 11.04,
        "text": "Spread a thin layer",
        "words": [
          {
            "start": 8.96,
            "end": 9.4,
            "text": "Spread"
          },
          {
            "start": 9.4,
            "end": 9.52,
            "text": "a"
          },
          {
            "start": 9.52,
            "end": 9.72,
            "text": "thin"
          },
          {
            "start": 9.72,
            "end": 10.04,
            "text": "layer"
          }
        ]
      },
      {
        "start": 10.04,
        "end": 11.04,
        "text": "of tomato sauce.",
        "words": [
          {
            "start": 10.04,
            "end": 10.2,
            "text": "of"
          },
          {
            "start": 10.2,
            "end": 10.68,
            "text": "tomato"
          },
          {
            "start": 10.68,
            "end": 11.04,
            "text": "sauce."
          }
        ]
      },
      {
        "start": 11.2,
        "end": 12.08,
        "text": "Less is more.",
        "words": [
          {
            "start": 11.2,
            "end": 11.56,
            "text": "Less"
          },
          {
            "start": 11.56,
            "end": 11.8,
            "text": "is"
          },
          {
            "start": 11.8,
            "end": 12.08,
            "text": "more."
          }
        ]
      },
      {
        "start": 12.4,
        "end": 15.04,
        "text": "Tear fresh mozzarella and",
        "words": [
          {
            "start": 12.4,
            "end": 12.8,
            "text": "Tear"
          },
          {
            "start": 12.8,
            "end": 13.12,
            "text": "fresh"
          },
          {
            "start": 13.12,
            "end": 13.88,
            "text": "mozzarella"
          },
          {
            "start": 13.88,
            "end": 14.08,
            "text": "and"
          }
        ]
      },
      {
        "start": 14.08,
        "end": 15.04,
        "text": "place it evenly.",
        "words": [
          {
            "start": 14.08,
            "end": 14.28,
            "text": "place"
          },
          {
            "start": 14.28,
            "end": 14.44,
            "text": "it"
          },
          {
            "start": 14.44,
            "end": 15.04,
            "text": "evenly."
          }
        ]
      },
      {
        "start": 15.28,
        "end": 16.88,
        "text": "Bake at the highest",
        "words": [
          {
            "start": 15.28,
            "end": 15.68,
            "text": "Bake"
          },
          {
            "start": 15.68,
            "end": 15.959,
            "text": "at"
          },
          {
            "start": 15.959,
            "end": 16.16,
            "text": "the"
          },
          {
            "start": 16.16,
            "end": 16.48,
            "text": "highest"
          }
        ]
      },
      {
        "start": 16.48,
        "end": 18.4,
        "text": "temperature for 7-10 minutes.",
        "words": [
          {
            "start": 16.48,
            "end": 16.88,
            "text": "temperature"
          },
          {
            "start": 16.88,
            "end": 17.2,
            "text": "for"
          },
          {
            "start": 17.2,
            "end": 17.92,
            "text": "7-10"
          },
          {
            "start": 17.92,
            "end": 18.4,
            "text": "minutes."
          }
        ]
      },
      {
        "start": 18.56,
        "end": 20.36,
        "text": "Finish with fresh basil",
        "words": [
          {
            "start": 18.56,
            "end": 19,
            "text": "Finish"
          },
          {
            "start": 19,
            "end": 19.2,
            "text": "with"
          },
          {
            "start": 19.2,
            "end": 19.56,
            "text": "fresh"
          },
          {
            "start": 19.56,
            "end": 20.04,
            "text": "basil"
          }
        ]
      },
      {
        "start": 20.04,
        "end": 21.44,
        "text": "and a drizzle of olive oil.",
        "words": [
          {
            "start": 20.04,
            "end": 20.2,
            "text": "and"
          },
          {
            "start": 20.2,
            "end": 20.36,
            "text": "a"
          },
          {
            "start": 20.36,
            "end": 20.76,
            "text": "drizzle"
          },
          {
            "start": 20.76,
            "end": 20.88,
            "text": "of"
          },
          {
            "start": 20.88,
            "end": 21.16,
            "text": "olive"
          },
          {
            "start": 21.16,
            "end": 21.44,
            "text": "oil."
          }
        ]
      },
      {
        "start": 21.76,
        "end": 22.56,
        "text": "And that's it.",
        "words": [
          {
            "start": 21.76,
            "end": 22.04,
            "text": "And"
          },
          {
            "start": 22.04,
            "end": 22.28,
            "text": "that's"
          },
          {
            "start": 22.28,
            "end": 22.56,
            "text": "it."
          }
        ]
      },
      {
        "start": 22.72,
        "end": 25.04,
        "text": "Simple, fresh, delicious.",
        "words": [
          {
            "start": 22.72,
            "end": 23.36,
            "text": "Simple,"
          },
          {
            "start": 23.52,
            "end": 24,
            "text": "fresh,"
          },
          {
            "start": 24.32,
            "end": 25.04,
            "text": "delicious."
          }
        ]
      }
    ]
  }
}

WHY US?

Why Teams Choose Zvid

Lightning Speed

Lightning Speed

Get a 1-minute video in ~15 seconds—typically 2×–4× faster than competitor averages.

Open Source & Trusted

Open Source & Trusted

Open-source and transparent. No black boxes—full visibility, control, and confidence in how your videos are generated.

Radically Affordable

Radically Affordable

Zvid is 2.5×–11× cheaper than competitors, with pricing as low as $0.0006 per credit/second.

Infinite Scalability

Infinite Scalability

Traditional editors aren’t built to produce thousands of videos. Zvid lets you generate videos programmatically using JSON, perfect for high-volume workflows.

Powered by FFmpeg

Powered by FFmpeg

The industry's most capable rendering engine -FFmpeg outperforms headless-browser-based renderers with superior visual effects, frame accuracy, and battle-tested reliability at scale.

DEVELOPER EXPERIENCE

Built for Developers, Powered by Code


  curl -L 'https://api.zvid.io/api/render/api-key'
  -H 'Content-Type: application/json'
  -H 'Accept: application/json'
  -H 'x-api-key: <x-api-key>'
  -d '{
  "payload": {
    "backgroundColor": "#DAB1DA",
    "visuals": [
      {
        "type": "text",
        "text": "Welcome, Zvid.io!",
        "position": "center-center",
        "style": {
          "color": "#ffffff"
        }
      }
    ]            
  }
  

API-First Video Rendering Platform

Integrate video rendering directly into your application with our developer-friendly API. Create and manage API keys, monitor credit usage, track rendering jobs, and access detailed statistics—all through simple REST endpoints. Built with developers in mind for seamless integration.

Editor

Smart JSON Error Checking

Edit JSON with instant validation and clear error highlights, so you can fix issues fast.

Dashboard

Get Started in Minutes

3 Steps to Your First Video

Create an account, configure your video project with a simple JSON object, and submit your render request. That's it! Your video will be processed and ready to download in minutes with real-time progress.

Code integration example

AUTOMATE

Built for teams that ship at scale

Social Media Marketers

Social Media Marketers

Launch campaigns across Instagram, TikTok, YouTube Shorts, and beyond — simultaneously. Use platform-optimized presets to auto-publish perfectly formatted videos at scale, without touching a timeline.

AI Video Companies

AI Video Companies

Power your AI video product with a battle-tested rendering engine. Integrate via API to handle thousands of concurrent renders, letting you focus on your model — not your infrastructure.

E-commerce Brands

E-commerce Brands

Turn your product catalog into a video engine. Auto-generate ads, promos, and product reels at scale — dynamically injecting SKUs, prices, and visuals straight from your data feed.

Educational Platforms

Educational Platforms

Ship entire course libraries without manual editing. Automatically sync captions, animations, and visual cues to narration — so you can go from script to published lesson in minutes, not days.

Marketing Agencies

Marketing Agencies

Run video production for dozens of clients from a single pipeline. Build white-label video tools, automate campaign delivery, and eliminate render bottlenecks — all through one API.