Node.js Video Editor

The Node.js video editor SDK includes all the tools you need to edit video in your Node.js apps. It uses the Creatomate video editing API, which is a fully managed service for creating video in the cloud. When combined with the Preview SDK, developers can build complete video creation applications for both the frontend and the backend.

  • Edit and create video using Node.js
  • SDKs for both the browser and Node.js
  • Build a video editor in JavaScript

How to Create a Video Editor in Node.js

The Node.js SDK provides two methods for editing video: with a video template or using video editing instructions through code. With the template-based approach, you can design a reusable template using the video editor, and then reference that template in your Node.js application to generate video. Alternatively, you can use pure JavaScript to edit video if you need even greater flexibility. Let's take a brief look at how this works.

1Use or integrate the template editor

The following example demonstrates how to edit video on the backend using Node.js and the video editor, however, you can also integrate the editor into your application's frontend to allow users to edit videos themselves – all in the browser.

The online editor makes it possible to design reusable video editing templates. It offers hundreds of video editing features that can all be accessed through Node.js. These include cutting, trimming, stitching, transitions, filters, (text) animations, masking, blending, blurring, color overlays, and many more.

npm install creatomate
const Creatomate = require('creatomate');
const client = new Creatomate.Client('Your API key');

await client.render({
  templateId: 'Your Video Template ID',

  modifications: {
    'My-Text': 'This text is placed in your video',
    'Bg-Video': 'https://example.com/video.mp4'
  },
});

2Use the Node.js video editor SDK

First, install the Creatomate Node.js package from NPM or GitHub. Once installed, creating a video is as simple as specifying the template ID and providing any values that you wish to include in the video. As soon as the "render" function completes, an MP4 file is returned.

As an alternative, you can replace the "template_id" parameter with "source" and provide any video editing instructions in JSON format. This allows you to generate an entire video from scratch within your Node.js application, for example, if you want to edit video that doesn't follow a specific template.

The process is that simple. For more examples, check out the Node.js examples in this GitHub repository.

3Build video editing applications

As you can see from the example above, no matter if you're editing video by template or entirely by code, this offers a very flexible way to edit without having to manage your own server infrastructure. Our video editing API uses an auto-scaling cloud infrastructure, ensuring enough capacity even if thousands of videos are being processed at once.

Creatomate's video SDKs give you everything you need to build video editing apps, from the Node.js video editing library to the Preview SDK for rendering video in the browser.

Frequently asked questions

How can I edit video using Node.js?

As video editing is a CPU-intensive process that requires a powerful infrastructure, it is recommended to use a cloud-based video API for rendering. One such API is Creatomate, which can be used in your Node.js applications simply by installing the video editing SDK from NPM. The SDK can perform any video rendering tasks, such as stitching, trimming, resizing, and rendering from a video template.

How capable is the white-label video editor?

The video editor provides all the video editing features required for almost any video render scenario. Both the frontend and backend SDKs use the same rendering engine and have a simple JavaScript API for interacting with the video. Whether it is a browser-based application or a Node.js application, it provides seamless integration with any JavaScript app.

What's the best video API for Node.js?

We believe that the Creatomate API is the most comprehensive and cost-effective on the market for Node.js applications. We're especially proud of our video rendering tools for JavaScript-based projects, which let you make almost any video application for the web. Get a feel for what the API can do by checking out the web-based video editor and reading this article to see how it compares.

How can I build a video editor in Node.js?

A video editor can be built in Node.js using a software library that provides video rendering. Creatomate has both JavaScript libraries for Node.js and the browser that you can import into your Node.js or frontend web app to implement video editing. It provides white-label software that can be used to implement most video editor apps.

Can't I just use FFmpeg with Node.js?

FFmpeg offers some video editing capabilities for running on a local device, but it's challenging to run it in the cloud. For example, you need to ensure that your infrastructure is capable of handling concurrent video processing. Furthermore, it doesn't offer much video editing features. In fact, it was for these very reasons that we created the Creatomate API.

How much does a video editing API cost?

Compared to building your own video editing infrastructure, Creatomate's video editing API is considerably less costly. Its pricing begins at a level comparable to that of a single AWS EC2 server. However, an EC2 server can only handle one video at a time and needs maintenance, not to mention you have to develop your own rendering software.

Quickly get started

Learn how to automate your videos by following our practical tutorials.

Start automating today

Start with a full-featured trial with 50 credits, no credit card required.
Get started for free