ImprovAIze
“Most of us get nervous about singing in front of people—whether it’s karaoke night, the school recital, or even my own performances.
Core trick
Extracts pitch, vibrato, and timbre features from a recorded take, then maps them to traits and drills through agent layers.
Description
“Most of us get nervous about singing in front of people—whether it’s karaoke night, the school recital, or even my own performances.
I’ve felt that same anxiety, and it inspired me to build Vocalysis: an AI-assisted vocal coach that gives you objective, real-time
feedback on your voice. Vocalysis focuses on the skills singers struggle with most: tuning, breath support, range, expressivity, and confidence. You upload or
record a short clip, and our listener agent extracts pitch, energy, vibrato, and timbre features mapped to meaningful traits. From there,
the interpreter flags what’s working and what needs attention, while the mentor layer translates it into quick drills and encouragement
tailored to your practice goal.
The effect is immediate. Instead of guessing why a note felt shaky or a phrase fell flat,
README excerpt
# Vocalysis — Multi-Agent Vocal Coach Python multi-agent audio pipeline with both a Streamlit prototype and a new React + FastAPI experience. ## Features - Upload a rehearsal or performance take and receive instant analysis - Deep signal descriptors: vibrato shape, harmonic/percussive balance, spectral statistics - Emotion heuristic that classifies the delivery (radiant, introspective, dramatic, etc.) - Configurable practice goals that tailor coaching tips - Lightweight JSON memory that stores recent sessions and feedback - Interactive "Choir Room" with speech-driven drills and AI mentor prompts - Microphone or file-upload analysis that pipes real takes through the FastAPI backend ## Getting Started ### Backend (FastAPI) 1. **Install dependencies** ```bash python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt ``` 2. **Run the API** ```bash uvicorn app.api:app --host 127.0.0.1 --port 8000 --reload ``` ### Frontend (React + Vite) 1. ```bash cd frontend npm install npm run dev -- --host 127.0.0.1 --port 5173 ``` 2. Visit `http://127.0.0.1:5173` and upload audio to trigger the pipeline. By default the React client calls `http://localhost:8000`. Override via `.env` in `frontend/`: ``` VITE_API_BASE=http://127.0.0.1:8000 ``` ### Legacy Streamlit prototype The original Streamlit UI still runs if you prefer the old flow: ```bash streamlit run app/main.py ``` ## Project Layout ``` vocalysis/ ├── app/ │ ├── api.py