-
Notifications
You must be signed in to change notification settings - Fork 217
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
Wrong chroma / normalized chroma #284
Comments
Hello! Yes, there are an inconsistency between how chrome is used. Basically the "chroma" for scales are always "interval based", and that means that ALWAYS the first interval will be 1P and therefor the leftmost number of the chroma will be 1. I know this is confusing. That's a consequence of using string for chroma instead of more specific data structure. I'll try to find a solution or mitigation. |
Ah! now I understand! PS: I think it's a really cool idea to use a bitmask as datastructure for scale notes. |
Hey, I just came across this too and am wrapping my head around it. Am I understanding correctly?
In my projects I've been referring to the bitset left-aligned to the root as the "shape". Maybe it'd make sense to have four properties:
This way scale and chord info objects could carry info about both. |
Hi @micahscopes, the chroma for scales (and I guess chords as well) are based on intervals, not on the chroma/pitch-class. So for example the C-Pentatonic: |
@ohmycode I think we are getting at the same thing? I don't mean that under the hood there is a literal rotation of the chroma somewhere in the code (maybe there is, maybe not)... just that starting with the pitchclass-chroma of a given scale and rotating so that the tonic is at the left-most bit would give the same result as building off of the intervals directly. |
@micahscopes yeah, you're right, that should result in the same pattern. And that is my initial point: |
@danigb maybe adding a scaleType chroma (based on the intervals) in addition to a scale chroma (based on the actual pitch classes) would be a solution. |
scaleChroma (or pitch class chroma) vs scaleTypeChroma (or intervals chroma) maybe are good starting point... 🤔 @micahscopes If I understand correctly, |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
Hi @danigb, I stumbled across the following issue:
returns:
I think neither the chroma nor the normalized chroma is correct.
whereas
returns
011010110101
which works as expected.I tried to find the bug, but couldn't find it.
Any Idea?
The text was updated successfully, but these errors were encountered: