NEAB

Non Experimental Art Band  ·  351 Inc.  ·  generative sound installation  ·  2026

listens to the room
particle collision  ·  frequency  ·  mass
responds and mutates
never repeats

☕ buy me a coffee
NEAB Non Experimental Art Band  ·  Melletios Kyriakidis  ·  351 Inc.  ·  2026

NEAB, the Non Experimental Art Band, listens to the room the way a quantum computer listens to its qubits. Every sound is a vibration held in superposition, a state that can be measured but never fully known, and the act of listening changes what is heard. The machine keeps each frequency suspended until the room decides what it becomes: a deep bass impact, a glitch, a sub-frequency drone.

The work treats sound as the visible edge of the things we do not see. These are metaphysical ghosts in the plainest sense: pressures, presences, the residue of movement left hanging in the air after the body has gone. Through a para-methodological framework the system conjures these presences into signal. It traces them as data points, weighs their mass, and returns them to the room as vibration low enough to be felt before it is heard.

Switch on the camera and the unseen half of the room begins to speak. Movement is read as a second voice, a skeleton of light drawn over the dark, and the depth of that movement becomes the depth of the bass. Sound and image collapse into one another until it is no longer clear which is conjuring which.

NEAB is an iteration of FIELD (2026) and both descend from Alvin Lucier's I Am Sitting in a Room (1969), in which a voice is recorded and played back into the room, again and again, until only the resonant frequencies of the space remain. Here the system performs that ritual on itself: at intervals it takes its own last moments and plays them back into the mix, generation after generation, each pass narrowing toward the resonance of the room, until the space becomes the composer.

Its grammar is an irenic paroemiology, a peaceable study of old sayings: what is not seen still moves, what moves still sounds, and what sounds is already gone. There is no stable state. The system learns the acoustic signature of the moment, then lets it go.

Melletios Kyriakidis No data is recorded or transmitted.
Sound and image are processed locally in your browser.
INSTRUCTIONS NEAB  ·  how to play the room
Open Mic / CamStart with the microphone, the camera, or both. Make any sound or movement — the system answers with glitch and bass. You can always add the camera later with CAM.
Pads 01–16Tap an empty pad to record a loop of what is playing; tap again to stop and loop it. Tap to mute or unmute. Hold to erase.
Bass KeysTap a frequency for one bass drum hit. Double-tap to let it play itself — arm a few and they drum together, off-grid.
DepthSlides the whole output between high glitch and deep sub pressure.
FXOpens the effects rack — pitch, reverb, echo, distortion, reverse and more.
CAMTurns on the camera. Movement becomes bass; the screen traces you as data points.
BASS / MICMute either voice — isolate the bass layer or the glitch layer.
ROOMLets the piece re-record itself into the room, over and over, until the space's own resonance takes over. Toggle off to stop the build.
RISEFires a warm bass crescendo that tightens from quarters to sixteenths, then drops. It records itself into the next free pad so the whole figure loops.
SWAPFlips the voices: motion becomes the glitch and the mic becomes the bass. Tap again for the normal routing (motion = bass, mic = sonics).
GFXOpens the graphics rack — ten glitch patches from Pixelate to Matrix, each with a turning knob. Every visual patch also drives a matching audio effect, so bending the picture bends the sound. KILL GFX inside resets the picture to the dark room.
KeyboardEvery letter and number key is a voice — tap for a note, hold to sustain. Stack too many and it folds into one long warm note instead of chaos. ESC is the kill switch.
BPMSlide across the BPM box to set the tempo by hand — no mic lock needed.
KILLInstant silence. Press again to bring everything back.
RESETClears all loops, autos and states — a clean room.
Listening
RhythmThe system times the gaps between your sounds. Consistent spacing locks a BPM and a 16-step sequencer starts running; the sounds it generates then land on that grid.
The BeatWhen the BPM locks, a four-layer beat is grown by fractal subdivision from a random seed: kick, sub, click and tone each get their own self-similar pattern with velocity accents. Every two bars it mutates — a layer rotates, a cell flips, or one voice regrows entirely. RESET discards the organism; the next lock grows a new one from a new seed. No two beats ever exist twice. The HUD shows each beat's seed name.
PitchSustained tones are pitch-tracked. Detected pitch tunes the kicks, ring modulation and drones, so the piece plays in the key of the room.
Two Voices
MIC = GlitchMicrophone input drives the glitch voice: precision clicks, data bursts, metallic ring mod, ambient drones.
Motion = BassCamera movement drives the bass voice. Where you move in frame sets the note (higher in frame = higher bass, 30–70Hz); how much you move sets its weight. BASS and MIC buttons mute each voice for isolation.
Loop Pads
RecordTap an empty pad: it records the full output (with FX baked in). Tap again to stop and start looping. REC captures to the next open pad instead.
LayeringLoops play back through the FX rack again, so loops of loops mutate. Playback speed follows the PITCH control.
Bass Drum Row
Registers24–41Hz ring long and clean; 55–98Hz punch short and distorted. Every hit pours into a shared reverb so overlapping hits bleed into one wash.
AutoDouble-tap arms a key: it fires at random intervals (0.3–2.8s) with occasional stumble-bursts. Several armed keys drift in and out of phase — improvised drumming, never a grid.
FX Rack
Pitch±12 semitones on everything generated, and on loop playback.
Echo / Time / FdbkDelay send, delay time, and regeneration — high feedback approaches infinite trails.
Drive / CrushDistortion and bit-depth reduction on the master.
Filter / StutMaster lowpass sweep; rhythmic gate chopping at 2–16Hz.
ReverseContinuously replays the last 2.2 seconds backwards on a rolling cycle.
Reset FXReturns the rack to defaults without touching loops or layers.
Camera & Video
SkeletonEdge detection traces the contours of whatever is in frame as a white wireframe; motion spawns tracking nodes with coordinate readouts. Sound visuals dim so the trace reads clean for projection.
VIDRecords the screen (up to ~10s or 8 bars), then loops it as a translucent ghost layer over the live visuals. Tap: record → loop → clear.
VIZCycles four visual modes: NODES (bars + waveform), DATA (numeric rain), MASH (glitch blocks), SCAN (barcode field).
ColourAs the sound grows louder and more drawn out, colour arrives in the nodes: a travelling hue and its exact complementary opposite, flickering between the two. The room stays permanently dark — intensity feeds colour and density, never brightness.
GFX RackPixelate (vertical glitch blocks, linked to CRUSH), Jitter (slice shake, linked to STUTTER), Melt (downward smear, linked to ECHO and FDBK) and Bad TV (data noise and scanlines, linked to DRIVE). The links run both ways: retune a patch number and the sound moves with it, and every patch breathes with the beat. The FX rack sliders follow so the state reads the same everywhere.
Hover TuningEvery FX and GFX row is a proximity slider: hover near it and slide the mouse left or right to sweep the value. The knobs turn as you slide. No clicking, no precision needed.
Ten PatchesPixelate⇆Crush, Jitter⇆Stutter, Melt⇆Echo, Bad TV⇆Drive, RGB Split⇆Verb, Tracking⇆Time, Wave⇆Feedback, Mirror⇆Pitch, Dither⇆Filter, Matrix⇆Depth. Stack them for compound 90s net-art damage.
HyphaeNodes grow root-like filaments as they age and signal each other without touching. Nodes on the same frequency band share a colour signature, glowing in harmony and passing data pulses across the gap between them.
SpacesStructural shifts in the sound (a drop, a new beat locking, room generations, deep swells) cross the colony into a different dimensional layout: FIELD, ORBIT or COLUMNS, announced in the HUD with a glitch wipe.
Background
SwellsEvery ~15s a long reverb-washed tone rises — deep sub or high data-sine — each one slightly louder than the last. RESET calms them back down.
ROOMToggles the room-generation process (after Alvin Lucier's I Am Sitting in a Room). While open, every ~26s the system replays its own last moments back into itself; each generation is re-captured with the last one inside it, and a narrowing filter lets the room's resonance slowly take over. The HUD counts the generations. Toggle off to freeze, RESET to clear.
Tone ClustersBright sounds trigger runs of tuned clicks that scatter at random, and sometimes snap onto the beat grid and fall together. All pitched material is capped at 2.8kHz so nothing ever screams.
RISEA scripted crescendo: warm detuned bass pulses tighten from quarter notes to sixteenths while the filter opens and the weight climbs, then one enormous 26Hz drop. If a pad is free it records itself and starts looping automatically. Sized to the locked BPM when there is one.
No data is recorded or transmitted.
Sound and image are processed locally in your browser.
MIC OFF
CAM OFF
PITCH --
STATE DORMANT
--
NEAB
BPM —
STEP —
INPUT
VOICE
MASS
SYNC
MOTION
RAW
tap pad to record loop  ·  tap again to stop + play
hold pad to clear  ·  rec captures output to next open pad
cam traces the room as data nodes  ·  movement becomes the bass
vid records the screen into a looping ghost layer  ·  depth shifts the mass
FX RACK
PITCH0
VERB28
ECHO0
TIME320
FDBK35
DRIVE0
CRUSH0
FILTER100
STUT0
GRAPHICS
Pixelate
Jitter
Melt
Bad TV
RGB Split
Tracking
Wave
Mirror
Dither
Matrix
BASS TAP HIT · 2×TAP AUTO
BPM
DEPTH