Skip to main content
VESDK/Flutter/Getting Started

Integration into your Flutter application

Quickly integrate VideoEditor SDK for Flutter into your application.

Free Trial#

Our tech is modified to be used for testing purposes without a license key. To start testing just follow this Get Started guide and leave out the step of entering the commercial license keys. The editor will simply render a watermark over the preview and final results. And in case you need any technical assistance, make sure to reach out to us: https://img.ly/support. We’ll be glad to help.

Requirements#

For this version, the requirements are:

  • Flutter: 1.20.0
  • Dart: 2.12.0
  • iOS: 13
  • Android: 5 (SDK 21)

If your app depends on some older versions of these requirements please have a look at previous versions of the SDK.

Flutter CLI#

Install the Flutter plugin in your project as follows:

flutter pub add video_editor_sdk

or add it manually to your pubspec.yaml:

dependencies:
video_editor_sdk: ^3.0.0

Platform specific#

Since the video_editor_sdk plugin depends on our native VideoEditor SDK, you need to make some native changes to your Flutter application.

Android#

  1. Add the IMG.LY repository and plugin by opening the android/build.gradle file (not android/app/build.gradle) and changing the following block:

    buildscript {
    - ext.kotlin_version = '1.3.50'
    + ext.kotlin_version = '1.5.32' // Minimum version.
    repositories {
    ...
    mavenCentral()
    + maven { url "https://artifactory.img.ly/artifactory/imgly" }
    ...
    }
    dependencies {
    ...
    + classpath 'ly.img.android.sdk:plugin:10.4.1'
    ...
    }
    }

    In order to update VideoEditor SDK for Android replace the version string 10.4.1 with a newer release.

  2. Still in the android/build.gradle file (not android/app/build.gradle), add these lines at the bottom:

    allprojects {
    repositories {
    maven { url 'https://artifactory.img.ly/artifactory/imgly' }
    }
    }
  3. In the android/app/build.gradle file (not android/build.gradle) you will need to modify the minSdkVersion to at least 21. We also recommend to update the buildToolsVersion to 31.0.0 or higher as well as the compileSdkVersion to 31 or higher:

    android {
    - compileSdkVersion flutter.compileSdkVersion
    + compileSdkVersion 31
    + buildToolsVersion "31.0.0"
    ...
    defaultConfig {
    ...
    - minSdkVersion flutter.minSdkVersion
    + minSdkVersion 21
    ...
    }
    ...
    }

    Depending on your stable Flutter SDK version (<= 2.5.0), your android/app/build.gradle file might look a bit different. In this case, please modify it in the following way:

    android {
    - compileSdkVersion 30
    + compileSdkVersion 31
    + buildToolsVersion "31.0.0"
    ...
    defaultConfig {
    ...
    - minSdkVersion 16
    + minSdkVersion 21
    ...
    }
    ...
    }
  4. In the same file, configure VideoEditor SDK for Android by adding the following lines under apply plugin: "com.android.application":

    apply plugin: 'ly.img.android.sdk'
    apply plugin: 'kotlin-android'
    // Comment out the modules you don't need, to save size.
    imglyConfig {
    modules {
    include 'ui:text'
    include 'ui:focus'
    include 'ui:frame'
    include 'ui:brush'
    include 'ui:filter'
    include 'ui:sticker'
    include 'ui:overlay'
    include 'ui:transform'
    include 'ui:adjustment'
    include 'ui:text-design'
    include 'ui:video-trim'
    include 'ui:video-library'
    include 'ui:video-composition'
    include 'ui:audio-composition'
    include 'ui:giphy-sticker'
    // This module is big, remove the serializer if you don't need that feature.
    include 'backend:serializer'
    // Remove the asset packs you don't need, these are also big in size.
    include 'assets:font-basic'
    include 'assets:frame-basic'
    include 'assets:filter-basic'
    include 'assets:overlay-basic'
    include 'assets:sticker-shapes'
    include 'assets:sticker-emoticons'
    include 'assets:sticker-animated'
    include 'backend:sticker-animated'
    include 'backend:sticker-smart'
    include 'backend:background-removal'
    }
    }