How lindarzhang/seefretboard works
seeFretboard is a Python library for visualizing guitar fretboards and producing video and audio-visual teaching or research materials. Users configure a fretboard, select theory content or note positions, and render the result; they can also generate animated sequences and combine video with audio. The README documents prediction-versus-ground-truth displays and standalone or website integration. Source excerpts show the central rendering and video-manager responsibilities, but not every API call, so uncertain internal handoffs are omitted.
Main entry points: SeeFretboard.py Fretboard API · VideoManager.py Media rendering · TabSequence.py Tab sequence · Functions.py Theory utilities
Components 19
Music theory
- Pitch collection
seeFretboard/PitchCollection.py - Theory utilities
seeFretboard/Utilities/Functions.py - Note positions
seeFretboard/NotePosition.py - Theory data
seeFretboard/Utilities/Constants.py
Fretboard display
- Fretboard API
seeFretboard/SeeFretboard.py - Style and tuning
seeFretboard/Designs/FretboardStyle.py - Note design
seeFretboard/Designs/CirlceNote.py - Fretboard figure
seeFretboard/Designs/FretboardFigure.py
Video and audio
- Tab sequence
seeFretboard/Videos/TabSequence.py - Frame timing
seeFretboard/Videos/Frame.py - Video notes
seeFretboard/Videos/VideoNote.py - Video settings
seeFretboard/Videos/Video.py - Audio settings
seeFretboard/Videos/Audio.py - Image output
seeFretboard/Videos/Images.py - Media rendering
seeFretboard/Videos/VideoManager.py
Output and research
- Prediction comparison
seeFretboard - Web and standalone
seeFretboard - Generated outputs
seeFretboard/Outputs
Other components
- Library user
Connections 23
- Library user → Fretboard API: configures and displays
README.md - Fretboard API → Pitch collection: uses pitches
seeFretboard/SeeFretboard.py - Fretboard API → Style and tuning: uses styling
seeFretboard/SeeFretboard.py - Fretboard API → Fretboard figure: draws fretboard
seeFretboard/SeeFretboard.py - Fretboard API → Note design: draws notes
seeFretboard/SeeFretboard.py - Fretboard API → Note positions: uses positions
seeFretboard/SeeFretboard.py - Fretboard API → Theory utilities: uses theory helpers
seeFretboard/SeeFretboard.py - Theory utilities → Theory data: uses theory data
seeFretboard/Utilities/Functions.py - Fretboard figure → Theory data: uses constants
seeFretboard/Designs/FretboardFigure.py - Style and tuning → Note design: configures notes
seeFretboard/Designs/FretboardStyle.py - Tab sequence → Frame timing: extends timing
seeFretboard/Videos/TabSequence.py - Tab sequence → Video notes: uses note model
seeFretboard/Videos/TabSequence.py - Tab sequence → Theory utilities: converts MIDI
seeFretboard/Videos/TabSequence.py - Library user → Tab sequence: creates animations
README.md - Library user → Audio settings: provides audio
README.md - Library user → Prediction comparison: compares annotations
README.md - Library user → Web and standalone: integrates library
README.md - Library user → Media rendering: renders media
README.md - Media rendering → Fretboard API: updates fretboard
seeFretboard/Videos/VideoManager.py - Media rendering → Video settings: reads video settings
seeFretboard/Videos/VideoManager.py - Media rendering → Image output: writes frame images
seeFretboard/Videos/VideoManager.py - Media rendering → Audio settings: combines audio
seeFretboard/Videos/VideoManager.py - Media rendering → Generated outputs: writes media