Microphone Mute Toggle - Final Version (PySide6/Qt + Native Hooks)
- Configurable Hotkey: Choose from a dropdown or capture any key.
- Advanced Beep Configuration: Customize frequency, duration, and count for mute/unmute events.
- System Tray Integration: Control everything from the tray icon.
- Native Hooks: Uses low-level Windows hooks (ctypes) for reliable hotkey detection without admin privileges.
- Zero Dependencies (Runtime): No 'keyboard' library required.
- Theme Aware: Automatically switches icons based on system theme (Light/Dark).
- Device Selection: Choose specifically which microphone to control.
- Persistent Overlay: Always-on-top overlay showing mute status and voice activity.
- Python 3.14+
- uv (Recommended for dependency management)
-
Clone the repository:
git clone https://github.com/madbeat14/MicMute.git cd MicMute -
Install dependencies: Using
uv(Fastest & Recommended):uv sync
Or using standard pip:
pip install -e .
To run the application directly without building:
Using uv:
uv run python run.pyOr with standard python:
python run.pyThis uses the locked dependency versions from uv.lock for consistent builds:
# 1. Sync dependencies from lockfile
uv sync
# 2. Generate spec file for your environment
python generate_spec.py
# 3. Build the executable
python build_exe.pyThe executable will be generated in dist/MicMute.exe.
python generate_spec.py && python build_exe.pysrc/MicMute: Source code package.run.py: Entry point for running from source.build_exe.py: Script to build the standalone executable.generate_spec.py: Generates PyInstaller spec file with correct paths.dev_build.py: Developer script for upgrade + build (maintainer use only).