![]() |
![]() ![]() ![]() ![]() ![]()
|
next newest topic | next oldest topic |
Author | Topic: Pen Eraser and Parameter Assignment |
tuscland Member |
![]() ![]() ![]() Hi ! Kurt, I think I already discussed this topic with you, but I'd like to go further in that subject. This afternoon I showed Kyma to a friend. Needless to say that he was very impressed, and the Pen demonstration was the best part! I have built a simple synthesizer with a square wave oscillator which frequency was driven by the !KeyPitch parameter. There was also a low pass filter which was controller by a !CutOff parameter. The !CutOff was shown in the CVS as a rotary pot. I've shown him it was easy to use a MIDI keyboard and play the instrument and also control the !CutOff with a fader on the keyboard by sending MIDI control changes. Then I showed him that the same MIDI note messages (actually !KeyPitch) could be sent with the Eraser side of the Pen, on the X axis. If I understand well, there is an implicit default assignement of Pen Eraser X to !KeyPitch, Pen Eraser Y to !KeyTimbre and Pen Eraser Z to !KeyVelocity. The tricky part is here: I wanted to show my friend that I could control at the same time the !CutOff parameter with the Z axis of the Eraser simply by changing the assignements in the Pen Window. What happened when I tried to do this was that those implicit bindings were discarded and it was not possible to have both !KeyPitch on X and !CutOff on Z at the same time. My suggestion is this: I think it would be clever to reveal those implicit bindings (!KeyPitch, !KeyVelocity and !KeyTimbre) in the Pen window if they are used in the Sound, in order to reassign them at a later moment. For example if the parameter !KeyPitch was used in the Sound, then it would appear just like the other parameters in the Pen window's list of parameters. This way, it would be possible to assign !KeyPitch on Pen Eraser X *and* !CutOff (or whatever parameter used in the Sound) on another axis of the Pen. I think this is important because it would be easy to build a sound that is compatible with a MIDI keyboard and a Tablet. I would not have to change the inner design of my sound. This is what I had to do so that I could complete the demonstration : I changed all the occurences of !CutOff to !KeyTimbre so that the Eraser side of the Pen could do what I tried to achieve. Do you think it would be possible to change the current behaviour in order to do this? Thanks for your enlightenment!
IP: Logged |
SSC Administrator |
![]() ![]() ![]() Are you saying that you would like to mix Keyboard events with continuous controllers on the same end of the pen? IP: Logged |
tuscland Member |
![]() ![]() ![]() quote: Yes, I think so. IP: Logged |
SSC Administrator |
![]() ![]() ![]() How about the following: * one end of the pen always sends keyboard events (as it does now) This would mean that playing one end of the pen will give you both keyboard and eraser events and the other end would give you the pen events. For your example, you would map your control to !EraserY. This would mean that when you play that end of the pen, you would control !KeyDown, !KeyPitch, !KeyVelocity, !KeyTimbre and !EraserY. IP: Logged |
tuscland Member |
![]() ![]() ![]() Honestly, I find it a bit complicated because it seems odd that a side of the pen would send 2 events for one action. My suggestion was simply to have the keyboard events treated just like the other kind of events. However, it seems like you need to have one side of the pen dedicated to Keyboard events, I guess for retrograde compatibility. As long as no modification of the Sound's parameters is implied (which is my primary wish), then yes I agree on that solution. So there's just one last thing I'd like to know: in your new solution, is it needed to change the Sound and put !EraserY (for example) in the Sound's definition ? Or there is simply a mean that allows to map !EraserY to !CutOff? If the answer is yes, that means that the Pen will generate keyboards events, and also !EraserY which is mapped to !CutOff, and that would be just great. [This message has been edited by tuscland (edited 22 December 2005).] IP: Logged |
SSC Administrator |
![]() ![]() ![]() There is a complication with key events that is not present with continuous controllers. Each continuous controller is independent of all others. But the four components of a MIDI event-- pitch, velocity, trigger & timbre -- are all sent together as one event in Kyma. If each part of the key event is mappable, it is possible to have an under-defined key event. For example, if one were to map !KeyPitch to !EraserY and neglect to map !KeyDown, !KeyVelocity and !KeyTimbre, then it is unclear how those values should be set. Should they retain their previous values? Should they be zero? Either one of these policies could result in some unexpected behavior in Sounds that use the the other parts of the key events. Otherwise, we could add four additional hot values from the pen: !EraserDown, !EraserX (Y, and Z) that could be mapped by default to KeyDown, KeyPitch, KeyVelocity, KeyTimbre but which could be remapped to any continous controller you like. So you could flip the pen upsidedown to get addtional controllers. However, there is an additional complication--!PenDown and !EraserDown would always be the opposite of one another. So it might be better not to add !EraserDown. Sorry for the long post, but we wanted to explain why the Key Events are treated differently from the continuous controllers. IP: Logged |
tuscland Member |
![]() ![]() ![]() Thanks a lot for the precise explanation. Now the issue is much clearer to me. In the meantime, why not just allow additional mappings on the Tilt angles of the Eraser side Pen, while retaining keyboard messages? I wondered if other users had opinions on that issue? Camille IP: Logged |
SSC Administrator |
![]() ![]() ![]() I am pretty sure that the tilt functions work on both ends of the pen. Were you thinking that we should have a separate pen and eraser tilt? IP: Logged |
tuscland Member |
![]() ![]() ![]() I just realized that if I assign Pen Tilt X (on the Pen side) to !CutOff while playing with the Eraser end, it works ! What a shame, I should have tried earlier, though it's a bit confusing :-) (Taking about this, I get strange results : the !CutOff parameter is defined in the VCS between 0 and 10000 Hz. With Pen Tilt X, I can get negative values as well as values over 10000 ! Any clues?) To answer your question, and because of my previous experimentations, no I don't think it is worth differentiating Pen Tilt and Eraser Tilt.
[This message has been edited by tuscland (edited 23 December 2005).] IP: Logged |
All times are CT (US) | next newest topic | next oldest topic |
![]() ![]() |
This forum is provided solely for the support and edification of the customers of Symbolic Sound Corporation.