isaaccormack / Tabber

Automatically tab guitar licks played into your computer's microphone
https://tabber.ca
1 stars 1 forks source link

Modify "tuning" attribute in database to correspond to a valid tuning as interpreted by the tabbing algorithm #58

Open jalfje opened 4 years ago

jalfje commented 4 years ago

At present, the tabbing algorithm can take tuning into account; however, it doesn't actually use the tuning value stored in the database. This should be fixed. To do so, the tuning attribute could be stored as a 6-element array (more difficult, and would wind up require re-translating into a standard tuning on the frontend), or as a string. The string could either be a preset value (e.g. "Standard", "Drop D", "Open G", which would require translating before tabbing, but this translation would be well-defined), a sequence of MIDI notes (e.g. "64 59 55 50 45 40", which would require translating before being displayed on the frontend), or a sequence of character notes (e.g. "E B G D A E", which would require translating before tabbing, and this translation would have to be estimated based differential from standard tuning, i.e. assuming that no string is tuned more than 5 half-steps away).

isaaccormack commented 4 years ago

Nice! Glad the backend can take into account tuning like that. I think the assumption that no string is tuned more than 5 half-steps away is totally reasonable.

I can have a go at implementing this when feature/refactor-tabbing is good to go