-
Notifications
You must be signed in to change notification settings - Fork 26
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
[Feature Request] Velocity support #10
Comments
Thanks for the feedback. As it happens, I had a very similar idea myself. What unit are you using for velocity? When I implemented the feature, I imagined that it would be centred around 1 i.e. 1/2 implies a soft note and 3/2 a stressed not. |
A floating point between 0 and 1 would be more general I guess. Currently I am trying to use leipzig to play midi instruments so my units are between 0-127. I am trying to converge my setup into Clojure, from Common Music/Open Music (for classical notation, composing for physical instruments and human players) + Clojure.(as a more sane alternative to directly using SuperCollider). Oh! I just got what you meant by "centered around 1". It is an interesting idea. However basically everything that can accept a note event expects a velocity from nothing to full-force. Also assuming a "normal" velocity as 1.0 would be useless in many situations. For example if you write a Debussy inspired delicate piano prelude your normal would be below 1.0. So there are no advantages to a normal velocity. But I might be wrong. Thanks for the quick response. |
I'm interested to hear how you use the velocity in the instrument As an aside, it's interesting to use On 29 February 2016 at 21:47, kureta notifications@github.com wrote:
|
Yes, velocity is an very good idea. Chris, as I susggested on Gitter, would it be possible to implement a Thanks for all the good stuff you are doing already with this library. Best, Dago On Mon, Feb 29, 2016 at 10:52 PM, Chris Ford notifications@github.com
|
I'll take a look at Symbolic Composer. Thanks for the tip. The negative numbers coding rests is a really interesting idea. I see your point about rhythms - so far I've used atonal rhythms exclusively with percussion, so I've been able to encode a rest by extending the previous note. I can see that's not a general solution. By the way, the way Leipzig is designed, you should be able to experiment with your own functions and mix them in at will. So long as a function outputs notes in the right format, then it should just work. So we could (experimentally) create Having said that, I'll take a look at implementing it. I think I'd want to try it out myself a couple of times before documenting/announcing that behaviour, just because punning on negatives like that could some people. Thanks again. |
Super, Chris. thanks for the reply ! Cheers On Tue, Mar 1, 2016 at 9:57 AM, Chris Ford notifications@github.com wrote:
|
Since the synths have a maximum amplitude of 1.0 I send a velocity between 0.0-1.0 directly to my synths as amp. Inside the synth amp is probably transformed into an exponential though. As I said I also use 0-127 for playing midi. About rests: I have just started playing around with leipzig and didn't have time to look at it during the last couple of days. I just realized that (phrase) function accepts duration, pitches, and velocities but not time. I usually represent music using time and duration for a single note. That way I can play more than one note at the same time, I can play a second note without stopping the first note, and I don't need a different symbol for a rest. For example I just write [time:0, pitch: 60, duration: 1, velocity: 90], [time: 3, pitch 63, duration: 1, velocity: 90] so there is a 2-unit rest between these two notes. (I did this when I used python for this stuff) |
@kureta, Leipzig also has both At the moment, Leipzig represents rests as notes with a This is a bit annoying, and also makes it impossible to represent rests in rhythms, which is why I haven't been able to do something nice along the lines of @Bohrbug's suggestion. I'm considering a special |
I've now implemented ignoring |
Velocity is also an important part of music. It would be great if notes were represented like this:
The text was updated successfully, but these errors were encountered: