Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatic keyboard inversions break with {transpose} #309

Closed
gwyndaf opened this issue Sep 11, 2023 · 6 comments
Closed

Automatic keyboard inversions break with {transpose} #309

gwyndaf opened this issue Sep 11, 2023 · 6 comments

Comments

@gwyndaf
Copy link

gwyndaf commented Sep 11, 2023

Testing keyboard inversions with _031. Seems to work nicely without transposition, but:

{transpose: +2}
Let's play a [C], then invert to [C/G], then again to [C/E]

gives
Screenshot from 2023-09-11 09-59-16

As far as I can tell, it's introducing rogue notes B and G# in the two inversions. These are 2 semitones up from the bass note of the post-transpose inversion. Maybe transposition is being applied again to the bass, and (maybe related) the corresponding tone (A or F#) isn't being 'removed' from the top of the chord.

ChordPro pushed a commit that referenced this issue Sep 11, 2023
@sciurius
Copy link
Collaborator

Good catch. _32 should fix this.

@gwyndaf
Copy link
Author

gwyndaf commented Sep 11, 2023

_032 works nicely for the test sample. But, apologies, my {transpose} diagnosis might have been premature.

With a bigger sample of chords, and no {transpose}, I get
Screenshot from 2023-09-11 13-00-47

Both Cm inversions look fine, as do F/A and G/B, but F/C and G/D duplicate the bass note.

Both Bm inversions duplicate the bass note, but Bm/D is odd because the inversion itself looks wrong - I think the F# should be an octave lower.

I can't figure out any clear pattern in the extra notes, except:

  1. It's only with the inversions
  2. It's always the /bass note that gets duplicated

ChordPro pushed a commit that referenced this issue Sep 11, 2023
@sciurius
Copy link
Collaborator

Can you try _033?

@gwyndaf
Copy link
Author

gwyndaf commented Sep 11, 2023

_033 works nicely for that (larger) test sample.

I'll do further testing with some 7, maj7, dim chords etc. (assuming this functionality should work for all chord types).

@gwyndaf
Copy link
Author

gwyndaf commented Sep 11, 2023

That seems more robust, both with a few real-life examples and more extensive test sample.

One observation: [Cdim7/Bbb] is rejected as 'unknown chord'. TBH it's not something I've ever needed myself, but perhaps that's a case that might arise, especially with dim7 chords?

Screenshot from 2023-09-11 15-02-16

@sciurius
Copy link
Collaborator

ChordPro does not understand double-flat (and double-sharp, and microtones). And I have no plans to support this.

@gwyndaf gwyndaf closed this as completed Sep 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants