This tool captures both your microphone and system audio (e.g., the other person on a Zoom/Meet call). On macOS, this requires a virtual audio driver and some one-time configuration.
Install BlackHole 2ch (free, open-source virtual audio driver):
brew install blackhole-2chOpen Audio MIDI Setup (search in Spotlight or find it in /Applications/Utilities/).
This lets you hear system audio normally while also routing it to BlackHole for capture.
- Click the + button at the bottom-left → Create Multi-Output Device
- Check these devices (in this order):
- MacBook Pro Speakers (or your preferred output)
- BlackHole 2ch
- Rename it to Multi-Output (right-click → rename)
- Make sure Drift Correction is checked for BlackHole 2ch
This combines your microphone and BlackHole into a single input device the recorder can use.
- Click the + button → Create Aggregate Device
- Check these devices:
- MacBook Pro Microphone (or your preferred mic)
- BlackHole 2ch
- Rename it to Aggregate (right-click → rename)
- Make sure Drift Correction is checked for BlackHole 2ch
Before starting a meeting:
- Go to System Settings → Sound → Output
- Select Multi-Output as your output device
This ensures system audio plays through your speakers AND gets captured by BlackHole.
Your mic ──────────────────────┐
├──→ Aggregate Device ──→ murmur recorder
System audio ──→ Multi-Output ─┤
├──→ Speakers (you hear it)
└──→ BlackHole 2ch ─┘
python -m murmur devicesYou should see Aggregate and Multi-Output in the device list.
- You can adjust the sample rate of BlackHole in Audio MIDI Setup (default 48000 Hz matches this tool's settings)
- If you get "no input channels" errors, make sure your Aggregate Device has at least one input device checked
- After a meeting, switch your output back to normal speakers if you don't want the Multi-Output routing active