Cross-platform desktop prototype for a focused all-in-one FFmpeg GUI, now migrated to Tauri.
This project was created with significant assistance from Codex / AI tooling. The code, structure, UI, and project setup were developed collaboratively between the project owner and AI-assisted tooling rather than being written entirely by hand from scratch.
This project is designed to reduce FFmpeg licensing risk, but it is not legal advice.
- This build does not bundle FFmpeg or ffprobe binaries.
- The app currently calls external
ffmpegandffprobeexecutables from the local systemPATH. - The built-in Convert presets intentionally avoid assuming GPL-only or nonfree FFmpeg configurations.
- If FFmpeg is bundled with future releases, the distribution must follow the official FFmpeg licensing checklist and provide the required notices and corresponding source where applicable.
See THIRD_PARTY_NOTICES.md for links to the official FFmpeg licensing pages used for this project setup.
npm install- macOS local setup:
brew install rust ffmpeg- restart the terminal so
cargo,rustc,ffmpeg, andffprobeare onPATH
npm run devfor the frontend onlynpm run tauri:devto run the desktop app in Tauri dev mode
npm run tauri:build- On macOS this builds a
.appbundle only - Current-platform output is written under
src-tauri/target/release/bundle/ - Explicit macOS app build:
npm run tauri:build:mac - Windows installer-only build:
npm run tauri:build:windows
- Windows development remains supported. Use
npm run tauri:build:windowson Windows when you want the NSIS installer output. - A real macOS
.appbuild must be created on macOS with Apple's native toolchain. - The default build script is platform-aware: macOS builds
.app, Windows buildsnsis. - macOS development requires local installs of Rust and FFmpeg because this project uses system
ffmpeg/ffprobefromPATH. - Linux bundles should be built on Linux for the cleanest results.
- Tauri desktop app shell
- Focused English UI instead of a landing-page style layout
- Working
Lossless Cutworkflow - Video preview inside
Lossless Cut - Draggable range selection in the
Lossless Cuttimeline - Working
Convertworkflow with safe default presets - Working
Audio,Frames, andBatchworkflows - File and folder pickers
ffprobeanalysis for loaded media files- Direct
ffmpegexecution from the UI - Native drag and drop with manual-path fallback
- Remove the
Drop Debugpanel once drag and drop is confirmed stable - Keep polishing the desktop UX and module workflows
- Bundle
ffmpegandffprobeonly with a full licensing/compliance workflow in place