Page cover

volume-lowAdvanced Routing

To capture audio from applications (Spotify, YouTube, DAWs, etc.) instead of a microphone, you need to route system audio to a virtual input device.

macOS

Option 1: BlackHole (Free, Open Source)

BlackHole is a free virtual audio driver that routes audio between applications:

  1. Install the 2-channel version (sufficient for stereo)

  2. Open Audio MIDI Setup (Applications > Utilities)

  3. Click "+" at bottom left and select "Create Multi-Output Device"

  4. Check both:

    • Your speakers/headphones (so you can hear)

    • BlackHole 2ch (to capture audio)

  5. Right-click the Multi-Output Device and select "Use This Device For Sound Output"

  6. In Nodalin's Audio Settings, select "BlackHole 2ch" as input

How it works: System audio plays through both your speakers AND BlackHole, allowing Nodalin to capture it.

Option 2: Loopback by Rogue Amoeba (Premium)

Loopback provides a more user-friendly interface with advanced routing:

  1. Create a new virtual device

  2. Add audio sources (applications, system audio, etc.)

  3. Route the virtual device to your speakers for monitoring

  4. In Nodalin's Audio Settings, select your Loopback device

Advantages: Visual routing, per-app control, no Multi-Output Device needed, includes monitoring.

circle-info

We've used Loopback for most of our testing while coding Nodalin's audio features.

Windows

Option 1: VB-Audio Virtual Cable (Simple)

VB-Cable creates a virtual audio cable between applications:

  1. Install VB-AUDIO Virtual Cable

  2. Open Sound Settings (right-click speaker icon)

  3. Set VB-Cable as your default playback device

  4. In Nodalin's Audio Settings, select "CABLE Output"

Note: You won't hear audio unless you also set up monitoring (see Voicemeeter below).

Option 2: Voicemeeter (Advanced, Free)

Voicemeeter is a virtual audio mixer with routing and monitoring:

  1. Install Voicemeeter (standard version is sufficient)

  2. Set Voicemeeter Input as Windows default playback device

  3. In Voicemeeter, route audio to your physical output (A1)

  4. In Nodalin's Audio Settings, select "Voicemeeter Output"

Advantages: Built-in monitoring, mixing multiple sources, volume control, EQ.

Linux

Using PulseAudio (Most Distros)

Then set applications to output to "Nodalin_Audio" and select the monitor in Nodalin.

Using JACK (Pro Audio)

Troubleshooting

No Audio Devices Found

  • Check browser support: Web Audio API works in Chrome, Edge, Opera, and Firefox

  • Grant permissions: Ensure you clicked "Allow" when prompted

  • Refresh the page: Reload Nodalin and try again

  • Check system settings: Verify audio devices are enabled in your OS

Can't Hear System Audio After Setup

  • macOS: Use a Multi-Output Device to route to both BlackHole and speakers

  • Windows: Use Voicemeeter for monitoring, or set up "Listen to this device" in Sound Settings

  • Linux: Add a loopback module to monitor the null sink

Audio Node Not Responding

  • Check device selection: Verify correct device is selected in Audio Settings

  • Verify frequency range: Open Audio Settings to see if audio appears in your selected range

  • Adjust multiplier: Increase it if the output is too small

  • Test with full spectrum: Set minFreq: 20, maxFreq: 20000 to capture all frequencies

Spectrum Shows No Activity

  • Volume too low: Increase system volume or application volume

  • Wrong device selected: Switch to the correct input device

  • Virtual cable not routing: Check your virtual audio device settings

  • Browser permission denied: Reload and grant permission again

Latency Issues

  • Close other audio apps: Reduce system audio processing load

  • Use ASIO drivers: Windows users can benefit from low-latency drivers


Best Practices

  1. Isolate frequency bands: Use multiple Audio nodes for bass, mids, and highs.

  2. Monitor the spectrum: Keep Audio Settings open while setting up to see what you're capturing.

  3. Scale appropriately: Match the multiplier to the property range you're controlling.

  4. Add offsets: Use Number nodes to prevent values from hitting zero.

  5. Smooth the output: Use Point or Mouse nodes with easing for less jittery motion.

  6. Test with different music: Different genres emphasize different frequencies.

Last updated