LaunchVideo is een tool die productvideo's genereert door AI te combineren met serverless rendering. Het proces werkt als volgt:
- AI-generatie: Op basis van een URL of prompt schrijft het model
anthropic/claude-opus-5.5 de code voor de video. Het verbruikt ongeveer 100k tokens per video.
- Infrastructuur: De rendering wordt uitgevoerd door een serverless agent op OpenComputer binnen een microVM (Amazon Linux 2023) met Node 22.
- Technische workflow: Het systeem maakt gebruik van drie tools (
webfetch, checkscene en render_video). In plaats van een videomodel te gebruiken, wordt headless Chromium (via Playwright) ingezet om frames te renderen, die vervolgens via ffmpeg worden omgezet naar een MP4-bestand.
- Opslag en Controle: De uiteindelijke video wordt opgeslagen als een publieke Vercel Blob-URL. De voortgang wordt gevolgd via een eventstream API.
De volledige implementatie is open source beschikbaar in de repository diggerhq/shipvideo.
LaunchVideo
Voorbeelden
De volgende video's zijn gemaakt met deze pagina, zonder bewerkingen. Elke video is het resultaat van één enkele run: een URL of prompt als invoer, en een MP4-bestand als uitvoer.
- NVIDIA (nvidia.com)
- Jev, by TypeSafe AI (typesafe.ai)
- OpenComputer (opencomputer.dev)
- Linear (linear.app)
- Infera (gebaseerd op de prompt: “make a modern slick and punchy video for a modern startup that works on inference”)
Hoe het werkt
Het systeem maakt gebruik van een serverless agent op OpenComputer. Het volledige product bestaat uit één agent-bestand, drie tools en een invoerformulier. OpenComputer beheert de agent, de microVM waarin wordt gerenderd, de modelgateway en de session API waarop de pagina pollend wacht.
Technische componenten
Agent Eén OpenComputer serverless agent, gedefinieerd in TypeScript en geïmplementeerd met opencomputer deploy. Er wordt geen gebruik gemaakt van externe frameworks, queues of eigen servers.
Model Er wordt gebruikgemaakt van anthropic/claude-opus-5.5 via de modelgateway van OpenComputer. Per film worden ongeveer 90k input- en 15k output-tokens verbruikt, waarvan het grootste deel bestaat uit de HTML-code zelf.
Runtime Elke taak is een sessie in een verse microVM: Amazon Linux 2023 op arm64, 4 vCPU, 8 GB RAM, Node 22. De eerste tool-aanroep installeert Playwright's headless Chromium en een statische ffmpeg (dit duurt ongeveer een minuut); de VM wordt daarna verwijderd.
Tools Er zijn drie defineTool-functies:
web_fetch: retourneert de paginatekst, titel, koppen, de meest gebruikte hex-kleuren en Google Fonts.
check_scene: laadt de film en rapporteert JS-fouten en de zichtbare tekst op specifieke tijdstempels.
render_video: rendert en uploadt de video.
Rendering Er wordt geen videomodel gebruikt. De klokken van de pagina (requestAnimationFrame, timers, Date, CSS en Web Animations) worden vervangen door een virtuele klok, waardoor elk frame een deterministische seek is. De resolutie is 1920x1080 bij 30 fps, waarbij JPEG-frames worden doorgevoerd naar libx264 met een crf van 18.
Storage De agent bewaart geen geheimen. Het formulier genereert een Vercel Blob-uploadtoken dat drie uur geldig is voor één specifiek pad. Dit token wordt in een per-job manifest geplaatst, waarna de tool het ophaalt via het job-id. Het uiteindelijke MP4-bestand is een publieke Blob-URL.
Control plane De pagina gebruikt dezelfde API als de CLI: een sessie aanmaken, één turn verzenden, en de eventstream pollen (tool.started, tool.completed, turn.completed) om de voortgang te tonen. De video is voltooid zodra het MP4-bestand in de Blob verschijnt.
Code-implementatie
Hieronder volgt de implementatie van de agent:
// opencomputer/agents/director/agent.ts
import { useInput, useModel, useTool } from "@opencomputer/agent";
import { checkScene, renderVideo } from "./tools/scene.js";
import { webFetch } from "./tools/web.js";
export default function Agent() {
const input = useInput(); // het JOB-blok van het formulier
useModel("anthropic/claude-opus-5.5");
useTool(webFetch); // leest de website van het product
useTool(checkScene); // laadt de HTML, rapporteert fouten + zichtbare tekst
useTool(renderVideo); // headless Chromium → ffmpeg → Blob
return `You are a motion designer who writes code. ...`;
}
Aan de slag
De agent implementeren
Met één klik kan de agent, inclusief tools en prompt, in je project worden geplaatst via een gratis account.
De repository clonen
De agent, de renderer en de webapp zijn beschikbaar in de repo: diggerhq/shipvideo.
Je eigen agent bouwen
Je kunt binnen tien minuten een eigen agent bouwen via de quickstart: een TypeScript-bestand, een deploy en een sessie.
$ npx opencomputer template deploy https://github.com/diggerhq/shipvideo
Alle bovengenoemde onderdelen staan in de repository en kunnen met één klik naar je eigen account worden gedeployed. Het concept is gebaseerd op een post van Deedy over Opus 5.5 en een instructievideo: het model schrijft de film als code, en code rendert elke keer op exact dezelfde manier.
LaunchVideo
Voorbeelden
De volgende video's zijn gemaakt met deze pagina, zonder bewerkingen. Elke video is het resultaat van één enkele run: een URL of prompt als invoer, en een MP4-bestand als uitvoer.
- NVIDIA (nvidia.com)
- Jev, by TypeSafe AI (typesafe.ai)
- OpenComputer (opencomputer.dev)
- Linear (linear.app)
- Infera (gebaseerd op de prompt: “make a modern slick and punchy video for a modern startup that works on inference”)
Hoe het werkt
Het systeem maakt gebruik van een serverless agent op OpenComputer. Het volledige product bestaat uit één agent-bestand, drie tools en een invoerformulier. OpenComputer beheert de agent, de microVM waarin wordt gerenderd, de modelgateway en de session API waarop de pagina pollend wacht.
Technische componenten
Agent Eén OpenComputer serverless agent, gedefinieerd in TypeScript en geïmplementeerd met opencomputer deploy. Er wordt geen gebruik gemaakt van externe frameworks, queues of eigen servers.
Model Er wordt gebruikgemaakt van anthropic/claude-opus-5.5 via de modelgateway van OpenComputer. Per film worden ongeveer 90k input- en 15k output-tokens verbruikt, waarvan het grootste deel bestaat uit de HTML-code zelf.
Runtime Elke taak is een sessie in een verse microVM: Amazon Linux 2023 op arm64, 4 vCPU, 8 GB RAM, Node 22. De eerste tool-aanroep installeert Playwright's headless Chromium en een statische ffmpeg (dit duurt ongeveer een minuut); de VM wordt daarna verwijderd.
Tools Er zijn drie defineTool-functies:
web_fetch: retourneert de paginatekst, titel, koppen, de meest gebruikte hex-kleuren en Google Fonts.
check_scene: laadt de film en rapporteert JS-fouten en de zichtbare tekst op specifieke tijdstempels.
render_video: rendert en uploadt de video.
Rendering Er wordt geen videomodel gebruikt. De klokken van de pagina (requestAnimationFrame, timers, Date, CSS en Web Animations) worden vervangen door een virtuele klok, waardoor elk frame een deterministische seek is. De resolutie is 1920x1080 bij 30 fps, waarbij JPEG-frames worden doorgevoerd naar libx264 met een crf van 18.
Storage De agent bewaart geen geheimen. Het formulier genereert een Vercel Blob-uploadtoken dat drie uur geldig is voor één specifiek pad. Dit token wordt in een per-job manifest geplaatst, waarna de tool het ophaalt via het job-id. Het uiteindelijke MP4-bestand is een publieke Blob-URL.
Control plane De pagina gebruikt dezelfde API als de CLI: een sessie aanmaken, één turn verzenden, en de eventstream pollen (tool.started, tool.completed, turn.completed) om de voortgang te tonen. De video is voltooid zodra het MP4-bestand in de Blob verschijnt.
Code-implementatie
Hieronder volgt de implementatie van de agent:
// opencomputer/agents/director/agent.ts
import { useInput, useModel, useTool } from "@opencomputer/agent";
import { checkScene, renderVideo } from "./tools/scene.js";
import { webFetch } from "./tools/web.js";
export default function Agent() {
const input = useInput(); // het JOB-blok van het formulier
useModel("anthropic/claude-opus-5.5");
useTool(webFetch); // leest de website van het product
useTool(checkScene); // laadt de HTML, rapporteert fouten + zichtbare tekst
useTool(renderVideo); // headless Chromium → ffmpeg → Blob
return `You are a motion designer who writes code. ...`;
}
Aan de slag
De agent implementeren
Met één klik kan de agent, inclusief tools en prompt, in je project worden geplaatst via een gratis account.
De repository clonen
De agent, de renderer en de webapp zijn beschikbaar in de repo: diggerhq/shipvideo.
Je eigen agent bouwen
Je kunt binnen tien minuten een eigen agent bouwen via de quickstart: een TypeScript-bestand, een deploy en een sessie.
$ npx opencomputer template deploy https://github.com/diggerhq/shipvideo
Alle bovengenoemde onderdelen staan in de repository en kunnen met één klik naar je eigen account worden gedeployed. Het concept is gebaseerd op een post van Deedy over Opus 5.5 en een instructievideo: het model schrijft de film als code, en code rendert elke keer op exact dezelfde manier.