Long-form by nature
Videos run for tens of minutes per scene, with several scenes per movie — a rendering workload where small inefficiencies multiply.
Lillowe Beats produces long-form meditation videos — ambient imagery, layered music, hour-scale runtimes. The render step ran on a paid third-party API. We built a self-hosted FFmpeg renderer behind the same API shape, so the existing automation kept working untouched.
Meditation content is consumed in long sessions, so every upload is a long video with visually calm scenes and music that loops without seams. Producing them at volume means automating the render — which is exactly where the cost and control problems live.
Videos run for tens of minutes per scene, with several scenes per movie — a rendering workload where small inefficiencies multiply.
A loop that clicks or an abrupt ending breaks the experience the entire product depends on. Fades and loops have to be exact.
The n8n workflow that assembles movies already worked. Whatever replaced the render step had to speak the same language.
Hosted render APIs are the fastest way to start and the slowest way to scale. Once the workflow is stable, the render step becomes a recurring bill for a process the business could run on its own server.
This describes the trade-off the project was scoped to remove.
The key design decision: compatibility. The new renderer accepts the same movie JSON, uses the same endpoints and returns the same response shape as the service it replaces.
Create, check status, list and delete render jobs — plus a health check and a cleanup endpoint for old jobs. The existing n8n workflow points at the new base URL and keeps its exact request body.
The engine builds each movie from scene objects: images or video clips, durations (including 30-minute scenes), scaling and fit rules, overlays and audio.
Music looping and fade-in / fade-out are first-class render options, engineered so long ambient tracks join without audible seams at the lengths meditation content demands.
Alongside static images, the renderer accepts cinematic video clips as scene sources — so the pipeline can mix slow-motion footage with still artwork.
Standard output presets — full HD, square, and 1080×1920 story formats — with custom width and height when needed, matching how the pipeline targets each platform.
Renders run as background jobs with status polling, so a long video does not hold a workflow open — and completed jobs can be cleaned up automatically to protect disk space on the server.
The API documentation and deployment files describe the renderer that was built and shipped to the client's VPS.
These facts come from the delivered API documentation and renderer source. No cost-saving or output-volume claims are made — the client's hosting economics are the client's own.
The workflow posts a movie object to the renderer's create endpoint.
FFmpeg assembles scenes, loops the audio and applies fades in the background.
The workflow checks status until the movie is complete.
The finished video is picked up for publishing; old jobs are cleaned up.
Self-hosting shifts cost from per-render fees to a server the client already operates. We have not published a savings figure because the client's usage volume and hosting economics are theirs to state.
The API accepts the same shape as the service it replaced. Where a hosted provider may offer effects beyond the built set, the documentation is explicit about what is supported rather than silently dropping options.
Running your own renderer means owning uptime and disk cleanup. The deployment includes a health endpoint and a cleanup job to make that manageable — but it is real operational responsibility, and we say so.
Tell us what your pipeline makes and what it costs to run. On a free strategy call we will map where self-hosting makes sense — and where it does not.
The fastest way in: answer six short questions and we will map your production pipeline, find the biggest leak and show the fastest win — before we ever get on a call.
Free strategy call · No commitment · We reply by email
Book a free AI strategy call and we will walk your production flow against this build.