A live LASA space

The same space in 3D

This is our live, public test space. Drag your circle to move, drag its arrow to turn.

Join

Wear headphones: this is an open microphone into a shared space, and it is binaural.

Your colour

not connected

playback agent

Playback

Sixteen singers from one BW64 file with ADM object metadata. A server-side player joins as an ordinary LASA client and sends every voice as its own entity, in lockstep: one connection, one sequence, sample-aligned. Positions and the walk come from the ADM; the server renders each voice binaurally for every listener.

Agent

An ElevenLabs voice agent joins as an entity, summoned when you enter its zone. It hears its own binaural mix, speaks from where it stands and moves by local reflexes (face the speaker, keep a distance) plus LLM tool calls. The painting's soundscape is a second object-audio piece on the same player, generated from the image.

Do it yourself

Everything on this page is the public client on npm and a stock server image. The space it joins runs development-mode admission (no tickets); the docs cover tickets, certificates and deployment when you want your own.

  1. Run a space

    docker run --rm -p 4443:4443/udp \
      -e PANAUDIA_ALLOW_UNTICKETED=true \
      panaudia/panaudia-lasa:latest
  2. Install the client

    npm install @panaudia/lasa-client
  3. Read this page's source

    The whole client for this page is demo.js: connect, one entity, capture, binaural playout, the roster. Guides on connecting, audio, presence and state.