video_splitter/
├── lib/
│ ├── main.dart # App entry point & theme configuration
│ ├── models/
│ │ ├── app_config_loader.dart # JSON config loader
│ │ └── app_settings.dart # User settings persistence
│ ├── pages/
│ │ ├── home_page.dart # Main video processing UI
│ │ ├── loading_page.dart # Splash/loading screen
│ │ └── settings_page.dart # Settings configuration UI
│ └── processors/
│ ├── video_processor.dart # Base processor class
│ ├── basic_video_processor.dart # Core video processing
│ ├── noise_removal_processor.dart # Audio noise filtering
│ └── background_removal_processor.dart # (Experimental)
├── assets/
│ └── config/
│ └── app_config.json # App configuration
├── android/ # Android platform files
├── ios/ # iOS platform files
├── web/ # Web platform files
├── windows/ # Windows platform files
├── linux/ # Linux platform files
├── macos/ # macOS platform files
└── pubspec.yaml # Flutter dependencies
| Package | Version | Purpose |
|---|---|---|
ffmpeg_kit_flutter_new |
^4.1.0 | Video processing via FFmpeg |
image_picker |
^1.2.0 | Video file selection |
shared_preferences |
^2.2.2 | Settings persistence |
path_provider |
^2.1.1 | File system paths |
permission_handler |
^11.1.0 | Runtime permissions |
url_launcher |
^6.2.1 | External links |
yaml |
^3.1.1 | Pubspec parsing |
Contributions are welcome! Please read the Contributing Guidelines before submitting a PR.
See the Changelog for version history.
This project is licensed under the MIT License - see the LICENSE file for details.
