Inspiration

Live electronic performance tools are powerful, but they still require constant manual control. We wanted to build an AI co-performer that can listen, reason, and act across both audio and visuals in real time.

What it does

Bio:gram is an autonomous DJ/VJ system. It generates and mixes music loops, plans transitions, controls EQ/FX automatically, and drives synchronized visuals. During a set, it can adapt prompts and texture direction to maintain flow with minimal human intervention.

How we built it

We built Bio:gram with a web-based real-time engine using TypeScript, Web Audio API, AudioWorklet DSP, and Three.js visual rendering.
For AI orchestration, we integrated Gemini APIs:

  • Gemini 3 Pro for mix planning only (high-quality reasoning, cost-aware routing)
  • Lightweight Gemini models for supporting generation/control tasks
  • AI prompt control for music mood/texture parameters
  • Auto Texture workflow to generate seamless visual texture prompts and apply results directly to Deck A/B visuals

We also used Gemini Antigravity workflow for rapid iteration in AI-assisted development.

Challenges we ran into

  • Keeping latency low while applying AI-driven automation in a live context
  • Preventing unstable or unsafe transitions in long-running sessions
  • Synchronizing audio state, visual state, and UI feedback (moving sliders/panels) in a deterministic way
  • Balancing model quality and API cost

What we learned

  • In AI products, evaluation-driven iteration is critical: “looks good” is not enough without repeatable behavior checks.
  • Clear separation of responsibilities (planning vs execution) improves both reliability and cost.
  • Real-time creative systems need strong fallback logic, not just model calls.

What's next

  • Extend long-horizon autonomous set control (Marathon mode)
  • Add audience-reactive control signals
  • Improve visual generation quality and style consistency
  • Publish reusable eval scenarios for AI live-performance agents

Built With

Share this project:

Updates