video_editor_sdk 2.7.0 video_editor_sdk: ^2.7.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 #
System requirements #
- Flutter: 1.20.0
- Dart: 2.12.0
- iOS: 13
- Android: 5 (SDK 21)
Getting started #
Add the plugin package to the pubspec.yaml
file in your project:
dependencies:
video_editor_sdk: ^2.7.0
Install the new dependency:
flutter pub get
Known Issues #
With version 2.4.0
, we recommend using compileSdkVersion
not lower than 31
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.gradle
update 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 adx
symlink for thed8
file withln -s d8 dx
. - From there, go to
./lib/
and create adx.jar
symlink for thed8.jar
file withln -s d8.jar dx.jar
.
Android #
-
Add the img.ly repository and plugin by opening the
android/build.gradle
file (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.3.1' ... } }
In order to update VideoEditor SDK for Android replace the version string
10.3.1
with a newer release. -
Still in the
android/build.gradle
file (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.gradle
file (notandroid/build.gradle
) you will need to modify theminSdkVersion
to at least21
. We also recommend to update thebuildToolsVersion
to31.0.0
or higher as well as thecompileSdkVersion
to31
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
), yourandroid/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 ... } ... }
-
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' } }
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.