Commit graph

1386 commits

Author SHA1 Message Date
Yotam Mann
3d2b86032e added has method to test if buffer exists 2016-08-09 01:14:52 -04:00
Yotam Mann
7984819753 update the octaves when changing the baseFrequency
this way the `lfo.max` also gets updated
2016-08-08 16:20:30 -04:00
Yotam Mann
464d64d13b Merge branch 'master' into dev 2016-07-20 15:44:34 -04:00
Yotam Mann
b266902bd7 can set the buffer 2016-07-20 15:42:55 -04:00
Yotam Mann
0824582274 update the octaves when updating the baseFrequency
otherwise it remains at the previous value
2016-07-20 15:37:51 -04:00
Yotam Mann
e029ead2bc small update to the docs
[skip ci]
2016-07-20 13:12:31 -04:00
Yotam Mann
3aea0546f5 starting r8
[skip ci]
2016-07-10 12:31:15 -04:00
Yotam Mann
6c8c75a2ec Clock ticks do not catch up when restarted after pause
fixes #145
2016-07-08 12:26:58 -04:00
Yotam Mann
8195d9d260 release candidate 2016-07-07 14:56:33 -04:00
Yotam Mann
62ca8f8c7b setRampPoint does not need to convert from units 2016-07-07 14:23:48 -04:00
Yotam Mann
cf20132b2c limiting BarsBeatsSixteenths precision to three decimal places 2016-07-07 14:11:03 -04:00
Yotam Mann
99f4ab3b79 updating docs for types
[skip ci]
2016-07-07 10:40:23 -04:00
Yotam Mann
eb5a459d03 removing vibratoDelay
wasn’t doing anything.
2016-07-06 23:41:14 -04:00
Yotam Mann
99d7d2f8bd disconnects from a specific node
(tests this feature only when supported)
2016-07-06 23:39:06 -04:00
Yotam Mann
c08e16087f correctly setting PPQ
wasn’t taking into account that the returns bpm value was dependent on
the PPQ. therefore, need to read the bpm before setting the PPQ.
2016-07-06 23:23:14 -04:00
Yotam Mann
d0b18c5d09 test for file type support. 2016-07-06 23:09:56 -04:00
Yotam Mann
810ee8530e uses the units value when ramping
previously there was an issue that it would start ramping from the
unconverted value.
2016-07-06 23:00:07 -04:00
Yotam Mann
2905cce5d2 making fadeTo exponential when set to decibels.
also converting from units to set ramp point
2016-07-06 22:59:21 -04:00
Yotam Mann
f5f75718e1 buffers can be more easily passed into the options object 2016-07-06 22:36:40 -04:00
Yotam Mann
02f96db94b simplifiying Sampler 2016-07-06 22:32:34 -04:00
Yotam Mann
b0f11dfa5b granular synthesis player 2016-07-05 20:32:53 -04:00
Yotam Mann
1ba3733439 interval is exclusive of end point
specifically the repeat time is: [start, start + duration).

so Transport.scheduleRepeat(fn, 1, 0, 2) will repeat twice, not three
times (since it’s exclusive of the end time).
2016-06-22 16:39:48 -04:00
Yotam Mann
20f8adebba adjust PWM scaling so it doesn't go silent 2016-06-17 14:02:24 -04:00
Yotam Mann
a40aa6bd12 Fixing case where partial envelope is retriggered using one of the predefined envelopes 2016-06-17 13:13:20 -04:00
Yotam Mann
49c401e6d8 calling stop when duration is given.
making sure to assign _startTime using it.
2016-06-17 11:32:34 -04:00
Yotam Mann
3dece40ac6 disposing of volume 2016-06-17 10:54:35 -04:00
Yotam Mann
a2000bf42b adding volume and mute controls 2016-06-17 10:43:30 -04:00
Yotam Mann
89636d40ef ramping from current gain value 2016-06-17 10:43:06 -04:00
Yotam Mann
c70ab5d07a using fadeOut when duration is set 2016-06-16 17:30:46 -04:00
Yotam Mann
74ebee4bfe MultiPlayer keeps track of all the BufferSources it's played 2016-06-15 00:48:55 -04:00
Yotam Mann
f1e6c154e0 using linear ramping instead (sounds pretty much the same)
also compensating for the fade time when there is a passed in
duration.
2016-06-14 23:48:25 -04:00
Yotam Mann
ac0851b4c8 ensure onended callback is not invoked after disposing 2016-06-14 21:08:30 -04:00
Yotam Mann
1efc061ebd explicitly stop the AudioBufferSource when duration is given 2016-06-14 20:43:26 -04:00
Yotam Mann
96644f37d2 Adjusting the timing of the tests
also using wav’s instead of mp3s
2016-06-14 20:27:12 -04:00
Yotam Mann
693867f9be Revert "encoding the URI"
This reverts commit 754e9fc500.
2016-06-14 20:04:28 -04:00
Yotam Mann
e0edb67a75 Wrapper around the basic AudioBufferSourceNode 2016-06-14 19:57:46 -04:00
Yotam Mann
754e9fc500 encoding the URI 2016-06-14 19:57:15 -04:00
Yotam Mann
5978d46825 Buffers is a data structure for holding multiple Tone.Buffer 2016-06-14 19:57:01 -04:00
Yotam Mann
238cf0caa4 randomizing the noise offset
this should make two noises played starting at the same time slightly
different.
2016-06-14 19:56:18 -04:00
Yotam Mann
cce32d7efc IntervalTimeline.forEachOverlap -> forEachAtTime 2016-06-13 09:02:51 -04:00
Yotam Mann
eea938094c renaming cosine->sine and ease->sine
Fixes #69
2016-06-12 09:56:18 -04:00
Yotam Mann
4628f8c47a prefixing errors with class name. 2016-05-25 20:50:46 -04:00
Yotam Mann
aae52e3fa1 default PolySynth voice is Tone.Synth
instead of Tone.MonoSynth
2016-05-23 19:56:15 -04:00
Yotam Mann
49fc9d7bb6 renamed SimpleSynth to Tone.Synth 2016-05-23 19:49:41 -04:00
Yotam Mann
db6b901003 attack/release curves can be arrays
also introducing a bunch of new curve types
2016-05-23 19:20:20 -04:00
Yotam Mann
29df1b2293 setValueCurveAtTime now implemented with a series of linearRampToValue
this is more cross-platform and easier to work with.
2016-05-23 19:19:06 -04:00
Yotam Mann
3b9b65bf89 adding additional startTime value to rampTo 2016-05-17 21:59:27 -04:00
Yotam Mann
9528238873 computing rms from the analyser waveform data 2016-05-17 21:26:57 -04:00
Yotam Mann
6060b397ad added detune to PolySynth
applied when available.
2016-05-14 20:49:55 -04:00
Yotam Mann
b3e9ec173a added detune for AM/FM synths 2016-05-14 20:10:31 -04:00
Yotam Mann
cdebaeedf5 Can pass in an array of durations into triggerAttackRelease
Fixes #135
2016-05-14 19:55:51 -04:00
Yotam Mann
8e3d3264dd setting a value will cancel scheduled values
so that it gets set immediately.
2016-05-14 19:18:33 -04:00
Yotam Mann
58a1223a9a meter uses the analyser node
no more ScriptProcessorNodes
2016-05-14 19:13:50 -04:00
Yotam Mann
2db3265fb9 needs to cancel at 0 for some reason to take effect in Chrome 2016-05-14 18:57:18 -04:00
Yotam Mann
a25767cfbe can mute the output 2016-05-14 18:07:53 -04:00
Yotam Mann
24692aa343 can be muted in the constructor options 2016-05-14 17:46:21 -04:00
Yotam Mann
3ecd99ecb6 moving mute code to Volume 2016-05-14 17:34:23 -04:00
Yotam Mann
b02a13ab08 not using Math.log2 (since it's not supported across all browsers yet) 2016-05-14 17:00:57 -04:00
Yotam Mann
c83c70d11c cancels scheduling when setting a value with .value
this makes the behavior consistent between Webkit and FF
2016-05-14 16:52:58 -04:00
Yotam Mann
98e58d0576 switching argument position of type and size
type is more important a parameter.
2016-05-14 16:34:50 -04:00
Yotam Mann
af1a737f71 simplifying position code to use TransportTime 2016-05-14 16:32:16 -04:00
Yotam Mann
6c77c60469 ensures addNow can only be called once 2016-05-14 16:31:35 -04:00
Yotam Mann
1d9e43f33a handles math operations correctly now 2016-05-14 16:27:55 -04:00
Yotam Mann
5d6f1806c1 Making the Analyser a passthrough node. 2016-04-25 18:05:15 -04:00
Yotam Mann
688e3812ab removing old types 2016-04-18 02:19:29 -04:00
Yotam Mann
d374790175 using new Type 2016-04-18 02:19:17 -04:00
Yotam Mann
059bbf20b2 converting units using new API 2016-04-18 02:19:01 -04:00
Yotam Mann
b1d0d33f1b can accept time as the value 2016-04-18 02:05:54 -04:00
Yotam Mann
1e7773ae6a using new Timing primitives 2016-04-18 02:05:04 -04:00
Yotam Mann
16c28892c8 using Time instead of TransportTime 2016-04-18 01:12:55 -04:00
Yotam Mann
cebeb3e577 clock goes to stop state immediately
no need to test if it’s started.
2016-04-18 01:12:35 -04:00
Yotam Mann
733b49bcd5 using new types 2016-04-18 00:36:08 -04:00
Yotam Mann
696e84cafb new core timing primitives 2016-04-18 00:34:16 -04:00
Yotam Mann
3f6580b843 simplifying NoiseSynth
removing filer and filterEnvelope
2016-04-18 00:28:39 -04:00
Yotam Mann
9b5837df3e Using new types
swing sinusoidally delays until a triplet.
2016-04-18 00:17:02 -04:00
Yotam Mann
2530182b2e updating analyser docs
[skip ci]
2016-04-17 13:41:54 -04:00
Yotam Mann
ca95a0bef5 increasing PPQ to 192. quantize->nextSubdivision
separating out Timeline quantization from quantization method and
moving it elsewhere.
2016-04-13 13:05:27 -04:00
Yotam Mann
d47cc0fa9d fixed precedence bug 2016-04-13 12:29:02 -04:00
Yotam Mann
0d5f790444 updating example
removing support of note interpolation (didn’t seem that useful).

[skip ci]
2016-04-13 12:28:10 -04:00
Yotam Mann
6d4a4cf164 moving intervalToFrequencyRatio into core 2016-04-12 20:30:18 -04:00
Yotam Mann
4a05dc4534 removing unused method
`fan` is more useful
2016-04-10 23:35:22 -04:00
Yotam Mann
4f4d93ba71 removing deprecated Note class 2016-04-10 23:34:34 -04:00
Yotam Mann
cd29397a15 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2016-04-10 16:49:51 -04:00
Yotam Mann
48c7ca5cc4 Updating documentation to show start offset time and duration arguments
Fixes #136
[skip ci]
2016-04-10 16:00:10 -04:00
Yotam Mann
90c0b5febe MultiPlayer needs Buffer as dependency 2016-03-22 16:01:32 -04:00
Yotam Mann
85cfedb03c adding polyfill for getFloatTimeDomain
Fixes #129
2016-03-20 19:01:39 -04:00
Yotam Mann
52186f6d31 noting polyfill
[skip ci]
2016-03-20 18:58:08 -04:00
Yotam Mann
e18ed2e677 polyfill for browsers that don't support interpolate value curves
Required by [the
spec](http://webaudio.github.io/web-audio-api/#widl-AudioParam-setValueC
urveAtTime-AudioParam-Float32Array-values-double-startTime-double-durati
on), but not currently implemented by Safari and FF.
2016-03-20 18:36:59 -04:00
Yotam Mann
272ad66873 documenting distinction between Time and TimelinePosition
Fixes #104

[skip ci]
2016-03-18 11:28:49 -04:00
Yotam Mann
0a4b997bde updating start method documentation
[skip ci]
2016-03-18 11:00:07 -04:00
Yotam Mann
df30c40bd3 maximum diff between frames 2016-03-18 10:24:11 -04:00
Yotam Mann
14fcbb3553 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2016-03-18 09:54:17 -04:00
Yotam Mann
5ddf71a3da removing millisecond conversion
accidentally still had that in there.
2016-03-17 18:00:42 -04:00
Yotam Mann
40d739fc4d More waveshaper points
works better on Safari
2016-03-16 13:09:46 -04:00
Yotam Mann
04614a2948 added setCurveAtTime to Timeline 2016-03-05 10:44:03 -05:00
Yotam Mann
78095af046 properly handles error on buffer decoding 2016-03-05 00:07:42 -05:00
Yotam Mann
aa1b5123aa fixing panner for browsers that don't support stereo panner 2016-03-04 18:59:31 -05:00
Yotam Mann
ad9ae4dbe9 fitting fft size to conform with old spec range
this allows it to pass on older systems which haven’t increased the
range to 32k
2016-03-04 18:30:15 -05:00
Yotam Mann
ac6ef2c263 ifdef which allows Tone work on the same page as p5.sound 2016-03-04 18:14:24 -05:00
Yotam Mann
2728e02555 ability to cancel an envelope 2016-03-04 15:54:24 -05:00
Yotam Mann
07f8f227cf .events -> .values 2016-03-04 15:35:10 -05:00
Yotam Mann
f2fc38210f updated doc examples 2016-03-03 13:08:26 -05:00
Yotam Mann
18b2136148 .value returns the scheduled value at time=now 2016-03-03 13:04:02 -05:00
Yotam Mann
366e61562f canceling future states on stop
also not checking if it’s already started.

Fixes #121
2016-03-03 13:02:38 -05:00
Yotam Mann
278aace787 setting a reasonable max voice count 2016-03-03 13:01:11 -05:00
Yotam Mann
2020194a1c testing and handling edge cases 2016-03-03 13:00:59 -05:00
Yotam Mann
7a23c08703 LFO outputs 0 value when stopped
gets around 0 gain optimization
2016-03-03 01:35:29 -05:00
Yotam Mann
724ac4090c removing threshold value
making _worker static
2016-03-03 01:34:48 -05:00
Yotam Mann
89711b336e process single occurrence events first
Fixes #114
2016-02-27 17:23:38 -05:00
Yotam Mann
e8eb147935 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2016-02-27 17:19:26 -05:00
Yotam Mann
bfbf567d98 Clocks uses Workers instead of requestAnimationFrame
Fixes #124
2016-02-27 17:14:39 -05:00
Yotam Mann
12c7426f53 baseUrl
useful for various production environments.
2016-02-27 17:12:11 -05:00
Yotam Mann
93d70a3a9e waveshaper goes between -1 and 1 inclusive 2016-02-27 17:08:53 -05:00
Yotam Mann
ac5841d8ad removing startMobile
use StartAudioContext to accomplish the same thing.
2016-02-27 16:46:13 -05:00
Yotam Mann
115b9376ab Panner is now between -1 and 1
Same as the Web Audio API.
2016-02-27 11:31:15 -05:00
Yotam Mann
23c70cbc93 disposing fully 2016-02-27 11:22:26 -05:00
Yotam Mann
0441bc5008 pruning away unused signal classes 2016-02-27 11:18:59 -05:00
Yotam Mann
c4f85780f2 using sampleTime variable 2016-02-27 11:16:51 -05:00
Yotam Mann
a427070904 Outputs 0 at audio-rate
This is to get around an optimization in most browsers which stops
processing when the gain is equal 0 in the Signal.
2016-02-27 11:16:25 -05:00
Yotam Mann
670e3ef92b static 'now' function
updated description.
2016-02-25 17:58:26 -05:00
Yotam Mann
faf434400b pull in Master like the rest of the sources 2016-02-18 14:12:30 -05:00
Yotam Mann
35e065ca80 adding error callback on open 2016-02-18 14:11:47 -05:00
Yotam Mann
9049857b80 fire-and-forget buffer player 2016-02-08 13:44:49 -05:00
Yotam Mann
64dbebeb67 triggers oldest note
no more control over retriggering.
2016-02-08 13:44:49 -05:00
Yotam Mann
4a9f39a62b keeps track of release times
so it’s able to trigger the voice that has already been release, or
retrigger the oldest voice (if stealVoices) is true.
2016-02-08 13:44:49 -05:00
Yotam Mann
ecd15808c2 simplified Abs
now only accepts signals in the range [-1,1]
2016-02-06 15:06:03 -05:00
Yotam Mann
abc62d3962 Merge pull request #115 from hiddedejong/PartOffset
fixed start offset in Tone.Part, now behaves like Tone.Player
2016-02-01 22:28:59 -05:00
Yotam Mann
af6babf8d8 shortens attack time if the envelope is already active
this retains the attack slope.
2016-01-31 23:40:50 -05:00
Yotam Mann
c72a5f25c9 makes sure that exponential ramping is never from or to 0
when trying to ramp from 0, it does a setValueAtTime to a near zero
value, then ramps exponentially. And the reverse when ramping to 0.
2016-01-31 23:33:36 -05:00
Yotam Mann
79ab31603a cache the time in seconds of 1 sample 2016-01-31 23:13:00 -05:00
Yotam Mann
de37b6798d adding Master as a dependency
Addresses #112
2016-01-31 12:20:55 -05:00
Hidde de Jong
75628b53e8 fixed start offset in Tone.Part, now behaves like Tone.Player 2016-01-31 14:45:34 +01:00
Yotam Mann
9e7dd15e46 removed unused enum 2016-01-30 20:24:53 -05:00
Yotam Mann
995a12d765 Making sure the envelope is active before triggering the release
This keeps FF from throwing an error when trying to exponentially ramp
from 0.
2016-01-30 15:56:56 -05:00
Yotam Mann
46919e7c86 Simplifying the API of FMSynth and AMSynth
uses SimpleSynth instead of MonoSynth. API more flat.
2016-01-30 15:53:40 -05:00
Yotam Mann
2f4d6d07cd DrumSynth->MembraneSynth & CymbalSynth->MetalSynth 2016-01-30 15:48:32 -05:00
Yotam Mann
3d67297166 updated copyright year 2016-01-23 12:30:34 -05:00
Yotam Mann
d5499f64f8 CymbalSynth synthesizes spectrally complex, metallic sounds 2016-01-19 10:02:46 -05:00
Yotam Mann
e53c864948 making sure the envelope is silent after the decay if the sustain is 0 2016-01-18 22:46:36 -05:00
Yotam Mann
9f785b371e removing deprecated methods 2016-01-18 22:45:46 -05:00
Yotam Mann
61caca5054 volume change proportional to the number of oscillators 2016-01-18 00:27:46 -05:00
Yotam Mann
5a772466ae 3 new oscillator types
and combined them into the OmniOscillator
2016-01-17 22:43:44 -05:00
Yotam Mann
0349216473 Envelope is completely silenced while not being triggered
Fixes #109
2016-01-16 15:39:29 -05:00
Yotam Mann
68daf2aab9 fixing docs 2016-01-03 12:36:49 -05:00
Yotam Mann
e371c69a79 incrementing version 2015-12-13 13:09:53 -05:00
Yotam Mann
6c81d59df2 r6 version 2015-12-08 00:26:03 -05:00
Yotam Mann
cfc33cf39c doc'ing 2015-12-08 00:07:16 -05:00
Yotam Mann
b3e08a4c02 removed instrument presets 2015-12-07 21:32:28 -05:00
Yotam Mann
7fd1ad026e removing effect presets
Presets have been moved to their own repo
2015-12-07 19:14:12 -05:00
Yotam Mann
eda4553169 using baseFrequency and octaves for AutoFilter 2015-12-07 11:46:34 -05:00
Yotam Mann
d29995a42a phaser uses octaves instead of depth.
more consistent with rest of API.
2015-12-07 01:04:09 -05:00
Yotam Mann
2664140ab0 implementing filterEnvelope with Tone.FrequencyEnvelope 2015-12-07 00:39:39 -05:00
Yotam Mann
acd3722add exposing exponent value 2015-12-07 00:38:48 -05:00
Yotam Mann
307dd6632c FrequencyEnvelope is like ScaledEnvelope but with baseFrequency and octaves instead of min and max 2015-12-07 00:23:21 -05:00
Yotam Mann
3bbd66c5d2 constrain TimelineSignal's memory 2015-12-07 00:19:38 -05:00
Yotam Mann
f7547217c8 Timeline has an optional memory length 2015-12-06 23:48:53 -05:00
Yotam Mann
2626b19469 setValueAtTime makes the attack less prone to clicks
not sure why.
2015-12-06 21:39:59 -05:00
Yotam Mann
298799dee9 added 'spread' to Chorus 2015-12-06 20:53:36 -05:00
Yotam Mann
1d7385d819 spread is initialized with the constructor. 2015-12-06 17:37:37 -05:00
Yotam Mann
972e7f1d00 set the state to "stopped" after a number of loops. 2015-12-06 17:23:30 -05:00
Yotam Mann
8984365883 resolves case where items are removed during iteration 2015-12-06 17:23:30 -05:00
Yotam Mann
dbc33d0a1c fixes case of canceling events when there's only one event in the timeline 2015-12-06 17:23:30 -05:00
Yotam Mann
441f964206 Merge pull request #103 from lukephills/upstream-dev
Tremolo stereo spread control
2015-12-06 17:22:54 -05:00
Yotam Mann
9d3b5947fd Reverting to non-signal playbackRate
because Safari isn’t there yet with signal-rate playbackRate
2015-12-06 13:14:36 -05:00
Yotam Mann
74110715f5 Revert "playbackRate is now a signal"
This reverts commit f889a77f0f.
2015-12-06 13:14:36 -05:00
Yotam Mann
ae669e7fa6 making sure the ramp time constant is above 0 2015-12-06 13:14:36 -05:00
Yotam Mann
1cf6910796 Using exponentialRamp for decay and release
This normalizes things across browsers because it seems that FF
setTargetAtTime always starts from 0

addresses #91
2015-12-06 13:14:36 -05:00
Yotam Mann
f4200aa2a7 left and right inputs of merger are explicitly mono
this fixes issue of not splitting correctly in FF and Safari.
2015-12-06 13:14:36 -05:00
Yotam Mann
12d7cd0e1f eventsToRemove is no longer necessary 2015-12-06 13:14:36 -05:00
Yotam Mann
2bf8039b4e iterator with guarding in case items are deleted
makes it safer to delete an item during a forEach loop
2015-12-06 13:14:36 -05:00
Yotam Mann
f0857f2e08 canceling next events on stop 2015-12-06 13:14:36 -05:00
Luke Phillips
1cbe390d8d Give tremolo a stereo spread option 2015-12-06 13:29:08 +13:00
Yotam Mann
8231fc5cf3 fixing and testing start offset for non-looping parts 2015-11-26 08:42:33 -08:00
Yotam Mann
97e8169c85 acts on the component Tone.Events and not on sub-Parts 2015-11-26 08:27:29 -08:00
Yotam Mann
8bcf318271 updating to new playbackRate API 2015-11-26 08:21:38 -08:00
Yotam Mann
1b10f4e47b reverting. getValueAtTime should return unconverted units
Making a note of this in the docs
2015-11-26 01:24:34 -05:00
Yotam Mann
f6a95f2f49 default partials value 2015-11-25 21:46:54 -05:00
Yotam Mann
33dbdeff41 can set partials in constructor 2015-11-25 21:46:47 -05:00
Yotam Mann
21b8c074e4 changing the humanize amount to 0.02s 2015-11-25 21:46:33 -05:00
Yotam Mann
fe5d6ac94e getting partials (correctly) for other Oscillator types 2015-11-23 23:51:36 -05:00
Yotam Mann
093d2e3a36 getValueAtTime returns converted values 2015-11-23 23:49:54 -05:00
Yotam Mann
ac693eac4b doc'ing 2015-11-17 23:21:55 -05:00
Yotam Mann
c8cfe33864 doc'ing 2015-11-17 22:52:22 -05:00
Yotam Mann
7f660730df removing exponent member 2015-11-17 22:51:32 -05:00
Yotam Mann
4c3cf0d8fc handling partials member for other oscillator types 2015-11-17 22:51:10 -05:00
Yotam Mann
2c215ce703 setting ramp point cancels next values so they don't interfere with the next ramp 2015-11-16 11:11:01 -05:00
Yotam Mann
e09ec8de23 reverting to old volume implementation in Master 2015-11-16 11:10:12 -05:00
Yotam Mann
0c3cd6a305 Set a ramp point before the release curve 2015-11-11 23:41:17 -05:00
Yotam Mann
42dadb6d2d using Emitter style for load/progress/error
The new syntax is `Tone.Buffer.on(“load”, callback);`
2015-11-11 12:33:02 -05:00
Yotam Mann
4f9871cd30 fixing 'off' case where Emitter is mixed into the class 2015-11-11 12:13:36 -05:00
Yotam Mann
22ab61fb09 noise has playbackRate which adjusts the "frequency" 2015-11-10 23:47:10 -05:00
Yotam Mann
f889a77f0f playbackRate is now a signal 2015-11-10 23:46:47 -05:00
Yotam Mann
3e14c63313 updated docs 2015-11-10 23:02:01 -05:00
Yotam Mann
f893e2378b schedule rests with null 2015-11-10 23:01:14 -05:00
Yotam Mann
6795161220 using random index in randomOnce
fixes scenario where the values change or the array changes sizes.
2015-11-03 19:40:45 -05:00
Yotam Mann
d6d9c397de Tone.Pattern iterates through an array of events in a number of patterns 2015-11-03 19:15:40 -05:00
Yotam Mann
2197942af4 control-rate generators that only produce values when invoked 2015-11-03 19:14:01 -05:00
Yotam Mann
e184800225 moved Sequence to event folder 2015-11-03 18:38:44 -05:00
Yotam Mann
a51ed921bf Tone.Loop provides a simple, schedulable looped callback. 2015-11-03 18:37:40 -05:00
Yotam Mann
03c580db3e sequence simplifies describing event order 2015-11-03 18:36:51 -05:00