AI Clipping on Flutter
The AI Clipping feature automates the video creation process by leveraging the power of artificial intelligence. The neural network transforms raw input into ready-to-post videos with various transitions, effects, and a precise music match.
Here is how users can interact with it:
- User selects clips and music. People can choose their desired clips and accompanying music within the app.
- AI trims the videos. The AI algorithm intelligently trims the selected clips to match the tempo and rhythm of the chosen track.
- AI adds various effects. AI Clipping enhances the content by adding a variety of effects to create visually stunning content.
- User exports, edits, or regenerates the clip. Upon completion, users have the flexibility to export the video as is, make further edits, or regenerate the clip for a fresh perspective.
- Regardless of the user’s editing skills, with the help of Auto Cut, everyone can get a stunning video within seconds.
Supported music providers
[!NOTE] Please contact Banuba representatives to know more about using the
Banuba musicwithAI Clipping.
Usage
Setup configuration
Specify instance of AiClipping in FeaturesConfig builder:
[!IMPORTANT] Contact Banuba representatives to get trial keys for
audioDataUrlandaudioTracksUrluse in production.
final config = FeaturesConfigBuilder()
.setAiClipping(
AiClipping(
audioDataUrl: "...",
audioTracksUrl: "..."
)
)
...
.build();
Launch AI Clipping
[!NOTE] Video creation with AI Clipping is available on Gallery screen by default.
For better experience we added new entry point to VeSdkFlutter for opening AI Clipping as a separate mode. In this scenario the user starts from the gallery screen and is taken to AI Clipping screen after selecting media.
Future<void> _startVideoEditorInAiClippingMode() async {
final config = FeaturesConfigBuilder()
.setAudioBrowser(...)
.setAiClipping(...)
.build();
try {
dynamic exportResult = await _veSdkFlutterPlugin
.openAiClippingScreen(_licenseToken, config);
_handleExportResult(exportResult);
} on PlatformException catch (e) {
_handlePlatformException(e);
}