minimo-pro/minimo_video
기기에서 직접 비디오를 축소할 수 있는 모바일 앱
- Stars
- 14
- Forks
- 0
- 최근 푸시(UTC)
- 2026. 9. 19.
- 프로젝트 상태
- 활성
기술 주제
사용 중인 의존성
의존성 목록 28 개
- flutter
{"sdk":"flutter"} - flutter_localizations
{"sdk":"flutter"} - intl
^0.20.2 - shared_preferences
^2.5.3 - share_plus
^13.3.0 - url_launcher
^6.3.2 - light_compressor_v2
1.9.1 - flutter_bloc
^9.1.1 - gal
^2.3.3 - flutter_svg
^2.3.0 - flutter_launcher_icons
^0.14.4 - auto_route
^11.1.0 - auto_route_generator
^10.5.0 - build_runner
^2.15.0 - intl_utils
^2.8.11 - path_provider
^2.1.5 - path
^1.9.1 - reel_text
^0.5.1 - motor
^1.1.0 - package_info_plus
^10.2.1 - wakelock_plus
^1.8.0 - in_app_review
^2.0.12 - upgrader
^13.7.0 - pub_semver
^2.2.1 - video_player
2.14.0 - stupid_simple_sheet
^0.9.1+1 - flutter_test개발 의존성
{"sdk":"flutter"} - flutter_lints개발 의존성
^6.0.0
앱 카테고리
원본 README
아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.
README 펼치기 / 접기
minimo (video) is a free mobile app for shrinking videos directly on your device. No cloud upload. No subscription. Your videos stay yours.
Features
- Simple quality presets: high, medium, low
- Advanced controls: resolution, bitrate, frame rate, codec, and audio
- Batch compression
- Save and share compressed videos
Native compression pipeline
flowchart TD
A[CompressBloc<br/>processes videos sequentially] --> B[VideoCompressorAdapter<br/>builds bitrate, resolution, frame rate, codec and audio config]
B --> C[light_compressor_v2]
C --> D{Native platform plugin}
subgraph Android
E[MediaCodec and MediaMuxer]
E --> F[MP4 output]
end
subgraph iOS
G[AVFoundation]
G --> H[MP4 output]
end
D -->|Android| E
D -->|iOS| G
C -.->|progress stream| A
F --> I[Native result]
H --> I
I --> J{Output is smaller?}
J -->|Yes| K[Move MP4 to app output]
J -->|No| L[Discard result and keep original]
Compression uses native platform APIs, not FFmpeg. Input, output, and intermediate files stay on the device.
Why not FFmpeg?
Native Android codecs and AVFoundation keep the app smaller, use platform hardware acceleration, consume less battery, and avoid bundling another native runtime. They cover minimo's current goal: straightforward on-device video compression.
The trade-off is less low-level control and small output differences between Android and iOS. FFmpeg would make sense if the app needed identical cross-platform encoding, uncommon formats, or complex filter pipelines.
FFmpeg is available under LGPL or GPL depending on how it is built and which components are enabled. Shipping its binaries would require tracking that configuration and satisfying the corresponding redistribution, attribution, relinking, and source-code obligations. Using system Android and iOS codecs avoids distributing FFmpeg and keeps the app itself under the MIT License. Codec patent and store requirements may still apply independently.
How to contribute
Credits
Video compression is powered by light_compressor_v2. Respect and thanks to its maintainers and contributors.
Special thanks to Kamran Bekirov and his website Flutter Pro Design. I learned from and adapted many ideas from his work for myself and for this app.
Contacts
@khlebobul [Email - khlebobul@gmail.com](mailto:khlebobul@gmail.com) @khlebobul_dev Personal - Website