Yotam Mann
b5ba9e072c
ramping position values
...
this gets rid of a lot of clicking
2016-10-05 00:18:41 -04:00
Yotam Mann
bab37aea07
SpatialPanner and Listener wrappers
2016-10-01 21:45:22 -04:00
Yotam Mann
ac0e3db386
updated docs
...
[skip ci]
2016-09-25 19:00:10 -04:00
Yotam Mann
b1765f71b0
moving the minimum timing to the Instrument classes
2016-09-24 10:38:57 -04:00
Yotam Mann
1c3e06c2e5
schedule immediate envelopes one block in the future
...
this avoids some pops
2016-09-23 20:07:41 -04:00
Yotam Mann
3d36324b8d
updating Q value so it doesn't feedback
...
Fixes #166
thanks @mmckegg
2016-09-23 10:16:10 -04:00
Yotam Mann
372053a029
using Tone.Delay everywhere instead of DelayNode
2016-09-20 00:01:27 -04:00
Yotam Mann
a60328345e
using Tone.Gain everywhere instead of GainNode
2016-09-19 23:53:07 -04:00
Yotam Mann
76ad44360d
updating to new API
2016-09-19 23:02:42 -04:00
Yotam Mann
c135392f55
changing sync
to match new Source sync API
2016-09-18 19:37:31 -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
a40aa6bd12
Fixing case where partial envelope is retriggered using one of the predefined envelopes
2016-06-17 13:13:20 -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
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
9528238873
computing rms from the analyser waveform data
2016-05-17 21:26:57 -04:00
Yotam Mann
58a1223a9a
meter uses the analyser node
...
no more ScriptProcessorNodes
2016-05-14 19:13:50 -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
98e58d0576
switching argument position of type and size
...
type is more important a parameter.
2016-05-14 16:34:50 -04:00
Yotam Mann
5d6f1806c1
Making the Analyser a passthrough node.
2016-04-25 18:05:15 -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
733b49bcd5
using new types
2016-04-18 00:36:08 -04:00
Yotam Mann
2530182b2e
updating analyser docs
...
[skip ci]
2016-04-17 13:41:54 -04:00
Yotam Mann
85cfedb03c
adding polyfill for getFloatTimeDomain
...
Fixes #129
2016-03-20 19:01:39 -04: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
2728e02555
ability to cancel an envelope
2016-03-04 15:54:24 -05:00
Yotam Mann
18b2136148
.value
returns the scheduled value at time=now
2016-03-03 13:04:02 -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
115b9376ab
Panner is now between -1 and 1
...
Same as the Web Audio API.
2016-02-27 11:31:15 -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
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
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
0349216473
Envelope is completely silenced while not being triggered
...
Fixes #109
2016-01-16 15:39:29 -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
2626b19469
setValueAtTime makes the attack less prone to clicks
...
not sure why.
2015-12-06 21:39:59 -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
c8cfe33864
doc'ing
2015-11-17 22:52:22 -05:00
Yotam Mann
0c3cd6a305
Set a ramp point before the release curve
2015-11-11 23:41:17 -05:00
Yotam Mann
8e5dd56906
removing unused dependencies
2015-11-03 18:33:52 -05:00
Yotam Mann
93993846ee
updating to new Gain / Volume API
2015-11-01 17:49:53 -05:00
Yotam Mann
99769ca927
volume doens't extend Gain
2015-11-01 17:49:33 -05:00
Yotam Mann
92a418af1e
converts to destination units when connected
2015-10-21 12:12:35 -04:00
Yotam Mann
61fb1df660
adding strict mode
2015-10-21 12:11:19 -04:00
Yotam Mann
666d2f230a
EQ3 using new Gain
2015-10-21 10:54:33 -04:00
Yotam Mann
b73a8cb71f
updating to new Param class
2015-10-21 10:34:37 -04:00
Yotam Mann
1c00c650db
updating to new Volume API
2015-10-21 10:33:13 -04:00
Yotam Mann
257b480535
Volume extends Gain
2015-10-21 10:30:21 -04:00
Yotam Mann
b061b81983
can get state
of LFO
2015-10-20 17:30:20 -04:00
Yotam Mann
2f27321dda
fixing doc description of analyser
2015-09-11 17:05:27 -04:00
Yotam Mann
eccdb659c2
renamed Tone/core/Types -> Tone/core/Type
2015-09-04 16:48:21 -04:00
Yotam Mann
9987af7a1d
volume uses Tone.Gain
2015-08-31 16:59:36 -04:00
Yotam Mann
a2611941ea
accepts options object
2015-08-28 18:32:32 -04:00
Yotam Mann
54c14e1f96
default values and per channel clipping indication
2015-08-28 18:32:20 -04:00
Yotam Mann
48b38d0de9
can be constructed through an options object
2015-08-27 23:08:58 -04:00
Yotam Mann
61d0e1bbda
lfo outputs signal while stopped
2015-08-27 23:03:42 -04:00
Yotam Mann
80abf87292
reflecting rename
2015-08-18 16:29:39 -04:00
Yotam Mann
66a9991ede
Envelope uses new SchedulableSignal
2015-08-16 15:17:35 -04:00
Yotam Mann
47dd0e2f45
amplitude envelope uses new Gain
2015-08-16 15:15:10 -04:00
Yotam Mann
d36af98c46
filter rolloff goes up to -96 now
...
because why not? Also accepts a string as the type. fixes #84 .
2015-08-12 13:13:04 -04:00
Yotam Mann
5773944f88
fft and waveform analyser
2015-08-10 14:40:20 -04:00
Yotam Mann
17f5e8bb8e
delays are offset only 1 block now.
2015-07-21 11:22:36 -04:00
Yotam Mann
24f1ddf4b9
Offset 'now' one block (128 samples) when triggering attack/release
...
Fixes #79
2015-07-21 10:31:37 -04:00
Yotam Mann
7eead0913b
ramp to a smaller value
...
addresses #79
2015-07-20 10:47:52 -04:00
Yotam Mann
01060f13db
removing old API test
2015-07-18 14:59:18 -04:00
Yotam Mann
3ccc0683bf
changing doc links to markdown style
2015-07-04 15:25:37 -04:00
Yotam Mann
00e0ba7273
read envelope value
2015-07-04 13:36:38 -04:00
Yotam Mann
64212d90f3
doc'ing components
...
merging seth's doc changes
2015-07-04 12:32:18 -04:00
Seth Kranzler
d599761f2e
more doc'ing
2015-07-02 15:45:40 -04:00
Seth Kranzler
12c56011b6
doc'ing components
2015-07-01 20:19:58 -04:00
Seth Kranzler
faf289bdd6
Effects, mic, Noise, Omniosc, and AmplitudeEnvelope docs updated
2015-07-01 17:44:30 -04:00
Yotam Mann
5ea8eaa35d
doc'ing components
2015-06-20 19:25:49 -04:00
Yotam Mann
4e9cb3ce1e
doc'ing
2015-06-20 15:50:57 -04:00
Yotam Mann
bd7e4fd76a
doc'ing components
2015-06-14 01:09:06 -04:00
Yotam Mann
b2fa7a065e
jsdocing
2015-06-13 23:56:32 -04:00
Yotam Mann
23cc2408b2
changing link tag
2015-06-13 21:54:20 -04:00
Yotam Mann
20ad29dc61
removing types from array notation
2015-06-13 20:56:41 -04:00
Yotam Mann
a81ba071f3
changing the styling of this
in return statements
2015-06-13 20:54:29 -04:00
Yotam Mann
571183bf27
removing Tone.Type prefix in docs
2015-06-13 20:20:36 -04:00
Yotam Mann
f2f838b630
using signal jsdoc
2015-06-13 19:50:39 -04:00
Yotam Mann
07264eb05b
signal jsdocing
2015-06-13 19:29:25 -04:00
Yotam Mann
37286c3d23
better rolloff validation.
2015-06-07 12:57:50 -04:00
Yotam Mann
3bf65cddb3
type annotation
2015-06-07 12:09:08 -04:00
Yotam Mann
b3f7babcca
respelling the enum types
2015-05-24 09:53:53 -04:00
Yotam Mann
68a47a9d58
Normal->NormalRange & Number->Default
2015-05-24 09:45:15 -04:00
Yotam Mann
1f69151c5f
renamed Tone.Frequency -> Tone.Type.Frequency
2015-05-23 19:07:28 -04:00
Yotam Mann
6ef3dd2f51
renamed Tone.Time -> Tone.Type.Time
2015-05-23 19:01:05 -04:00
Yotam Mann
f0bcd68812
renamed Tone.Signal.Units to Tone.Type
...
also renamed Tone.Source.State to Tone.State
2015-05-23 18:57:05 -04:00
Yotam Mann
fdf8da421c
gain gets the default value
2015-05-23 18:16:14 -04:00
Yotam Mann
dbf992d195
LFO takes on unit values
...
it also starts at min value instead of jumping to the middle value on
start
2015-05-23 18:15:19 -04:00
Yotam Mann
0667feae49
removing unneeded connections
2015-05-22 10:13:05 -04:00
Yotam Mann
dfc04af754
adding Q control to Multiband split
2015-05-22 10:12:50 -04:00
Yotam Mann
e2ed3b4350
volume is first parameter of constructor
2015-05-21 13:52:06 -04:00
Yotam Mann
b7864d1c4d
correctly sets resonance and dampening
...
it was set at 0 before, making it silent.
2015-05-13 12:13:25 -04:00
Yotam Mann
2e36740b9b
fixing deps
2015-05-05 16:40:58 -04:00
Yotam Mann
a2f4a3595b
jsdoc'ing
2015-05-05 16:40:52 -04:00
Yotam Mann
274bab6336
removing Tone.Stereo
...
changing the `channelCountMode` is much simpler.
2015-04-28 14:42:40 -04:00
Yotam Mann
1be27628c4
simplifying comb filters
...
128 samples is defined in the spec as the block size and minimum delay
time for cyclic delayNodes. this makes it unnecessary to string
together multiple delays for small delay times.
2015-04-24 17:44:10 -04:00
Yotam Mann
f7c6c1cd95
slimming down compressor code
2015-04-24 13:13:20 -04:00
Yotam Mann
0ff1962d51
MidSideCompressor
2015-04-20 15:41:49 -04:00
Yotam Mann
8ad222d94f
MidSide Split and Merge components
2015-04-20 15:41:30 -04:00
Yotam Mann
bbdeffb7f7
attackType -> attackCurve
2015-04-20 10:42:27 -04:00
Yotam Mann
e79c9a33e4
optimizing Tone.Stereo
2015-04-20 10:42:09 -04:00
Yotam Mann
1b72e91b32
renamed EQ to EQ3
2015-04-20 10:41:55 -04:00
Yotam Mann
0b3528c2fe
setting min output
2015-04-18 20:23:14 -04:00
Yotam Mann
2f9a304acf
Envelope has exponential or linear attack
2015-04-18 14:54:51 -04:00
Yotam Mann
9e98e9078a
stricter interface for components
2015-04-05 15:13:15 -04:00
Yotam Mann
bcb7dad795
panner uses GainToAudio
2015-04-05 12:13:19 -04:00
Yotam Mann
f60a0ea947
implementing PanVol with Volume
2015-03-26 10:51:08 -04:00
Yotam Mann
b093dd4d73
deleting deprecated classes
2015-03-26 10:50:48 -04:00
Yotam Mann
de7a22aecd
Simple Volume control in decibels
2015-03-24 16:30:04 -04:00
Yotam Mann
e0d7ac212b
uses StereoPannerNode when available
2015-03-24 16:29:48 -04:00
Yotam Mann
788c703aa3
Tone.Stereo coerces mono signal into stereo
2015-03-24 16:29:36 -04:00
Yotam Mann
52b113a611
optimizing Split components
2015-03-24 16:29:11 -04:00
Yotam Mann
a61860c826
fixed panning bug
2015-03-09 22:52:08 -04:00
Luke Phillips
237202c049
updated typescript definitions and fixed a few type errors
2015-03-07 19:17:16 +00:00
Luke Phillips
f4fc005a57
new typescript definitions
2015-03-07 18:45:11 +00:00
Luke Phillips
17df3dc4bb
es5 getters and setters used in multiband eq
2015-03-07 18:26:08 +00:00
Luke Phillips
d2755e10de
Merge Tone r4
2015-03-05 16:06:27 +00:00
Yotam Mann
edbcffc505
simplified components
2015-03-03 10:26:46 -05:00
Yotam Mann
e6718e4781
jsdoc'ing effects and components
2015-02-27 16:53:10 -05:00
Yotam Mann
4ca5d26848
updating docs
2015-02-26 11:47:44 -05:00
Yotam Mann
76973cda7d
changed internal tag to private tag
...
JSDoc stuff
2015-02-25 16:19:43 -05:00
Yotam Mann
c5b2cdae3e
low/mid/high uses Signals
2015-02-23 19:46:28 -05:00
Yotam Mann
4a3d443936
throws error when not valid filter type
2015-02-17 00:58:17 -05:00
Yotam Mann
c0f87b1202
volume control in decibels
2015-02-11 23:10:14 -05:00
Yotam Mann
89495c8635
fixing follower error
2015-02-11 23:09:20 -05:00
Yotam Mann
54bc36cb98
clean up.
2015-02-11 23:08:53 -05:00
Yotam Mann
cbcbdf11b1
fixing attack/release time values
2015-02-11 16:44:50 -05:00
Yotam Mann
baf00519fa
crossfade is now equalPower
2015-02-11 15:28:33 -05:00
Yotam Mann
e74cfdf41e
added amplitude to LFO
2015-02-11 14:37:48 -05:00
Yotam Mann
9be7113fff
added setDelayTimeAtTime to allow for note timing
...
the note timing is used in Tone.PluckSynth
2015-02-10 12:04:57 -05:00
Yotam Mann
110afb7531
deprecated Tone.Recorder
...
using it just for testing
2015-02-10 12:02:48 -05:00
Yotam Mann
b1ba37d8d6
migrating components to ES5 getter/setter
2015-02-06 17:49:04 -05:00
Yotam Mann
0fa6b6cdaf
components' methods return this
2015-02-02 12:49:13 -05:00
Yotam Mann
11ef065861
renamed DryWet to CrossFade
2015-02-02 12:48:04 -05:00
Yotam Mann
b6875955e4
add type getter/setter
2015-02-01 13:32:39 -05:00
Luke Phillips
1f52e24c95
MultibandEQ setters and getters
2015-01-22 13:24:10 +00:00
Luke Phillips
7dad7adfa7
getGain() for Filter class
2015-01-21 09:15:39 +00:00
Luke Phillips
ea5febc95a
DryWet getDry and getWet
2015-01-21 09:07:14 +00:00
Luke Phillips
a99325b01a
DryWet getter function description added
2015-01-20 21:08:26 +00:00
Luke Phillips
4c93abb315
DryWet getter functions added
2015-01-20 21:06:38 +00:00
Luke Phillips
c0ba518f30
MultibandEQ getter functions
2015-01-20 14:03:58 +00:00
Luke Phillips
4cdd3a30da
Filter getter functions
2015-01-20 13:45:12 +00:00
Luke Phillips
a48c7a759d
Envelope getter functions
2015-01-20 13:41:48 +00:00
Luke Phillips
bc7c76998b
LFO getter functions
2015-01-20 12:31:28 +00:00
Yotam Mann
2e15f03490
Revert Tone.Volume representation
2015-01-05 23:33:05 -05:00
Yotam Mann
a60ec836db
migrating to Tone.Volume representation
2015-01-05 22:46:19 -05:00
Yotam Mann
3a0845f009
sync/unsync the LFO
2014-12-19 16:40:06 -05:00
Yotam Mann
6ddf1b372f
single 'setVolume' definition in Master
2014-12-19 16:27:50 -05:00
Luke Phillips
9b4e69eaed
added MultibandEQ
2014-12-17 14:22:58 +00:00
Yotam Mann
63876cafe2
LFO, changing 'rate'->'frequency'
2014-12-08 11:02:47 -05:00
Yotam Mann
daf428b23b
fixed velocity bug
2014-12-08 11:02:22 -05:00
Yotam Mann
ba90b842a1
Envelope no longer has an exponent
2014-12-06 16:48:57 -05:00
Yotam Mann
f7a14f2b37
all frequency values accept a note name as well
2014-12-06 16:48:36 -05:00
Yotam Mann
1b9cc1483b
jsdoc'ing
2014-12-03 17:20:23 -05:00
Yotam Mann
902f1fa24d
updating Envelope ADR types
2014-12-02 10:39:19 -05:00
Yotam Mann
2d0bcffc9f
adding defaults to jsdocs
2014-12-02 01:42:08 -05:00
Yotam Mann
25496dea77
switched to updated chain method
2014-11-30 21:32:09 -05:00
Yotam Mann
152f0cdda5
using updated fan method
2014-11-30 21:20:12 -05:00
Yotam Mann
cf2cb263b2
chain -> connectSeries, fan -> connectParallel
2014-11-30 17:37:29 -05:00
Yotam Mann
310231dbd1
using Tone.WaveShaper instead of native node
2014-11-30 13:20:35 -05:00
Yotam Mann
ffd5ac875a
LFO has a defaults object
2014-11-29 21:54:29 -05:00
Yotam Mann
574c75f7c6
Tone.Limiter is a compressor with limiter settings
2014-11-29 21:47:28 -05:00
Yotam Mann
5fdc2cfd38
updated to new Tone.Scale API
2014-11-29 21:36:32 -05:00
Yotam Mann
f1593c1a29
new class PanVol. combined Pan and Vol
...
useful for making stereo mixer-type things
2014-11-04 01:27:36 -05:00
Yotam Mann
adcf3a0c74
small object count optimization
2014-11-04 01:23:59 -05:00
Yotam Mann
f7a0590ec5
optimizing comb filters
...
also trying to get them to crash less often. (i think it worked)
2014-11-04 00:46:31 -05:00
Yotam Mann
4272e051ee
created ScaledEnvelope as its own class
...
factors out the scaling from the amplitude env and normal envelope
2014-11-04 00:44:16 -05:00
Yotam Mann
043172df7c
keeping reference to Float32Array
...
potentially causing crashes (trying to debug)
2014-11-03 19:22:17 -05:00
Yotam Mann
d0bcc2f931
max delay time on feedback comb filter
2014-11-03 11:34:02 -05:00
Yotam Mann
d3866bcf51
using new Envelope internals
2014-11-01 21:55:19 -04:00
Yotam Mann
a830f4b711
handles exponential scaling
2014-11-01 21:54:40 -04:00
Yotam Mann
264c56a343
small dry/wet optimization
2014-11-01 16:17:27 -04:00
Yotam Mann
7f4b873aa8
Follower uses subtract
2014-10-30 19:44:05 -04:00
Yotam Mann
167d989828
using bufferTime in Follower
2014-10-19 22:07:18 -04:00
Yotam Mann
68dea5880a
3 band compressor
2014-10-19 21:55:55 -04:00
Yotam Mann
fdae3c0b5b
thin DynamicsCompressorNode wrapper
2014-10-19 21:55:18 -04:00
Yotam Mann
baf1f0162a
enforce min time on Tone.Follower
2014-10-13 19:21:34 -04:00
Yotam Mann
d1cf785350
some jsdoc notes on Meter and Recorder
2014-10-13 17:31:07 -04:00
Yotam Mann
05b2415fa6
wrote EQ in terms of MutibandSplit
2014-10-13 15:58:06 -04:00
Yotam Mann
757c114ede
new class MultibandSplit
...
splits incoming signal into low/mid/high frequency bands
2014-10-13 15:57:53 -04:00
Yotam Mann
d1d155f58d
envelope stays tempo relative until triggered
2014-10-02 13:23:04 -04:00
Yotam Mann
2cabd2bd3e
new class FeedbackCombFilter
2014-09-21 13:37:45 -04:00
Yotam Mann
f8ae02b5f9
made Mono into it's own component
2014-09-21 13:37:08 -04:00
Yotam Mann
018498b22a
start out with the min delay time
2014-09-20 21:18:37 -04:00
Yotam Mann
f076dec1e1
fixed dispose method
2014-09-20 19:22:35 -04:00
Yotam Mann
760c397bfd
new class LowpassCombFilter
2014-09-20 18:06:41 -04:00
Yotam Mann
efd2def64b
triggerAttackRelease on Envelope
2014-09-20 15:18:36 -04:00
Yotam Mann
d612dd8705
AmplitudeEnvelope
...
new class
2014-09-20 15:18:08 -04:00
Yotam Mann
ad703e51d1
eq in db now
2014-09-11 20:31:37 -04:00
Yotam Mann
cc95ee6caf
instrument tests
...
fixed dispose methods bc of tests.
2014-09-09 15:30:36 -04:00
Yotam Mann
6637833ed4
added detune parameter
2014-09-09 12:36:14 -04:00
Yotam Mann
71af6ca206
testing dispose methods for all classes.
...
a few classes were not being disposed correctly and leaving some
garbage attached.
2014-09-06 18:55:11 -04:00