video_editor_sdk 2.4.0
video_editor_sdk: ^2.4.0 copied to clipboard
The official Flutter plugin for VideoEditor SDK. Integrate the video editor into your own iOS or Android app - in minutes!
Flutter plugin for VideoEditor SDK #
Getting started #
Add the plugin package to the pubspec.yaml file in your project:
dependencies:
video_editor_sdk: ^2.4.0
Install the new dependency:
flutter pub get
Known Issues #
With version 2.4.0, we recommend using compileSdkVersion not lower than 31.0.0 for Android. However, this might interfere with your application's Android Gradle Plugin version if this is set to 4.x.
If you don't use a newer Android Gradle Plugin version you'll most likely encounter a build error similar to:
FAILURE: Build failed with an exception.
* Where:
Build file 'flutter_test_application/android/build.gradle' line: 30
* What went wrong:
A problem occurred evaluating root project 'android'.
> A problem occurred configuring project ':app'.
> Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
As a workaround you can either:
-
Upgrade your Android Gradle Plugin version:
Inside
android/build.gradleupdate the version to at least7.0.0:buildscript { ... dependencies { - classpath 'com.android.tools.build:gradle:4.1.1' + classpath 'com.android.tools.build:gradle:7.0.0' ... } }After this, you need to update the Gradle version as well in
android/gradle/gradle-wrapper.properties:- distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip + distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip -
Or create the following symlinks:
- Inside
/Users/YOUR-USERNAME/Library/Android/sdk/build-tools/31.0.0/: Create adxsymlink for thed8file withln -s d8 dx. - From there, go to
./lib/and create adx.jarsymlink for thed8.jarfile withln -s d8.jar dx.jar.
Android #
-
Add the img.ly repository and plugin by opening the
android/build.gradlefile (notandroid/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.0.1' ... } }In order to update VideoEditor SDK for Android replace the version string
10.0.1with a newer release. -
Still in the
android/build.gradlefile (notandroid/app/build.gradle), add these lines at the bottom:allprojects { repositories { maven { url 'https://artifactory.img.ly/artifactory/imgly' } } } -
In the
android/app/build.gradlefile (notandroid/build.gradle) you will need to modify theminSdkVersionto at least21. We also recommend to update thebuildToolsVersionto31.0.0or higher as well as thecompileSdkVersionto31or 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), yourandroid/app/build.gradlefile 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 ... } ... } -
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' // 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' } }
Usage #
Import the packages in your main.dart:
import 'package:video_editor_sdk/video_editor_sdk.dart';
import 'package:imgly_sdk/imgly_sdk.dart';
Each platform requires a separate license file. Unlock VideoEditor SDK with a single line of code for both platforms via platform-specific file extensions.
Rename your license files:
- Android license:
vesdk_license.android - iOS license:
vesdk_license.ios
Pass the file path without the extension to the unlockWithLicense function to unlock both iOS and Android:
VESDK.unlockWithLicense("assets/vesdk_license");
Open the editor with a video:
VESDK.openEditor(Video("assets/video.mp4"));
Please see the API documentation for more details and additional customization and configuration options.
Example #
Please see our example project which demonstrates how to use the Flutter plugin for VideoEditor SDK.
License Terms #
Make sure you have a commercial license for VideoEditor SDK before releasing your app. A commercial license is required for any app or service that has any form of monetization: This includes free apps with in-app purchases or ad supported applications. Please contact us if you want to purchase the commercial license.
Support and License #
Use our service desk for bug reports or support requests. To request a commercial license, please use the license request form on our website.