Audio node

Audio Input

Captures real-time audio from any system input device (built-in mic, USB/audio interface) into a lock-free GPU-shared ring buffer, with hot-plug support. Outputs raw audio for FFT / analysis plus live level and peak.

Inputs

PortTypeDefault
EnableOff stops the capture session and releases the device; Level, Peak and the audio stream go to zero. On restarts the session cleanly.booltrue
DeviceWhich input the audio comes from: 0 is the system default, higher numbers pick from the list of connected devices. An index past the end falls back to the default.int0
Sample RateCapture rate: 22.05, 44.1, 48 or 96 kHz. Clamped to that list, and 48 kHz is the safe default for most interfaces.int2
QualityBuffer size, trading latency against stability — 16 samples is about 0.3 ms, 64K about 1.4 seconds. Clamped to the preset list; small buffers for reactive visuals, large ones for recording.int8
ChannelWhich of the device's inputs leaves the node: 1 up to the channel count is that one alone, then the stereo pairs, then All. 0 is the default — inputs 1-2 on a multi-input device, every channel on a stereo one. On a mixer that is how you pick the mix bus rather than a dry send; the dropdown shows the device's own names.int0

Outputs

PortType
Audio Datastructure
Levelfloat
Peakfloat
Sample RateCapture rate: 22.05, 44.1, 48 or 96 kHz. Clamped to that list, and 48 kHz is the safe default for most interfaces.float
Channelsint
Device Namestring
Is Activebool

The Basics

Audio Input is the start of every audio-reactive setup. It listens to a sound source — your microphone, an audio interface, or any system input — and brings that live sound into Grafit so your visuals can react to it.

On its own it gives you two instantly-useful numbers: Level (how loud right now) and Peak (the recent maximum). For real frequency reactivity, send its Audio Data into the Audio FFT node.

How It Works

Audio runs on Core Audio's real-time thread (AUHAL), completely separate from the UI — so capture never stutters even when the graph is busy. Samples land in a GPU-shared buffer, which lets the FFT and Analysis nodes process the sound on the GPU with no copying. You can plug and unplug devices while it runs; a fail-safe feeds silence if the source drops, so nothing crashes.

Parameters

ParameterWhat it does
DeviceWhich input to listen to (mic, interface…).
ChannelWhich channel of a multi-channel device.
Sample RateCapture rate (usually leave default).

Outputs: Audio Data (for FFT/Output), plus live Level, Peak, Sample Rate, Channels and Is Active.

Examples

  • Loudness pulse — wire Level into a circle's size → it breathes with the sound.
  • VU meter — Level into a bar's height.
  • Full reactive chain — Audio Input → Audio FFT → Audio Analysis for beats and bass/mid/treble.

Tips

  • Smooth the Level with a Smooth node for a gentler pulse.
  • To hear what's being captured, send Audio Data to an Audio Output node.
  • macOS will ask for microphone permission the first time — this is required.

Open Audio Input in the interactive catalog →

Audio Input is one of 381 nodes in Grafit Pro.

Free download. Every feature for 7 days, no card. Then €99.99 once — or keep playing your projects as a Player.

More Audio nodes