Seamlessly integrate video creation into your mobile applications

VideoEditor SDK expands the powerful tools
and features of the PhotoEditor SDK into the realm of mobile video creation.

Supporting the great frameworks

Simplified implementation through your favorite frameworks.

import VideoEditorSDK

let videoURL = Bundle.main.url(forResource: "Example", withExtension: "mp4")!
let video = Video(url: videoURL)

let videoEditViewController = VideoEditViewController(videoAsset: video)
videoEditViewController.delegate = self

present(videoEditViewController, animated: true, completion: nil)

class MyActivity : Activity() {
  ...
  val VESDK_RESULT = 1
  fun openEditor(inputVideo: Uri) {
    VideoEditorBuilder(this)
      .setSettingsList(VideoEditorSettingsList()
      .configure<LoadSettings> { it.source = inputVideo }
      .configure<UiConfigText> { it.setFontList(FontPackBasic.getFontPack()) }
      .configure<UiConfigFrame> { it.setFrameList(FramePackBasic.getFramePack()) }
      .configure<UiConfigFilter> { it.setFilterList(FilterPackBasic.getFilterPack()) }
      .configure<UiConfigOverlay> { it.setOverlayList(OverlayPackBasic.getOverlayPack()) }
      .configure<UiConfigSticker> { it.setStickerLists(StickerPackEmoticons.getStickerCategory()) }
    )
    .startActivityForResult(this, VESDK_RESULT)
  }
...
}


import React, { Component } from "react";
import { VideoEditorModal } from "react-native-videoeditorsdk";
export default class App extends Component {
  render() {
    return (
      <VideoEditorModal
        visible={true}
        video={require('./example.mp4')}
        onExport={(result) => {
          console.log(result);
        }}
      />
    );
  }
}


var app = {
  initialize: function () {
    document.addEventListener(
      "deviceready",
      this.onDeviceReady.bind(this),
      false
    );
  },
  onDeviceReady: function () {
    VESDK.openEditor(
      (result) => {
        console.log(result); // success callback
      },
      (error) => {
        console.log(error); // failure callback
      },
      VESDK.loadResource("www/img/example.mp4")
    );
  },
};
app.initialize();


import {Component} from '@angular/core';
import {Platform} from '@ionic/angular';
declare var VESDK;
@Component({
  selector: 'app-home',
  templateUrl: 'home.page.html',
  styleUrls: ['home.page.scss'],
})
export class HomePage {
  constructor(platform: Platform) {
    platform.ready().then(() => {
      VESDK.openEditor(
          (result) => {
            console.log(result);  // success callback
          },
          (error) => {
            console.log(error);  // failure callback
          },
          VESDK.loadResource('www/assets/example.mp4'));
    });
  }
}

Cut to the chase

Cutting down clips to the parts which really matter. Shortening clips made easy with our Trim feature.

Smart Features

Attention-grabbing and precise visual communication is key to engaging your target audience. Making good design more accessible with our Text Design tool as well as Animated and Smart Stickers.

Make it seamless –
Customize our editor to fit your app’s design

Your users expect both.

Supercharge your app by adding photo and video editing capabilities and leave non of your users’ feature requests unanswered.

Packed with tons of features

View Documentation
Define Filter Presets
Define Filter Presets
Placing Stickers and Texts made easy with the Snapping Tool
Placing Stickers and Texts made easy with the Snapping Tool
Define Video Encoding Settings
Define Video Encoding Settings
Fast Video Export
Fast Video Export
Adjusting the editors language through Localization
Adjusting the editors language through Localization
Live Filter Preview
Live Filter Preview
Accessibility
Accessibility
Animated Sticker
Animated Sticker
Client-sided Rendering
Client-sided Rendering

Implement the editor and join the ranks of

Ready to get started?

Start your free trial or get in touch.
Start TrialGet License