-
Notifications
You must be signed in to change notification settings - Fork 2
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
Implement breath and tie #1
Comments
Hello jcmk, |
Makes sense separating the functionality of the two. I'm using Melody directly as I was getting some glitches with Musician on my non-Arduino hardware and I didn't want to spend more time messing around to get it to work. Based on my understanding of the API in addition to parsing the new symbol, you'd need to add a getBreath method to Melody to tell Musician whether or not the note should be tied to the next one, as there'd be no way to detect that from Musician. |
The easiest way to implement it will be to set a breath in duration (like it's done with the Tempo value), then it will make notes shorter, and it will add rests after every note, except those who are followed by the modifying symbol "=", which is probably the best choice for meaning "tie". This will have the effect of doubling the apparent length of the melody. But, this will make Melody more consistent with his goal, which is to produce a sequence of "frequencies" or "silences", of precise durations and loudness. Is breath should be in an absolute value (in milliseconds) or relative of the duration of the note (in %)? |
My trip in the subway gave me time to think... , in some way, breath and tie are the same boolean concept about having or not rest at the end of each note. So, it should be kept completety as a symbol, without any method like (setBreath) or whatsoever. |
I am not a musician, and in the song I was using there were only "ties" to the same note, which as you say is in effect just extending the note as far as my understanding goes. My solution was to incorporate a breath using a delay, and then just extend any of the notes that had ties by the appropriate ratio. That being said, I believe in music you can "tie" to a different note, where it shifts but in the same breath. For that to work you would need a symbol to specify to have no breath between the notes. |
My solution will probably converge to something like this :
|
It works! Here's how to use it: "c!" will play a C of 15/16 and a rest of 1/16 ; By default, the breath is 1/16 of the duration of the note; |
Please implement breath into Melody instead of requiring users to manually implement it.
Please implement a new notation for tying notes together without breath.
ie. "C D E F" is C, breath, D, breath, E, breath, F.
but "C D E^F" is C, breath, D, breath, E, (no breath), F).
The text was updated successfully, but these errors were encountered: