Skip to content

xiajohn/guitarTranscribe

Repository files navigation

Real-Time Guitar Transcription

Converts guitar audio to tabs in real-time using Basic Pitch + tuttut.

Architecture

  • Audio → MIDI: Basic Pitch (Spotify's audio-to-MIDI model)
  • MIDI → Guitar Tabs: tuttut (HMM + Viterbi algorithm for optimal fingering)

Files

  • guitar_transcribe_tuttut.py - Main real-time transcription script
  • RUN_TUTTUT.sh - Launch script
  • requirements_tuttut.txt - Python dependencies
  • tuttut/ - tuttut library (cloned submodule)

Setup

# Install Python 3.11
brew install [email protected]

# Create virtual environment
python3.11 -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements_tuttut.txt
pip install --no-deps tuttut
pip install mido networkx matplotlib

Usage

./RUN_TUTTUT.sh

Play your guitar - notes will accumulate in a single tab display.

How It Works

  1. Captures audio from microphone
  2. Detects phrases (silence-separated)
  3. Converts audio → MIDI using Basic Pitch
  4. Accumulates MIDI notes
  5. Uses tuttut's HMM+Viterbi to find optimal fingering positions
  6. Displays single accumulating guitar tab

Notes

  • tuttut chooses string positions based on playability (minimal hand movement)
  • May not match exact strings you played, but will be a playable version
  • Tab updates after each phrase (detected by silence)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published