Gesture synthesizer for electronic sound device
First Claim
1. A gesture synthesizer (GS) for use with an electronic sound synthesizer (ESS), which electronic music synthesizer provides at least a tone signal responsive to an ESS user-input device that permits user selection of discrete pitches, said gesture synthesizer coupleable to at least a first GS user-input control device, said gesture synthesizer comprising:
- first detection means, coupled to said first GS user-input control device, for generating control data representing user-operation of said first GS user-input control device;
at least a first gesture synthesis means, coupled to said first detection means, for synthesizing a desired transfer function simulating muscle action, said transfer function represented by at least one model selected from a group consisting of (i) a model implementing Hill'"'"'s equation, (ii) a model representing cyclic opposing effects of two force sources representing cyclic opposition action of a muscular system, (iii) a model representing muscular stimulus response to internal electrical impulses, (iv) a model representing visco-elastic properties of muscle pairs and elasticity of simulated loads, and (v) a model altering virtual trajectory of gesture created with said gesture synthesizer ;
said first gesture synthesis means outputting synthesized control data responsive to said control data such that said tone signal provided by said electronic sound synthesizer is responsive to and modifiable by said first GS user-input control device.
0 Assignments
0 Petitions
Accused Products
Abstract
A MIDI-compatible gesture synthesizer is provided for use with a conventional music synthesizer to create musically realistically sounding gestures. The gesture synthesizer is responsive to one or more user controllable input signals, and includes several transfer function models that may be user-selected. One transfer function models properties of muscles using Hill'"'"'s force-velocity equation to describe the non-linearity of muscle activation. A second transfer function models the cyclic oscillation produced by opposing effects of two force sources representing the cyclic oppositional action of muscle systems. A third transfer function emulates the response of muscles to internal electrical impulses. A fourth transfer function provides a model representing and altering virtual trajectory of gestures. A fifth transfer function models visco-elastic properties of muscle response to simulated loads. The gesture synthesizer outputs MIDI-compatible continuous pitch data, tone volume and tone timbre information. The continuous pitch data is combined with discrete pitch data provided by the discrete pitch generator within the conventional synthesizer, and the combined signal is input to a tone generator, along with the tone volume and tone timbre information. The tone generator outputs tones that are user-controllable in real time during performance of a musical gesture.
-
Citations
62 Claims
-
1. A gesture synthesizer (GS) for use with an electronic sound synthesizer (ESS), which electronic music synthesizer provides at least a tone signal responsive to an ESS user-input device that permits user selection of discrete pitches, said gesture synthesizer coupleable to at least a first GS user-input control device, said gesture synthesizer comprising:
-
first detection means, coupled to said first GS user-input control device, for generating control data representing user-operation of said first GS user-input control device;
at least a first gesture synthesis means, coupled to said first detection means, for synthesizing a desired transfer function simulating muscle action, said transfer function represented by at least one model selected from a group consisting of (i) a model implementing Hill'"'"'s equation, (ii) a model representing cyclic opposing effects of two force sources representing cyclic opposition action of a muscular system, (iii) a model representing muscular stimulus response to internal electrical impulses, (iv) a model representing visco-elastic properties of muscle pairs and elasticity of simulated loads, and (v) a model altering virtual trajectory of gesture created with said gesture synthesizer ;
said first gesture synthesis means outputting synthesized control data responsive to said control data such that said tone signal provided by said electronic sound synthesizer is responsive to and modifiable by said first GS user-input control device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 36, 37, 38, 39, 58, 61)
said detection means detects forward and reverse direction deflection of said first GS user-input control device and outputs logic data in accordance with detected said direction;
wherein said first gesture synthesis means includes;
means for generating clock pulses whose individual amplitudes are modulatable according to an amplitude modulation defining an amplitude envelope, said amplitude envelope having a forward portion and a reverse portion wherein at least one of said portions is varied according to a parameter selected a group consisting of (i) a forward direction of a GS user-input control device, (ii) modulation data from a user-selected modulation source whose modulation data has a direction proportional to said logic data, (iii) a combination of control data and modulation data, (iv) said synthesized control data; and
at least one accumulator selected from a group consisting of (i) a forward accumulator for controllably combining amplitudes of said clock pulses responsive to digital numbers representing said forward portion of said amplitude envelope, and (ii) a reverse accumulator for controllably combining amplitudes of said clock pulses responsive to digital numbers representing said reverse portion of said amplitude envelope.
-
-
4. The gesture synthesizer of claim 1, wherein said gesture synthesizer further includes;
-
at least a second synthesis means coupled to said first detection means, and;
an interpolation means that controllably combines synthesized control data from said first and second synthesis means, said interpolation means including at least one means selected from the group consisting of (i) a switching means that alternately switches between synthesized control data from said first and second synthesis means, (ii) a crossfade means that crossfades between synthesized control data from said first and second synthesis means.
-
-
5. The gesture synthesizer of claim 1, wherein said first detection means detects forward direction and reverse direction deflection of said first GS user-input control device, and outputs first and second logic data corresponding to detected said forward and reverse direction;
- and
said first gesture synthesis means further including;
switching means for bifurcating said control data so as to provide forward control data and reverse control data; and
persistently available conversion means for converting at least one of said forward control data and said reverse control data according to a conversion characteristic selected from a group consisting of (i) a conversion characteristic generated from a muscle emulation model, (ii) a conversion characteristic sampled from a musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic emulating sampled data, and (v) a conversion characteristic emulating musical gestures.
- and
-
6. The gesture synthesizer of claim 1, wherein:
-
said first detection means detects forward direction and reverse direction deflection of said first GS user-input control device, and outputs first and second logic data corresponding to detected said forward and reverse direction; and
said first gesture synthesis means further includes;
a source of modulation data responsive at least in part to a direction of said first GS user-input control device, said direction being determined by said first and second logic data.
-
-
7. The gesture synthesizer of claim 6, wherein said modulation data includes data selected from a group consisting of (i) a control data signal, (ii) peak amplitude of a control data signal, (iii) said synthesized control data, (iv) substantially constant said modulation data, (v) said modulation data includes a first derivative with respect to time of said positional control data, and (vi) said modulation data includes a second derivative with respect to time of said positional control data.
-
8. The gesture synthesizer of claim 1, wherein said gesture synthesizer further includes:
-
a second GS user-input control device;
second detection means, coupled to said second GS user-input control device, for generating control data representing user-operation of said second GS user-input control device;
said second detection means detecting forward and reverse direction of said second GS user-input control device, and outputting first and second logic data corresponding to detected said forward and reverse direction; and
a source of modulation data, responsive at least in part to said direction of said second GS user-input control device, said direction being determined by said first and second logic data.
-
-
9. The gesture synthesizer of claim 1, wherein:
-
said first detection means detects forward and reverse direction deflection of said first GS user-input control device, and outputs first and second logic data corresponding to detected said forward and reverse direction;
said first gesture synthesis means further includes;
a source of modulation data, responsive at least in part to said direction of said first GS user-input control device, said direction being determined by said first and second logic data;
switching means for bifurcating said control data so as to provide forward control data and reverse control data; and
means for scaling amplitude of said forward control data proportionally to said modulation data; and
means for scaling amplitude of said reverse control data proportionally to said modulation data.
-
-
10. The gesture synthesizer of claim 1, wherein said first detection means detects forward and reverse direction of said first GS user-input control device, and outputs first and second logic data corresponding to detected said forward and reverse direction;
-
wherein said first gesture synthesis means further includes;
a source of modulation data responsive at least in part to a direction of said first GS user-input control device, said direction being determined by said first and second logic data;
a first and second source of control data signals, responsive at least in part to said first GS user-input control device;
means for delaying said first control data signal by an amount of delay determined at least in part by data from said source of modulation data; and
means for controllably combining at least said second control data signal with delayed said first control data.
-
-
11. The gesture synthesizer of claim 10, wherein said first gesture synthesis means further includes persistently available conversion means for converting said synthesized control data according to a conversion characteristic selected from a group consisting of (i) a conversion characteristic generated from a muscle emulation model, (ii) a conversion characteristic sampled from a musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic emulating sampled data, and (v) a conversion characteristic emulating musical gestures.
-
12. The gesture synthesizer of claim 1, wherein said first detection means detects forward direction and reverse direction deflection of said first GS user-input control device, and outputs first and second logic data corresponding to detected said forward and reverse direction;
- and
said first gesture synthesis means further includes a source of modulation data responsive at least in part to detected direction of said first GS user-input control device, said direction being determined by said first and second logic data; and
means for combining and using said modulation data to vary at least one parameter selected from a group consisting of (i) peak amplitude of a time-delayed control data signal, (ii) delay time of a time-delayed control data, (iii) salience-curvature applied to a control data signal, (iv) width of a shaping window applied to control data signal, (v) height of a shaping window applied to control data signal, (vi) start point of a shaping window applied to control data signal, and (vii) stop point of a shaping window applied to control data signal.
- and
-
13. The gesture synthesizer of claim 1, wherein said first detection means detects forward and reverse direction of said first GS user-input control device;
- wherein;
said first gesture synthesis means includes bifurcation means for separately directing, according to detected said forward and reverse direction of said first GS user-input control device, data selected from a group consisting of (i) control data, and (ii) synthesized control data;
said gesture synthesizer further including bifurcated gesture synthesis means for generating forward synthesized control data by activating a first half of simulated said muscle action responsive to said forward control data, and for generating reverse synthesized control data by activating a second half of simulated said muscle action responsive to said reverse control data.
- wherein;
-
14. The gesture synthesizer of claim 13, wherein:
-
said bifurcation means includes at least one comparison means selected from the group consisting of (i) threshold detection means for comparing control data values to a lower threshold and outputting a first logic signal when said lower threshold is traversed, and for comparing control data values to an upper threshold and outputting a second logic signal when said upper threshold is traversed, and (ii) means for comparing subsequent values of said control data, and outputting first and second logic data in accordance with increasing and decreasing values of said control data, said GS further including;
bipolar switching means for generating alternating switching logic data responsive to logic signal from said threshold detection means;
wherein said bifurcated gesture synthesis means includes at least one switching means selected from a group consisting of (i) a signal switch for bifurcating said control data in response to said alternating switching logic data from said bipolar switching means, and (ii) a signal gate for selecting forward or reverse direction of said synthesized control data in response to said alternating switching logic data.
-
-
15. The gesture synthesizer of claim 1413, wherein said bifurcated gesture synthesis means further includes at least one gesture synthesis module selected from a group consisting of (i) a salience module, (ii) a time oscillator module, (iii) a flex filter module, (iv) a waveshaper module, (v) a bifurcated scale module, and (vi) a delay module.
-
16. The gesture synthesizer of claim 1, wherein:
-
said detection means detects forward and reverse direction deflection of said first GS user-input control device and outputs logic data in accordance with detected said direction;
said first gesture synthesis means includes;
means for generating clock pulses, said clock pulses having an amplitude magnitude that varies according to a filter modulation function having a modulation function selected from a group consisting of (i) said modulation function has salience-curvature, (ii) said modulation function is varied in accordance with control data, (iii) said modulation function is varied in accordance with modulation data responsive at least in part to a direction of said first GS user-input control device, said direction being determined by said first and second logic data, (iv) said modulation function is varied responsive to a combination of control data and modulation data, and (v) said modulation function is varied responsive to said synthesized control data; and
a unit that provides forward synthesized control data functionally proportional to summed amplitude of each said clock pulse.
-
-
17. The gesture synthesizer of claim 1, wherein:
-
said detection means detects forward and reverse direction of said first GS user-input control device and outputs logic data in accordance with detected said direction;
said first gesture synthesis means includes;
means for generating clock pulses, said clock pulses having an amplitude magnitude that varies with at least one characteristic selected from a group consisting of (i) said amplitude is substantially constant, (ii) said amplitude is varied responsive to control data, (iii) said amplitude is varied responsive to modulation data, (iv) said amplitude is varied responsive to said logic data, (v) said amplitude corresponds to at least a partial summation of at least two successive said clock pulses, and (vi) said amplitude is varied responsive to a combination of control data and modulation data;
at least one accumulator selected from a group consisting of (i) a forward accumulator that sums said clock pulses in response to said logic data and provides forward synthesized control data responsive to a running sum of said clock pulses, and (ii) a reverse accumulator that subtracts said clock pulses in response to said logic data and provides reverse synthesized control data responsive to a running subtraction of said clock pulses.
-
-
18. The gesture synthesizer of claim 17, wherein said first gesture synthesis means further includes persistently available conversion means for converting said synthesized control data according to a conversion characteristic selected from a group consisting of (i) a muscle emulation model generated conversion characteristic, (ii) a conversion characteristic sampled from a musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic that emulates sampled data, and (v) a conversion characteristic that emulates musical gestures.
-
19. The gesture synthesizer of claim 18, wherein said first gesture synthesis means further includes:
at least one scaling means selected from a group consisting of (i) means for scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) means for scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
20. The gesture synthesizer of claim 17, wherein said first gesture synthesis means further includes at least one threshold detector selected from a group consisting of (i) an upper threshold detector, coupled to an output of said accumulator, that deactivates said summation when said upper threshold is traversed, and (ii) a lower threshold detector, coupled to an output of said accumulator, that deactivates said subtraction when said lower threshold is traversed.
-
21. The gesture synthesizer of claim 17, wherein said first gesture synthesis means further includes:
at least one scaling means selected from a group consisting of (i) means for scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) means for scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
22. The gesture synthesizer of claim 17, wherein said first gesture synthesis means further includes at least one module selected from the group consisting of (i) a salience module, (ii) a time oscillator module, (iii) a flex filter module, (iv) a waveshaper module, (v) a scale module, and (vi) a delay module.
-
23. The gesture synthesizer of claim 221, wherein said gesture synthesizer is implemented in a manner selected from a group consisting of (i) said gesture synthesizer is included as part of a stand-alone musical instrument, (ii) said gesture synthesizer is a stand-alone electromechanical device, (iii) said gesture synthesizer is implemented on a machine-readable memory device for use with a host system, and (iv) said gesture synthesizer is implemented on a magnetic storage medium for use in a host system.
-
24. The gesture synthesizer of claim 1, wherein:
-
said detection means detects forward and reverse direction deflection of said first GS user-input control device and outputs logic data in accordance with detected said direction;
wherein said first gesture synthesis means includes;
means for generating clock pulses;
envelope generation means for generating a time envelope representing a period of said clock pulses, wherein said time envelope includes at least one of an attack portion and a release portion; envelope generation means for generating, in response to data selected from a group consisting of (i) control data and (ii) modulation data, a time envelope representing a period of said clock pulses, wherein said time envelope includes at least one of an attack portion and a release portion;
period modulation means for modifying said period responsive to a signal selected from a group consisting of (i) said time envelope, (ii) said attack portion of said time envelope, (iii) said release portion of said time envelope, and (iv) modulation data from a user-selected modulation source;
at least one counter selected from a group consisting of (i) a forward pulse counter that increments said clock pulses and provides forward synthesized control data responsive to a running count of said clock pulses, and (ii) a reverse pulse counter that decrements said clock pulses and provides reverse synthesized control data responsive to a running count of said clock pulses.
-
-
25. The gesture synthesizer of claim 24, wherein said first gesture synthesis means further includes at least one amplitude modulation means for generating an amplitude envelope comprising a series of digital numbers responsive to pulse data selected from the group consisting of (i) forward pulse data and (ii) reverse pulse data, wherein said amplitude envelope has a least one characteristic selected from the group consisting of (i) said amplitude envelope has salience curvature, (ii) said amplitude envelope is varied according to control data (iii) said amplitude envelope is varied according to modulation data, and (iv) said amplitude envelope is varied according to said synthesized control data.
-
26. The gesture synthesizer of claim 24, wherein said first gesture synthesis means further includes persistently available conversion means for converting said synthesized control data according to a conversion characteristic selected from the group consisting of (i) a muscle emulation model generated conversion characteristic, (ii) a conversion characteristic sampled from an actual musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic that emulates sampled data, and (v) a conversion characteristic that emulates musical gestures.
-
27. The gesture synthesizer of claim 24, wherein said first gesture synthesis means further includes at least one threshold detector selected from a group consisting of (i) an upper threshold detector, coupled to an output of said accumulator pulse counter, that deactivates said incrementation when said upper threshold is traversed, and (ii) a lower threshold detector, coupled to an output of said detector pulse counter, that deactivates said decrementation when said lower threshold is traversed.
-
28. The gesture synthesizer of claim 24 wherein said first gesture synthesis means further includes:
at least one scaling means selected from a group consisting of (i) means for scaling amplitude of said forward pulse data proportional to modulation data, and (ii) means for scaling amplitude of said reverse pulse data proportional to modulation data.
-
29. The gesture synthesizer of claim 24 wherein said first gesture synthesis means further includes at least one means for combining and using modulation data to vary at least one parameter selected from a group consisting of (i) peak amplitude of time-delayed said synthesized control data, (ii) delay time of a time-delayed said synthesized control data, (iii) salience-curvature applied to said synthesized control data, (iv) width of a shaping window applied to said synthesized control data, (v) height of a shaping window applied to said synthesized control data, (vi) start point of a shaping window applied to said synthesized control data, and (vii) stop point of a shaping window applied to said synthesized control data.
-
30. The method of claim 29, providing gesture synthesis as in claim 2933, wherein said method is embodied in a medium selected from the group consisting of (i) said method is part of a stand-alone musical instrument, (ii) said method is implemented in a stand-alone electromechanical device, (iii) said method is stored on a machine-readable memory device for use with a host system, and (iv) said method is stored on a magnetic storage medium for use in a host system.
-
31. The gesture synthesizer of claim 1, wherein said synthesis means includes at least a first and second threshold detection means, for detecting at least one of the group consisting of (i) motion of control data (ii) velocity of control data (iii) acceleration of control data, (iv) motion of synthesized control data (v) velocity of synthesized control data (vi) acceleration of control data and (vii) time between said first and second detection, wherein said first and second threshold detection means output logic data in accordance with said first and second detection and,
at least a first and second clock pulse generation means respectively triggered by logic data from said first and second threshold detection means. -
32. The gesture synthesizer of claim 1 wherein said synthesis means further includes:
-
differentiation means for determining the first derivative with respect to time of said control data;
zero detection means for detecting when said first derivative with respect to time is zero and outputting logic data upon said zero detection;
wherein said logic data deactivates said gesture synthesis means.
-
-
36. The method of claim 33, providing gesture synthesis as in claim 2933wherein step (a) includes:
-
detecting forward direction and reverse direction of said control data;
outputting first and second logic data corresponding to detected said forward and reverse direction;
bifurcating forward direction and reverse direction of said control data responsive to said first and second logic data; and
converting at least one of forward direction and reverse direction control data according to a conversion characteristic selected from the group consisting of (i) a muscle emulation model generated conversion characteristic, (ii) a conversion characteristic sampled from an actual musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic that emulates sampled data, and (v) a conversion characteristic that emulates musical gestures.
-
-
37. The method of claim 33, providing gesture synthesis as in claim 2933wherein step (a) includes:
-
detecting forward direction and reverse direction of said control data;
outputting first and second logic data corresponding to detected said forward and reverse direction; and
modulating said control data according to modulation data responsive at least in part to a direction of said control data, said direction being determined by said first and second logic data.
-
-
38. The method of claim 37, wherein said modulation data includes data selected from a group consisting of (i) a control data signal, (ii) peak amplitude of a control data signal, (iii) said synthesized control data, (iv) substantially constant said modulation data, (v) said modulation data includes a first derivative with respect to time of said positional control data, and (vi) said modulation data includes a second derivative with it respect to time of said positional control data.
-
39. The method of claim 33, providing gesture synthesis as in claim 3233, wherein step (a) includes:
-
detecting forward and reverse direction of additional control data;
outputting logic data in according to detected said detection;
bifurcating said forward and reverse direction of said additional control data responsive to said first and second logic data; and
modulating said synthesized control data responsive at least in part to said forward and reverse direction of said additional control data.
-
-
58. The gesture synthesizer of claim 1, wherein:
-
said detection means detects forward and reverse direction of said first GS user-input control device and outputs logic data in accordance with detected said direction;
wherein said synthesis means includes;
means for counting time from detected said forward and reverse direction, and modulation means for modifying said control data with respect to time.
-
-
61. The gesture synthesizer of claim 1 wherein said gesture synthesis means includes at least a first gesture synthesis chain containing a first delay module, and a second gesture synthesis chain containing a second delay module, wherein:
-
33. A method for providing gesture synthesis for an electronic sound device, comprising the steps of:
-
(a) synthesizing in response to control data, a first transfer function based upon a muscle emulation model, which includes at least one module selected from the group consisting of (i) a model implementing Hill'"'"'s equation, (ii) a module modeling model representing cyclic opposing effects of two force sources representing cyclic opposition action of a muscular system, (iii) a module model emulating muscular action by representing muscular stimulus response to internal electrical impulses, and (iv) a module modelling model representing visco-elastic properties of muscle pairs and elasticity of simulated loads, and generating that generates synthesized control data responsive to said control data; and
(b) inputting said synthesized control data to said sound device;
wherein said sound device outputs a sound signal including simulated gestures. - View Dependent Claims (34, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 59, 60, 62)
(a) synthesizing in response to control data, a second transfer function based upon a muscle emulation model, and generating synthesized control data responsive to said control data;
(b) controllably combining synthesized control data from said first and second transfer functions by at least one method selected from the group consisting of (i) alternately switching between synthesized control data generated by said first and second transfer functions, and (ii) continuously crossfading between synthesized control data generated by said first and second transfer functions.
-
-
40. The method of claim 33, providing gesture synthesis as in claim 33, wherein step (a) includes:
-
detecting forward and reverse direction of said control data;
outputting first and second logic data corresponding to detected said forward and reverse direction;
bifurcating said control data so as to provide forward control data and reverse control data;
scaling amplitude of said forward control data proportionally to modulation data responsive at least in part to a direction of said control data, said direction being determined by said first and second logic data; and
scaling amplitude of said reverse control data proportionally to modulation data responsive at least in part to a direction of said control data, said direction being determined by said first and second logic data.
-
-
41. The method of claim 33, providing gesture synthesis as in claim 33, wherein step a) includes:
-
detecting forward and reverse direction of said control data;
outputting first and second logic data corresponding to detected said forward and reverse direction;
delaying said control data by an amount of delay determined at least in part by modulation data responsive at least in part to a direction of said control data, said direction being determined by said first and second logic data; and
controllably combining additional control data with delayed said control data.
-
-
42. The method of claim 41, providing gesture synthesis as in claim 41 wherein step (a) further includes the step of:
converting said synthesized control data according to a conversion characteristic selected from a group consisting of (i) a conversion characteristic generated from a muscle emulation model, (ii) a conversion characteristic sampled from a musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic emulating sampled data, and (v) a conversion characteristic emulating musical gestures.
-
43. The method of claim 33, providing gesture synthesis as in claim 33, wherein step (a) includes:
-
detecting forward and reverse direction of said control data;
outputting first and second logic data corresponding to detected said forward and reverse direction; and
combining and using modulation data to vary at least one parameter selected from a group consisting of (i) peak amplitude of a time-delayed control data signal, (ii) delay time of a time-delayed control data, (iii) salience-curvature applied to a control data signal, (iv) width of a shaping window applied to control data signal, (v) height of a shaping window applied to control data signal, (vi) start point of a shaping window applied to control data signal, and (vii) stop point of a shaping window applied to control data signal, said modulation data being responsive at least in part to detected direction of said control data, said direction being determined by said first and second logic data.
-
-
44. The method of claim 33, providing gesture synthesis as described in claim 33, wherein step (a) includes:
-
providing control data having first and second logic data corresponding to forward and reverse direction of said control data;
generating clock pulses in which said clock pulses have an amplitude magnitude that varies according to a filter modulation function having at least one characteristic selected from the group consisting of (i) said filter modulation function has salience-curvature, (ii) said filter modulation function is varied in accordance with control data, (iii) said filter modulation function varied in accordance with modulation data, wherein said modulation data is responsive at least in part to said direction of said first user-input control device, said direction being determined by said first and second logic data, (iv) said filter modulation function is varied responsive to a combination of control data and modulation data, and (v) said filter modulation function is varied responsive to said synthesized control data; and
at least one step selected from a group consisting of (i) summing amplitudes of said clock pulses responsive to said first logic data to provide forward synthesized control data responsive to a running sum, and (ii) subtracting said clock pulsed to provide reverse synthesized control data responsive to a running subtraction.
-
-
45. The method of claim 33, providing gesture synthesis as in claim 33 wherein step (a) includes:
-
providing control data having first and second logic data corresponding to forward and reverse direction of said control data;
generating clock pulses;
accumulating clock pulses upon receipt of said first logic data and providing forward synthesized control data responsive to said accumulation; and
accumulating negative clock pulses, upon receipt of said second logic data, from a an initial data value selected from the group consisting of (i) said data amount value is a present accumulation and (ii) said data amount value is a maximum increment, and providing reverse synthesized control data responsive to said accumulation;
wherein said clock pulses have an amplitude magnitude having at least one characteristic selected from the group consisting of (i) said amplitude is substantially constant, (ii) said amplitude is varied responsive to control data, (iii) said amplitude is varied responsive to modulation data, (iv) said amplitude is varied responsive to said logic data, (v) said amplitude corresponds to at least a partial summation of at least two successive said clock pulses, and (vi) said amplitude is varied responsive to a combination of control data and modulation data.
-
-
46. The method of claim 45, providing gesture synthesis as in claim 45 wherein step (a) further includes at least one step selected from the group consisting of (i) scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
47. The method of claim 45, providing gesture synthesis as in claim 45 herein step (a) further includes the step of:
converting said synthesized control data according to a conversion characteristic selected from the group consisting of (i) a muscle emulation model generated conversion characteristic, (ii) a conversion characteristic sampled from an actual musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic that emulates sampled data, and (v) a conversion characteristic that emulates musical gestures.
-
48. The method of claim 47, providing gesture synthesis as in claim 47 wherein step (a) further includes at least one step selected from a group consisting of (i) scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
49. The method of claim 45, providing gesture synthesis as in claim 45 wherein step (a) further includes a method of gesture synthesis performed by at least one module selected from the group consisting of (i) a salience module, (ii) a time oscillator module, (iii) a flex filter module, (iv) a waveshaper module, (v) a scale module, and (vi) a delay module.
-
50. The method of claim 33, providing gesture synthesis as in claim 33, wherein step (a) includes providing control data having first and second logic data corresponding to forward and reverse direction of said control data;
-
generating clock pulses and modulating individual clock pulse amplitudes according to an amplitude modulation defining an amplitude envelope, said amplitude envelope having a forward portion and a reverse portion wherein at least one said portions is varied according to a parameter selected a group consisting of (i) a forward direction of a GS user-input control device, (ii) modulation data from a user-selected modulation source whose modulation data has a direction proportional to said logic data, (ii) a combination of control data and modulation data, (iv) said synthesized control data; and
controllably combining amplitudes of said clock pulses responsive to digital numbers representing at least one said portion of said amplitude envelope selected from the group consisting of (i) said forward portion, and (ii) said reverse portion.
-
-
51. The method of claim 33, providing gesture synthesis as in claim 33, wherein step (a) includes providing control data having first and second logic data corresponding to forward and reverse direction of said control data;
-
generating clock pulses;
incrementing said clock pulses upon receipt of said first logic data and providing forward synthesized control data responsive to a running count;
decrementing said clock pulses upon receipt of said second logic data and providing reverse synthesized control data responsive to a running count;
generating in response to data selected from the group consisting of (i) control data and (ii) modulation data, a time envelope comprising a series of digital numbers representing period of said clock pulses, said time envelope including an attack portion and a release portion, said attack portion being responsive to at least one parameter selected from the group consisting of (i) a forward direction of a user-input control device and (ii) modulation data from a user-selected modulation source, and said release portion being responsive to at least the parameter selected from the group consisting of (i) a reverse direction of a user-input control device and (ii) modulation data from a user-selected modulation source; and
modifying said period of said clock pulses responsive to a signal selected from the group consisting of (i) digital numbers representing said time envelope, (ii) digital numbers representing said attack portion of said time envelope, (iii) digital numbers representing said release portion of said time envelope, (iv) modulation data from a user-selected modulation source.
-
-
52. The method of claim 51, providing gesture synthesis of claim 51 wherein step (a) further includes at least one step selected from a group consisting of (i) scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
53. The method of claim 51, providing gesture synthesis of claim 51 wherein step (a) further includes the step of:
converting said synthesized control data according to a conversion characteristic selected from the group consisting of (i) a muscle emulation model generated conversion characteristic, (ii) a conversion characteristic sampled from an actual musical instrument, (iii) a conversion characteristic sampled from a MIDI-compatible controller, (iv) a conversion characteristic that emulates sampled data, and (v) a conversion characteristic that emulates musical gestures.
-
54. The method of claim 51, providing gesture synthesis as in claim 5153, wherein step (a) further includes at least one step selected from a group consisting of (i) scaling amplitude of said forward synthesized control data proportional to modulation data, and (ii) scaling amplitude of said reverse synthesized control data proportional to modulation data.
-
55. The method of claim 51, providing gesture synthesis as in claim 51, wherein step (a) further includes:
combining and using modulation data to vary at least one least one parameter selected from a group consisting of (i) peak amplitude of time-delayed said synthesized control data, (ii) delay time of a time-delayed said synthesized control data, (iii) salience-curvature applied to said synthesized control data, (iv) width of a shaping window applied to said synthesized control data, (v) height of a shaping window applied to said synthesized control data, (vi) start point of a shaping window applied to said synthesized control data, and (vii) stop point or a shaping window applied to said synthesized control data.
-
56. The method of claim 51, providing gesture synthesis of as in claim 51 wherein step (a) further includes at least one step selected from the group consisting of (i) detecting when an upper threshold is traversed, and then deactivating said incrementing, and (ii) detecting when a lower threshold is traversed and then deactivating said decrementing.
-
57. The method of claim 33, providing gesture synthesis as in claim 33 wherein step a) includes:
-
detecting a first threshold of data selected from the group consisting of (i) motion of control data (ii) velocity of control data (iii) acceleration of control data, (iv) motion of synthesized control data (v) velocity of synthesized control data (vi) acceleration of control data, outputting first logic data in accordance with detection of said first threshold, generating clock pulses responsive to said fist first logic data, detecting a second threshold of data selected from the group consisting of (i) motion of control data (ii) velocity of control data (iii) acceleration of control data, (iv) motion of synthesized control data (v) velocity of synthesized control data (vi) acceleration of control data, (vii) time from detection of said first threshold, outputting second logic data in accordance with said detection, and generating clock pulses responsive to said second logic data.
-
-
59. The method of gesture synthesis as described in claim 33 wherein step (a) further includes:
-
detecting forward and reverse direction of said control data;
generating first and second logic data in accordance with detected said forward and reverse direction;
counting time from receipt of said first logic data;
varying forward control data responsive to time;
counting time from receipt of said second logic data; and
varying reverse control data responsive to time.
-
-
60. The method of gesture synthesis as described in claim 33 wherein step (a) further includes:
-
differentiating control data with respect to time;
detecting when the result of said differentiation is zero;
deactivating said gesture synthesis method upon said detection.
-
-
62. The method of gesture synthesis as described in claim 33 wherein step (a) includes the steps of
(a) outputting first synthesized control data from a first gesture synthesis chain which includes at least a first delay module, (b) outputting second synthesized control data from a second gesture synthesis chain which includes a second delay module, (c) inputting said first synthesized control data as modulation data to another gesture synthesis chain, and (d) inputting said second synthesized control data as modulation data to another gesture synthesis chain.
Specification