A system-wide virtual microphone and a console-style effects rack for the Omarchy Shell. Pick Microphone Effects in Zoom, Meet, Discord, OBS, or any other PipeWire application, then shape the sound from the bar.
Everything runs locally on the CPU. The plugin does not access the network, and unlike a virtual-camera plugin it needs no root setup.
- Input/output meters, mute, monitor, input selection, and output naming
- Reorderable high-pass, hum removal, noise reduction, gate, compressor, de-esser, parametric EQ, pitch, voice-FX, and reverb stages
- Auto-tune with a clickable piano, key/scale guidance, speed, amount, and custom note latching
- Pitch and formant shifting, doubler, tape, ring modulation, and megaphone
- Room, hall, cathedral, echo, and underwater spaces
- Slap and long delays, parallel compression, a movable boost limiter, dry/wet controls, and editable user presets
- Optional per-microphone settings
omarchy plugin add https://github.com/WhoIsCalebBrown/mic-effects.git --enableThe service builds its small C++ PipeWire daemon on first load. Omarchy already ships the usual build tools; if any are missing, the log names the exact packages and the command to install them:
cat ~/.cache/mic-effects/install.logThe runtime depends on pipewire; building requires gcc, make, and
pkgconf. No OpenCV, ONNX models, kernel module, or privileged helper is used.
When installed on a machine that previously used the microphone built into Camera Effects, the installer imports that microphone configuration once and leaves the original file untouched.
Remove the unprivileged runtime first, then let Omarchy remove the plugin:
cd ~/.config/omarchy/plugins/whoiscalebbrown.mic-effects
./install.sh --uninstall
omarchy plugin remove whoiscalebbrown.mic-effectsThe uninstall keeps ~/.config/mic-effects/config.json so reinstalling does
not discard your presets. Delete that file separately if you also want to
remove the saved settings.
Click the microphone icon to open the rack. Right-click the icon to mute. A lit stage in the signal-chain rail is engaged; select one to edit it, or use the arrow buttons to move it earlier or later in the chain. Double-click a knob or fader to return it to its default.
Channel presets can be used as-is or selected, adjusted, renamed, and updated. Saving over a built-in creates a personal override; Restore removes that override without deleting the factory preset. Save new captures the current rack as another named preset.
In the Pitch stage, the piano outlines the notes in the selected key and scale. Click a piano key to start a custom latch and add or remove allowed notes; use Use key + scale to clear the custom latch.
For feedback-free monitoring, use headphones before enabling Mon.
The daemon is also available from a terminal:
mic-effects-server status
mic-effects-server quitThis project began as the microphone half of alanfortlink/camera-effects. It is now independent: it owns its daemon, socket, settings, PipeWire node, and build. If Camera Effects is also installed, use only one of the two virtual microphones. A companion Camera Effects change that disables its legacy mic provider when this plugin is present is planned for upstream submission.
If Camera Effects previously hid your raw microphones, turn that option off before removing it. This plugin's own optional hide helper uses separately named WirePlumber files and never enables itself automatically.
omarchy plugin validate .
make -C daemon clean all
./install.shThe QML plugin hot-reloads when developed from
~/.config/omarchy/plugins/whoiscalebbrown.mic-effects/. The daemon and its
state are deliberately separate:
- socket:
$XDG_RUNTIME_DIR/mic-effects/ctl.sock - settings:
$XDG_CONFIG_HOME/mic-effects/config.json - installed runtime:
~/.local/lib/mic-effects/
The original PipeWire integration and microphone DSP were created in Camera Effects by tank (alanfortlink). Caleb Brown extracted the audio system and developed the console rack, reorderable processing, parametric EQ, pitch and formant controls, advanced vocal effects, presets, and standalone lifecycle.
MIT licensed. See LICENSE and THIRD_PARTY_NOTICES.md.
