Electron app to compress and trim videos. Uses FFmpeg for compression and smartcut for trimming. No Python required after install.
- Compress: Target size (10MB, 100MB, 250MB, custom), 30/60 fps, quality presets
- Trim: Keep a segment (start–end seconds) with minimal recoding via smartcut
- Play: Preview original, compressed, or trimmed output via ffplay
- Node.js and npm
- Python (for building compress.exe and trim.exe)
- bin/ folder with:
ffmpeg.exe,ffprobe.exe,ffplay.exesmartcut.exe(runnpm run get-smartcutto fetch)
npm install
npm run get-smartcut # if bin/smartcut.exe is missing
npm startnpm run distThis will:
- Run predist checks (and fetch smartcut into
bin/if needed) - Build
compress.exeandtrim.exefrom Python - Package the app with electron-builder
The installer is in dist/.
| Path | Purpose |
|---|---|
main.js |
Electron main process |
index.html |
UI |
compress.py / trim.py |
Sources for the exes |
scripts/ |
Build helpers (predist, get-smartcut, copy-*) |
bin/ |
ffmpeg, ffprobe, ffplay, smartcut |
See FILES.md for details. See SIZE.md for reducing installer size.
Before compressing or trimming, the app checks if the output file already exists. If it does, a warning is shown and the operation is not started—change the output filename to avoid overwriting.
MIT