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
Transpose by semitone? #5
Comments
I've added support to transpose semitones. Now when you call ...
abc-transpose.up(abcfile, 1) It will transpose 1 semitone. To transpose 1 tone, you must call |
Awesome. Thanks. |
Actually, I think this has introduced a bug. For the abc:
if I transpose this
Notice the c2 notes are now c notes. I think you're trying to add the sharp I'm not sure how this effects the key, but that also might be wrong. If I manually fix the sharp symbols, then I get:
However, that doesn't sound right. |
Hmm, I got confused and changed the sharp symbol after a note (when the correct is before). I'll fix it. |
A# isn't really a key that you would naturally write in as it would require the key signature to have double sharps. What you would really expect is for the output to be in Bb. It should look like this:
However, there are a few situations in which there is a choice of which key the output could reasonably be notated in. In particular for the keys of Cb/B, Gb/F#, and Db/C#. An interface like this might work nicely: abc-transpose.to_key(abcfile, "Bb") |
Is there anyway to transpose by just a semitone and not an entire step?
Currently, calling
up(1)
on a C gives you a D and not a C#.I tried calling
up(0.5)
but that seems to round up toup(1)
.The text was updated successfully, but these errors were encountered: