Skip to content

HAKORADev/BlurMe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

28 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

BlurMe - Screen Privacy Blur Overlay

BlurMe Logo

BlurMe is a lightweight, real-time screen blurring tool that protects your privacy during presentations, streaming, or screen sharing. With customizable blur intensity, grayscale conversion, and opacity control, BlurMe creates a soft-focus overlay over your entire screen β€” activated instantly with global hotkeys.

GitHub release License: MIT Platform

πŸ“¦ Latest Release: v1.1.0 β€” Pre-built binaries available for Windows, macOS, and Linux.

Important Notes:

  • πŸ”§ Run from source for the latest features. Pre-built binaries are available for each OS under Releases, but running from source ensures you have the newest updates.

πŸ“‹ For detailed version history, see CHANGELOG.md


Quick Start

Option 1: Download Binary (Recommended for End Users)

Grab the latest release for your operating system from the Releases page:

  • Windows
  • macOS
  • Linux

Run the executable β€” no installation required, make sure to read the release notes!

Option 2: Run from Source (For Developers / Power Users)

# Clone the repository
git clone https://github.com/YOUR_USERNAME/BlurMe.git
cd BlurMe

# Install dependencies
pip install -r requirements.txt

# Launch BlurMe
python src/blurme.py

Features

  • Real-time Screen Blur β€” Applies a Gaussian blur to your entire screen with adjustable radius.
  • Grayscale Mode β€” Convert the blurred image to grayscale with configurable intensity.
  • Opacity Control β€” Fine-tune the overlay transparency.
  • Global Hotkeys β€” Toggle, adjust settings, and close without ever touching the mouse.
  • Cross-Platform β€” Works on Windows, macOS, and Linux (X11).
  • Low CPU Usage β€” Optimized capture and processing; uses OpenCV acceleration when available.
  • Persistent Settings β€” Your preferences are saved automatically to blur.conf.
  • Extra Privacy (Sound Mute) β€” Optionally mute system audio when blur is active for complete privacy.

Configuration (blur.conf)

BlurMe stores settings in blur.conf next to the executable:

blur = colored        # or "grayscale"
blurness = 50         # blur intensity (1-100)
opacity = 255         # overlay opacity (0-255)
grayness = 128        # grayscale intensity (0-255)
sound = 0             # 0 = mute audio when blur active, 1 = keep audio

Extra Privacy: Sound Mute

Set sound = 0 (default) to automatically mute system audio when the blur overlay is active. This provides complete privacy during presentations or screen sharing β€” no unexpected sounds will play from your computer.

Set sound = 1 to keep audio normal.


Controls

BlurMe responds to the following global hotkeys (press simultaneously where noted):

Key Combination Action
F1 Switch to colored blur mode
F2 Switch to grayscale blur mode
F3 Decrease grayscale intensity
F4 Increase grayscale intensity
- (minus) Decrease overlay opacity
+ (plus) Increase overlay opacity
/ (slash) Decrease blur radius
* (asterisk) Increase blur radius
Ctrl + Alt + B Toggle BlurMe on/off
Ctrl + Alt + C Close BlurMe completely

On some keyboards, + and * may require the Shift key or be located on the numeric keypad.


Showcase

BlurMe transforms your screen in real-time. Here are some examples:

Original Colored Blur Grayscale Blur
Unblurred browser tab Colored blur –
Unblurred game Grayscale blur Stronger blur
Unblurred desktop with browser, file explorer and Kate Colored blur Grayscale blur
Unblurred screen Colored blur Grayscale blur

Left: original screen content. Middle/Right: with BlurMe overlay active.


Installation Details

Prerequisites (for source)

  • Python 3.12 or higher
  • pip package manager
  • Linux users: X11 session required (Wayland not supported)

Building a Binary

To create a standalone executable for your platform:

pip install pyinstaller
pyinstaller --onefile --windowed --icon=src/blurme.ico src/blurme.py

Technical Highlights

  • Multi-Backend Processing: Automatically selects the fastest available image processing library (OpenCV β†’ Pillow).
  • Efficient Screen Capture: Uses mss (Multi-Screen Screenshot) for low-latency, high-performance screen grabbing.
  • Global Hotkeys: Reliable key detection via pynput, with special handling for numpad keys and modifiers.
  • Persistent Configuration: Settings stored in plain-text blur.conf next to the executable or script.
  • Overlay Window: A frameless, click-through, always-on-top window that paints the processed screen image with adjustable opacity.
  • X11 Specifics: On Linux, uses xprop to enforce fullscreen and docking window properties for reliable overlay behavior.
  • Windows DPI Awareness: Applies display affinity to ensure the overlay stays on top even in high‑DPI scenarios.

Performance

Setting CPU Usage (approx)
No blur (radius 0) < 1%
Light blur (radius 10) 2–5%
Heavy blur (radius 50) 5–10%

Measured on a 4‑core CPU at 30 FPS. Enabling OpenCV can reduce load by up to 50%.


Contributing

BlurMe is open-source (MIT License) and welcomes contributions:

  • New features (e.g., region selection, multiple monitors)
  • Performance improvements
  • Bug fixes and platform compatibility enhancements
  • Documentation and translations

Please submit pull requests or issues via GitHub.


License

MIT License β€” See LICENSE for full details.


Acknowledgments

Built with appreciation for the open-source Python community and the developers of mss, pynput, and PyQt5. Inspired by the need for simple, effective screen privacy tools.


About

A cross-platform screen blur overlay tool for instant privacy. Toggle blur with a hotkey

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors