LoMux is a lightweight cross-platform GUI for FFmpeg. Its goal is to make common audio/video conversions as simple, free, and open source as possible for the layman. Driven by the extremely powerful CLI driven FFmpeg, LoMux comes with prebuilt executables for 64-bit macOS, Linux, and Windows. If you prefer not to install FFmpeg system-wide, you can drop the static ffmpeg
and ffprobe
binaries into the bin/<platform>/
folders.
LoMux/
├── .gitignore
├── LICENSE
├── README.md
├── LoMux.py
├── assets/
│ ├── lomux.icns
│ └── lomux.png
├── bin/
│ ├── mac/ ← (empty) ffmpeg/ffprobe here if not installed
│ ├── linux/ ← (empty) ffmpeg/ffprobe here if not installed
│ └── windows/ ← (empty) ffmpeg/ffprobe here if not installed
├── dist/
│ ├── mac/
│ │ └── LoMux.app ← macOS .app bundle
│ ├── linux/
│ │ └── lomux ← linux ELF executable (chmod +x)
│ └── windows/
│ └── LoMux.exe ← windows .exe
└─── spec/
├── mac.spec
├── linux.spec
└── win.spec
- FFmpeg / FFprobe installed globally or the core exes dropped into
bin/<platform>/
(if on Linux, make them chmod +x).
- Python 3.11+
- FFmpeg / FFprobe installed globally or the core exes dropped into
bin/<platform>/
(if on Linux, make them chmod +x).
Homebrew (macOS):
brew install ffmpeg
APT, DNF, Pacman (Linux)
sudo apt-get install ffmpeg
sudo dnf install ffmpeg
sudo pacman -S ffmpeg
Winget (Windows)
winget install ffmpeg
Alternativly you can download and install a static build or
you may drag ffmpeg + ffprobe exes into bin/<platform>/
(if on Linux, make them chmod +x). LoMux will look both in the system path and the bin folder for versions of FFmpeg to use.
Install them via your python package manger:
pip install pyinstaller \
ttkthemes \
rich \
pillow
apt install python-pyinstaller \
python-tk \
python-rich \
python-pillow
sudo pacman -S python-pyinstaller \
python-ttkthemes \
python-rich \
python-pillow tk
- Install FFmpeg (See above)
- Move
LoMux/
folder wherever you plan on storing it or delete it if FFmpeg is installed. The only file you need with ffmpeg installed is the prebuiltLoMux.app
. Otherwise you will need the/bin
folder to store ffmpeg/ffprobe exe files. - Double-click LoMux.app in Finder.
- If macOS Gatekeeper “verifies” it, wait a moment. If it still closes on first run, open Terminal and run:
open /path/to/dist/LoMux.app/
- (Optional) You may attempt to bypass gatekeeper from closing the app by
cd /path/to/Lomux/
and using:codesign --force --deep --sign - dist/LoMux.app xattr -dr com.apple.quarantine dist/LoMux.app
- If macOS Gatekeeper “verifies” it, wait a moment. If it still closes on first run, open Terminal and run:
- Install FFmpeg (See above)
- Move
LoMux/
folder wherever you plan on storing it or delete it if FFmpeg is installed. The only file you need with ffmpeg installed is the prebuiltLoMux
ELF indist
folder. Otherwise you will need the/bin
folder to store ffmpeg/ffprobe exe files. - chmod +x dist/linux/lomux
- Run:
./path/to/lomux
- Install FFmpeg (See above)
- Move
LoMux/
folder wherever you plan on storing it or delete it if FFmpeg is installed. The only file you need with ffmpeg installed is the prebuiltLoMux.exe
. Otherwise you will need the/bin
folder to store ffmpeg/ffprobe exe files. - Double-click LoMux.exe in File Explorer.
- If Windows Defender complains, “More info - Run anyway”.
- Python 3.11+
- FFmpeg / FFprobe installed globally or the core exes dropped into
bin/<platform>/
(if on Linux, make them chmod +x). (See above) - Python Modules pyinstaller, ttkthemes, rich, pillow (See above)
cd /path/to/LoMux/
pyinstaller spec/mac.spec
or
pyinstaller \
--clean \
--windowed \
--name LoMux.app \
--icon assets/lomux.icns \
--strip \
LoMux.py
Result: dist/LoMux.app
(Optional) You may attempt to bypass gatekeeper from closing the app by cd /path/to/Lomux/ and using:
codesign --force --deep --sign - dist/LoMux.app
xattr -dr com.apple.quarantine dist/LoMux.app
Refer to Usage once build is complete
cd /path/to/LoMux/
pyinstaller spec/linux.spec
or
pyinstaller \
--clean \
--windowed \
--name LoMux \
--strip \
LoMux.py
Result: dist/LoMux
ELF
Refer to Usage once build is complete
cd /path/to/LoMux/
pyinstaller spec/windows.spec
or
pyinstaller `
--clean `
--windowed `
--name LoMux.exe `
--icon assets\lomux.ico `
--strip `
LoMux.py
Result: dist\ LoMux.exe
Refer to Usage once build is complete
Contribution is welcome in the form of:
- Forking this repo
- Submiting a Pull Request
- Bug reports and feature requests
Please ensure your code follows the existing style (tabs for indentation) and that any new dependencies get added to the README.
This project is licensed under the MIT License (see LICENSE for details).
If you hit any issues, feel free to open an issue on GitHub. Happy converting.