Ultrasonic audio jamming tool to protect against unauthorized recording
Camouflage generates ultrasonic signals (20-24kHz) that interfere with audio recording devices while remaining inaudible to humans. It operates in two distinct modes:
- Speaker Jammer Mode: Outputs ultrasonic signals through speakers to jam nearby microphones
- System Jammer Mode: Creates virtual audio devices to prevent remote recording during voice calls
- Multi-tone Generation: Uses multiple ultrasonic frequencies for increased effectiveness
- Inaudible Operation: Optimized amplitude settings to remain completely inaudible
- Cross-platform Support: macOS, Linux, and Windows (platform-specific features vary)
# Build the project
make build
# Or use cargo directly
cargo build --releaseOutput ultrasonic signal through speakers to jam nearby microphones:
# Run with default settings
cargo run -- speaker
# Or using the binary
./target/release/camouflage speaker
# Custom frequency and amplitude
./target/release/camouflage speaker -f 23000 -a 0.3
# Multi-tone jamming with frequency spread
./target/release/camouflage speaker -n 5 -s 500Create virtual audio device to prevent remote call recording:
# Run with default settings
cargo run -- system
# Custom mix ratio
./target/release/camouflage system -m 0.5Run Camouflage continuously in the background:
# Start daemon
camouflage daemon start
# Check status
camouflage daemon status
# Stop daemon
camouflage daemon stop
# Enable auto-start on boot
camouflage daemon enable
# Disable auto-start
camouflage daemon disableAuto-start details:
- macOS: Installs LaunchAgent (
~/Library/LaunchAgents/so.nomi.camouflage.plist) - Linux: Installs systemd user service (
~/.config/systemd/user/camouflage.service) - Windows: Instructions for Startup folder shortcut
Set up platform-specific virtual audio for system mode:
# macOS: Installs BlackHole via Homebrew
camouflage install
# Linux: Creates PulseAudio loopback
camouflage install
# Windows: Shows VB-Cable installation instructions
camouflage install-f, --frequency <HZ>: Ultrasonic frequency (20000-30000 Hz, default: 23000)-a, --amplitude <VALUE>: Signal amplitude (0.0-1.0, default: 0.25 - optimized for inaudibility)-n, --num-tones <COUNT>: Number of tones for multi-tone jamming (default: 3)-s, --spread <HZ>: Frequency spread for multi-tone (default: 300)-m, --mix-ratio <VALUE>: Mix ratio for system mode (0.0-1.0, default: 0.5)
Camouflage generates ultrasonic signals in the 20-24kHz range, which is above the normal human hearing range but within the frequency response of most microphones. The signal uses:
- Multi-tone generation: Multiple ultrasonic frequencies spread across a range
- Optimized amplitude: Low enough to be inaudible but effective for jamming
- Real-time processing: Continuous signal generation with minimal latency
In speaker mode, the tool:
- Generates ultrasonic signals
- Outputs them through your system's default audio device
- The signals travel through air and interfere with nearby microphones
In system mode, the tool:
- Creates a virtual audio device (platform-specific)
- Captures system audio output
- Mixes it with ultrasonic signals
- Routes the combined signal to speakers
- Prevents clean audio capture during remote calls
The project includes comprehensive tests:
# Run all tests
make test
# Run E2E tests with Whisper/Deepgram
cargo test --package camouflage-tests
# Run benchmarks
cargo benchTested against commercial STT services:
- OpenAI Whisper: 95%+ jamming effectiveness
- Deepgram: 90%+ jamming effectiveness
- CPU Usage: <5% on modern hardware
- Latency: <10ms in system mode
| Platform | Speaker Mode | System Mode | Status |
|---|---|---|---|
| macOS | ✅ | ✅ | Fully supported |
| Linux | ✅ | 🚧 | In progress |
| Windows | ✅ | 🚧 | In progress |
# Build
make build
# Run tests
make test
# Run linter
make lint
# Clean build artifacts
make clean- This tool is designed for privacy protection and should be used responsibly
- Check local laws regarding audio jamming devices
- Use appropriate amplitude levels to avoid speaker damage
- The tool operates in ultrasonic ranges that may affect pets or wildlife
The project is organized as a Rust workspace:
camouflage/: CLI application and main entry pointcamouflage-core/: Core signal generation and jamming logiccamouflage-tests/: E2E tests and validation against STT services
MIT License - see LICENSE for details
- Usage Guide - Comprehensive usage instructions
- Architecture - Technical architecture and design
- Contributing - Guide for contributors
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
Built with: