FLUTTER ECOSYSTEM

minimo-pro/minimo_video

Aplicativo móvel para encolher vídeos diretamente no seu dispositivo

Capa do projeto mínimo (vídeo)
Stars
14
Forks
0
Último push (UTC)
19 de set. de 2026
Status do projeto
Ativo
minimo.pro GitHub avatar
GITHUB Organization

minimo.pro ↗

LinguagensDartSwiftKotlinObjective-C

Tópicos técnicos

Dependências usadas

Lista de dependências 28 itens

Categorias de apps

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Expandir / recolher README

App Store Google Play Website

minimo video screenshots

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

Contributing Code of Conduct

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

License

LICENCE - MIT