How aryamaandash/guitar-style-classifier works
Guitar Style Classifier combines a Next.js presentation and browser-side WAV demo with a Python audio-to-model workflow. Recordings are split into one-second clips, quality-checked, used to train and evaluate a baseline classifier, then consumed by live recognition from an audio interface. The site also presents labels, pipeline details, and stored evaluation results. The graph reflects documented workflow and sampled source; training internals are only partially excerpted, and the tree does not contain raw/processed audio or the trained model artifact.
Main entry points: live_predict.py Live recognition · train_baseline.py Baseline training · page.tsx Classifier site · split_audio.py Clip splitter
Components 21
Website
- Classifier site
app/page.tsx - Site model data
lib/model-data.ts - WAV demo
components/classifier-demo.tsx - Demo prediction
components/classifier-demo.tsx
Audio preparation
- Session metadata
data/metadata/sessions.csv - Clip splitter
src/split_audio.py - Clip metadata
data/metadata/clips.csv - One-second clips
Training and QC
- Audio quality control
src/qc_audio_clips.py - QC reports
results/qc - Baseline training
src/train_baseline.py - Trained classifier
- Evaluation artifacts
results/baseline
Recognition
- Live recognition
src/live_predict.py - Shared feature extraction
src/train_baseline.py - Smoothed prediction
src/live_predict.py
Other components
- Website visitor
- Uploaded WAV
- Raw recordings
- Guitarist
- Audio input device
Connections 27
- Website visitor → Classifier site: opens
- Classifier site → Site model data: reads display data
- Classifier site → WAV demo: renders
- Website visitor → WAV demo: uploads WAV
- Uploaded WAV → WAV demo: decodes
- WAV demo → Demo prediction: classifies locally
- Demo prediction → Website visitor: shows probabilities
- Raw recordings → Clip splitter: reads WAV
- Session metadata → Clip splitter: selects recordings
- Clip splitter → One-second clips: writes clips
- Clip splitter → Clip metadata: writes metadata
- One-second clips → Audio quality control: scans clips
- Clip metadata → Audio quality control: reads metadata
- Audio quality control → QC reports: writes reports
- Clip metadata → Baseline training: loads clip records
- Session metadata → Baseline training: assigns splits
- One-second clips → Baseline training: loads audio
- Baseline training → Trained classifier: trains and saves
- Baseline training → Evaluation artifacts: writes metrics
- Classifier site → Evaluation artifacts: displays results
- Guitarist → Audio input device: plays guitar
- Audio input device → Live recognition: streams audio
- Live recognition → Shared feature extraction: requests features
- Shared feature extraction → Live recognition: returns feature vector
- Live recognition → Trained classifier: loads and predicts
- Live recognition → Smoothed prediction: smooths probabilities
- Smoothed prediction → Guitarist: prints label and confidence