A lightweight Flutter plugin for video manipulation using native code. Trim videos without FFmpeg dependency.
This library focuses specifically on video trimming functionality. If you need more advanced video editing features (trim, merge, crop, rotate, etc.), consider using easy_video_editor.
- 🚀 No FFmpeg Dependency: Uses platform-native video processing capabilities instead of heavy FFmpeg libraries
- 🪶 Lightweight: Smaller app size and faster processing compared to FFmpeg-based solutions
- ⚡️ Native Performance: Direct use of Media3 (Android) and AVFoundation (iOS) for optimal performance
- 📱 Memory Efficient: Processes videos without loading entire files into memory
- 🔒 Privacy Focused: All processing happens locally on the device
- 📼 Video Loading: Load and process video files from any source
- ✂️ Precise Trimming: Trim videos with millisecond precision
- 🛠️ Native Implementation: Clean and efficient platform-specific code
Add this to your package's pubspec.yaml
file:
dependencies:
flutter_native_video_trimmer: ^1.1.9
Or install via command line:
flutter pub add flutter_native_video_trimmer
import 'package:flutter_native_video_trimmer/flutter_native_video_trimmer.dart';
final videoTrimmer = VideoTrimmer();
await videoTrimmer.loadVideo('/path/to/video.mp4');
// Trim the first 5 seconds of the video
final trimmedPath = await videoTrimmer.trimVideo(
startTimeMs: 0, // Start time in milliseconds
endTimeMs: 5000, // End time in milliseconds (5 seconds)
includeAudio: true, // Optional, default is true
);
// Clear the cache
await videoTrimmer.clearCache();
Check the example folder for a complete sample app demonstrating all features.
Platform | Implementation | Minimum Version | Status |
---|---|---|---|
Android | Media3 | API 21 (5.0) | ✅ |
iOS | AVFoundation | iOS 11.0 | ✅ |
- Minimum SDK: API 21 (Android 5.0)
- Target SDK: API 34
- Kotlin: 1.9.0
- AndroidX
- Minimum iOS: 11.0
- Swift: 5.0
- Xcode: Latest version
Contributions are always welcome! Here's how you can help:
- 🐛 Report bugs by opening an issue
- 💡 Suggest new features or improvements
- 📝 Improve documentation
- 🔧 Submit pull requests
This project is licensed under the MIT License - see the LICENSE file for details.
If you find this plugin helpful, please give it a star on GitHub! It helps others discover the plugin and motivates me to keep improving it.