Yotam Mann
91ae308e66
making sure that draw/transport/destination are disposed when the context is closed
2019-10-31 11:41:21 -04:00
Yotam Mann
4aedaeea77
setting exponent in test
...
for additional coverage
2019-10-31 09:56:09 -04:00
Filipe Herculano
779b4d68c5
update DuoSynth interface options to match class type and adjust object parameters
2019-10-30 19:22:24 -04:00
Yotam Mann
7bc2dc1f96
testing setting different global contexts
2019-10-30 19:18:01 -04:00
Yotam Mann
8d775f7233
verifying that UserMedia doesn't work in offline context
2019-10-30 18:59:55 -04:00
Yotam Mann
c5c8082d4e
removing unused method
2019-10-30 18:59:38 -04:00
Yotam Mann
6ac43559b1
testing that destination exists before closing
...
forces the context to initialize
2019-10-30 18:59:32 -04:00
Yotam Mann
d4d403bffb
testing closing edge case
2019-10-30 18:59:15 -04:00
Filipe Herculano
79dad22648
start converting DuoSynth to Typescript
2019-10-30 18:54:30 -04:00
Yotam Mann
546ec43151
updating example
...
changing updateInterval to be lookAhead/2 instead of 3
2019-10-30 18:05:28 -04:00
Yotam Mann
816294b9c0
refactoring fromContext
2019-10-30 14:49:02 -04:00
Yotam Mann
54faf744fd
exporting context
2019-10-30 14:48:41 -04:00
Yotam Mann
a9c8927a52
some sanity checks on the final interface
2019-10-30 14:48:29 -04:00
Yotam Mann
d845a435b1
ScaledEnvelope is redundant with the FrequencyEnvelope
...
currently no use for it though might reintroduce it if it feels necessary down the road.
2019-10-30 13:22:53 -04:00
Yotam Mann
fc80ec1f8e
fixing import paths
2019-10-30 13:13:32 -04:00
Yotam Mann
d56572c94c
converting Tremolo to typescript
2019-10-30 13:13:26 -04:00
Yotam Mann
79d2c3d41b
convert Chebyshev to typescript
2019-10-29 23:35:27 -04:00
Yotam Mann
8ce429e7ba
removing js files
2019-10-29 23:14:38 -04:00
Yotam Mann
f5ea6be5d4
exporting AutoWah
2019-10-29 23:14:17 -04:00
Yotam Mann
3a40d841e3
adding category
2019-10-29 23:14:11 -04:00
Yotam Mann
f27df3a215
converting AutoWah to typescript
2019-10-29 23:14:03 -04:00
Yotam Mann
889cc8446b
fixing docs
2019-10-29 23:13:28 -04:00
Yotam Mann
9d03004ec7
exponential scale class
2019-10-29 23:13:22 -04:00
Yotam Mann
affe2e75de
adding categories
2019-10-29 23:12:51 -04:00
Yotam Mann
97cdc5bf07
adding comparison files
2019-10-29 18:18:04 -04:00
Yotam Mann
ad2c2ff651
less peaky settings
2019-10-29 18:09:20 -04:00
Yotam Mann
444b90ff92
alphabetizing
2019-10-29 18:09:10 -04:00
Yotam Mann
5dd6a2623b
Merge branch 'pr/563' into typescript
2019-10-29 17:49:52 -04:00
Yotam Mann
95142f7e64
reducing the need to function twice in constructor
2019-10-29 17:49:40 -04:00
Yotam Mann
e67c9e1724
simplifying FreqEnvelope API slightly
2019-10-29 17:49:22 -04:00
Yotam Mann
73d3e59506
merging MonoSynth
2019-10-29 17:48:59 -04:00
Yotam Mann
bc08a1aea9
docs: adding more elaborate examples and explainations
2019-10-29 14:51:29 -04:00
Yotam Mann
1f298914fc
removing old js files
2019-10-29 14:31:01 -04:00
Yotam Mann
aa56dc1727
more complex harmonicity example
2019-10-29 14:30:25 -04:00
Yotam Mann
a47a160d8e
export immediate
2019-10-29 14:30:12 -04:00
Yotam Mann
559cdae1fb
added immediate
method
2019-10-29 14:29:52 -04:00
Yotam Mann
5baeddf451
updating examples
2019-10-28 21:28:53 -04:00
Yotam Mann
41897320a0
exporting FrequencyEnvelope
2019-10-28 21:28:41 -04:00
Yotam Mann
0767a52770
adding category
2019-10-28 21:28:33 -04:00
Yotam Mann
703f27a5ab
feat: adding send/receive to Channel
...
Removing it from all ToneAudioNode's. Now it's just on the Channel Interface
2019-10-28 21:23:23 -04:00
Yotam Mann
28c078dcad
converting Channel to ts
2019-10-28 20:59:54 -04:00
Yotam Mann
68a7bb03ec
doc tweaks
2019-10-28 20:59:01 -04:00
Yotam Mann
d1fab1c089
converting MidSideMerge/Split to Typescript
2019-10-28 20:42:43 -04:00
Yotam Mann
6ea1ca0a18
converting BitCrusher to typescript
...
uses the AudioWorklet
2019-10-28 19:11:46 -04:00
Yotam Mann
3efba33604
removing old js file
2019-10-28 19:11:20 -04:00
Filipe Herculano
fdf6433e64
fix MonoSynth test using incorrect Offline helper
2019-10-28 18:24:56 -04:00
Filipe Herculano
22d5fb0ab9
convert MonoSynth to Typescript
2019-10-28 18:12:20 -04:00
Yotam Mann
c1dbb84f7d
using relative paths
2019-10-28 17:53:51 -04:00
Yotam Mann
b66bc77910
removing old JS files
2019-10-28 17:50:38 -04:00
Yotam Mann
24a300756d
converting AutoPanner to typescript
2019-10-28 17:50:31 -04:00
Yotam Mann
66f285bdf2
base class for LFO-based effects
2019-10-28 17:50:05 -04:00
Yotam Mann
b9bf3e2892
exporting AutoFilter
2019-10-28 17:32:27 -04:00
Yotam Mann
5eba7af64d
interlinking docs
2019-10-28 17:31:39 -04:00
Yotam Mann
a0fd3f1cec
updating example
2019-10-28 17:31:32 -04:00
Yotam Mann
a54bde11f3
adding category
2019-10-28 17:31:25 -04:00
Yotam Mann
ba7b9ec0e2
converting AutoFilter to typescript
2019-10-28 17:31:17 -04:00
Yotam Mann
304802d515
using different cancel methods depending on what is scheduled
2019-10-28 16:41:01 -04:00
Yotam Mann
fbd1e3c450
using floating point comparisons
2019-10-28 16:40:30 -04:00
Yotam Mann
51af0138fc
adding AMSynth to polysynth options
2019-10-28 15:12:02 -04:00
Yotam Mann
cd37884156
removing unused deps
2019-10-28 15:11:42 -04:00
Yotam Mann
5424c05eb2
AM and FM Synth inherit from ModulationSynth base class
2019-10-28 15:11:36 -04:00
Yotam Mann
c217ef5a2c
removing old files
2019-10-28 14:22:28 -04:00
Yotam Mann
1134ce4c69
making sure that the attack is not canceled if the release is scheduled once it ends
...
fixes #560
2019-10-28 14:22:10 -04:00
Yotam Mann
179ef7d730
converting AMSynth to typescript
2019-10-28 12:43:24 -04:00
Yotam Mann
125c5af464
removing unnecessary detune option
2019-10-28 12:43:11 -04:00
Yotam Mann
24f5cd0c95
Merge branch 'pr/559' into typescript
2019-10-28 12:20:17 -04:00
Yotam Mann
6c9d3d8294
baseFrequency is Hertz instead of Frequency
...
then casting to number (and potential errors that could cause) is avoided
2019-10-28 12:20:04 -04:00
Yotam Mann
d7194d05eb
using const over let
2019-10-28 12:19:33 -04:00
Yotam Mann
9591fdedf8
passing in arguments as labelled
2019-10-28 12:19:22 -04:00
Yotam Mann
f4dcc08ed2
create a global Draw object (linked to the Context)
2019-10-28 12:12:27 -04:00
Yotam Mann
b1351af339
fixing example
2019-10-28 11:50:32 -04:00
Yotam Mann
49dfe371a3
exporting all core classes
...
also exporting ftom and mtof
2019-10-28 11:50:13 -04:00
Yotam Mann
7d23ae7bad
removing unused types
2019-10-28 11:40:09 -04:00
Yotam Mann
87ae677a59
linting
2019-10-28 11:38:17 -04:00
Yotam Mann
3a63154b7c
using the unit name instead of the unit type as the Param generic
2019-10-28 11:37:53 -04:00
Filipe Herculano
4d93b6c1b0
remove redundant accessors
2019-10-27 17:45:21 -04:00
Filipe Herculano
efd114d2db
convert FrequencyEnvelope to Typescript
2019-10-26 11:43:00 -04:00
Yotam Mann
f7464e2a5f
Merge branch 'pr/557' into typescript
2019-10-25 17:03:03 -04:00
Yotam Mann
49e3a8d869
exporting ScaledEnvelope
2019-10-25 17:02:52 -04:00
Yotam Mann
4bcde39fdc
linting / updating paths
2019-10-25 17:02:44 -04:00
Yotam Mann
08a61386ad
exporting missing Signal classes
2019-10-25 16:54:44 -04:00
Yotam Mann
d2b064f41e
docs: working on code examples
2019-10-25 16:54:33 -04:00
Yotam Mann
4266d2b93c
updating examples
2019-10-24 18:01:27 -04:00
Yotam Mann
b73e127310
docs: updating example
2019-10-23 16:43:12 -04:00
Yotam Mann
b2a9c9a303
working on examples
2019-10-23 16:30:07 -04:00
Yotam Mann
cc7727a85c
updating docs
2019-10-22 23:39:35 -04:00
Yotam Mann
7c026cc16b
only release one voice at a time
2019-10-22 23:08:42 -04:00
Yotam Mann
42cfbcd456
linting docs and examples
2019-10-22 23:04:52 -04:00
Filipe Herculano
9209bdfe07
convert ScaledEnvelope to Typescript
2019-10-19 18:26:37 -04:00
Yotam Mann
4c5e05d7ca
making time optional
2019-10-16 14:59:03 -04:00
Yotam Mann
bc0d83d4cf
make sure the right voice is released by flagging a voice as released
2019-10-16 14:31:40 -04:00
Yotam Mann
d1e259238f
don't reuse voices
...
just create a new one. hopefully causes fewer problems
2019-10-15 23:15:41 -04:00
Yotam Mann
981431f0d5
exporting loop
2019-10-15 22:42:45 -04:00
Yotam Mann
ba2af1fb03
creates a new AudioContext when Context is created
...
used to reuse same context.
2019-10-13 23:20:42 -04:00
Yotam Mann
fe6aea9641
polysynth always has at least one voice
2019-10-13 22:40:57 -04:00
Yotam Mann
e1a1552bcf
exporting analysis classes
2019-10-13 21:11:44 -04:00
Yotam Mann
032808dd2a
ensure that partialsCount is never below 0
2019-10-13 15:05:41 -04:00
Yotam Mann
3a89459916
more sensible default
2019-10-11 18:59:43 -04:00
Yotam Mann
3f53201906
noting range
2019-10-11 18:58:56 -04:00
Yotam Mann
2dab77c7a8
updating partialCount when partials is set
2019-10-09 17:32:37 -04:00
Yotam Mann
2753d3756b
the partials length is controllable by the partialCount
2019-10-09 17:06:57 -04:00
Yotam Mann
54059825ae
set the partials from the cache as well
2019-10-09 15:21:02 -04:00
Yotam Mann
47642ba51d
using floating point comparison
2019-10-09 13:00:16 -04:00
Yotam Mann
0f9bac5101
making it possible to have a release of time 0
2019-10-09 12:54:14 -04:00
Yotam Mann
b3875697b6
fixing path
2019-10-09 12:46:00 -04:00
Yotam Mann
682d263819
Wrapping properties to be able to test range before assignment
...
throw errors at time of assignment
2019-10-09 12:41:51 -04:00
Yotam Mann
f753aef015
Adding range test
2019-10-09 12:38:10 -04:00
Yotam Mann
3323a7574e
using the sig output instead of the destination
...
since some envelopes are silent
2019-10-09 10:06:17 -04:00
Yotam Mann
fc5b6f7c46
feat: Render a segment of the envelope as an array
2019-10-08 19:23:21 -04:00
Yotam Mann
9ad519ea10
feat: Get an oscillator wave as an array
2019-10-08 19:22:59 -04:00
Yotam Mann
2935f6567d
exporting NoiseSynth
2019-10-07 17:02:41 -04:00
Yotam Mann
1668decf70
feat: Convolver is just a wrapper around the ConvolverNode, no longer an effect
...
a more basic wrapper around the ConvolverNode which unlike the Convolver effect, does not have a dry/wet knob
2019-10-07 15:37:07 -04:00
Yotam Mann
34f731bf7b
testing being constructed with different voices
2019-10-07 15:01:22 -04:00
Yotam Mann
6ba7fb7fb3
including FMSynth in PolySynth
2019-10-07 13:57:09 -04:00
Yotam Mann
10469ba924
only dispose when things are in the only AudioContext
...
otherwise it leads to silence
addresses #551
2019-10-04 12:04:53 -04:00
Yotam Mann
467cc48c8c
adding isOffline flag
...
helpful for some behaviors which only occur in the online AudioContext
2019-10-04 11:51:52 -04:00
Yotam Mann
889dafa45e
feat: OfflineContext returns a ToneAudioBuffer
...
instead of an AudioBuffer
2019-10-03 18:03:21 -04:00
Yotam Mann
e98545a852
removing js file
2019-10-03 17:34:18 -04:00
Yotam Mann
70d11f4b1a
Don't dispose the synth in the offline context
2019-10-03 17:34:06 -04:00
Yotam Mann
81887b91a3
refactor: initialize Context when getting destination
or transport
2019-10-03 17:33:39 -04:00
Yotam Mann
11544708fc
feat: OfflineContext yields thread every second of audio rendered
...
so that it doesn't block the thread.
fixes #436
2019-10-03 17:29:30 -04:00
Yotam Mann
92816c3bc2
increasing test threshold
2019-09-30 16:54:40 -04:00
Yotam Mann
7f090a3c4d
Merge branch 'pr/546' into typescript
2019-09-30 16:48:55 -04:00
Yotam Mann
13f2a6af68
getting all tests to pass
2019-09-30 16:48:39 -04:00
Yotam Mann
f6a17b878f
removing unnecessary assignment
2019-09-29 17:26:11 -04:00
Yotam Mann
a2153571c2
types: correcting typing
2019-09-29 17:25:55 -04:00
Yotam Mann
04405afd84
feat: Adding triggerRelease to PluckSynth
...
works by ramping the resonance down over the 'release' duration
2019-09-29 17:25:31 -04:00
Yotam Mann
18b90a00a2
changing var name and using 'swappable' property
2019-09-29 13:05:51 -04:00
Yotam Mann
c155d716ac
removing logging
2019-09-29 13:05:25 -04:00
Yotam Mann
1a2d82f33b
only mark certain Params as swappable
2019-09-29 12:20:54 -04:00
Yotam Mann
5f41b0bc76
assert that there is a device
2019-09-29 10:35:46 -04:00
Yotam Mann
b379a20b6d
Using GainNode instead of gain
...
fixes #299
2019-09-29 10:30:57 -04:00
Yotam Mann
410098c075
removing old js file
2019-09-29 10:25:47 -04:00
Yotam Mann
13f08f8dc7
clarifying docs
2019-09-29 10:19:56 -04:00
Yotam Mann
f86f940987
adding categories
2019-09-29 10:19:35 -04:00
Yotam Mann
eb7b14fdc8
fixing docs
2019-09-29 10:19:08 -04:00
Yotam Mann
d88de11cfe
converting Follower to typescript
2019-09-27 18:22:11 -04:00
Yotam Mann
7c3582bea3
refactor: implementing FeedbackCombFilter with AudioWorkletNode
...
handles sub 128 sample feedback
2019-09-27 17:58:04 -04:00
Yotam Mann
4eb05a1ec0
using promise response instead of done()
2019-09-27 17:57:19 -04:00
Yotam Mann
726fb26f80
exporting comb filters
2019-09-27 17:55:31 -04:00
Yotam Mann
2ee8cb1a52
feat: Wrapper around the AudioWorkletNode
2019-09-27 17:55:09 -04:00
Yotam Mann
23ca0f9688
feat: Can set the parameter after constructing Param
...
used in the new ToneAudioWorklet node
2019-09-27 17:53:42 -04:00
Yotam Mann
f7bdd7528f
feat: adding AudioWorkletNode constructors to Context
2019-09-27 17:52:37 -04:00
Yotam Mann
9eb395509c
style: using javascript string template interpreter for vscode
2019-09-27 17:50:49 -04:00
Jacob Clarke
420a3cd0e7
Added FMSynth and test
2019-09-27 23:36:26 +10:00
Yotam Mann
ce93214e43
using OnePoleFilter in LowpassCombFilter and PluckSynth
...
means an API change since dampening is no longer a signal rate parameter
2019-09-24 22:41:58 -04:00
Yotam Mann
52c0b7d56f
adding OnePoleFilter
...
does a single pole highpass and lowpass
addresses #531
2019-09-24 22:08:50 -04:00
Yotam Mann
ed367e0f9b
adding nominal range to properties
2019-09-24 17:21:59 -04:00
Yotam Mann
df24096376
filter rolloff enum
2019-09-24 17:18:52 -04:00
Yotam Mann
f2285a12b6
setting min and max range for properties
2019-09-24 17:12:46 -04:00
Yotam Mann
732efd563f
can pass in min and max values into constructor
2019-09-24 17:12:12 -04:00
Yotam Mann
a08af1a39c
createIIR takes either number[] of float32array
2019-09-23 10:00:43 -04:00
Yotam Mann
fdcda13e32
adding pluck synth to export
2019-09-21 13:10:25 -04:00
Yotam Mann
03aa301c75
adding filter rolloff type
2019-09-21 13:10:19 -04:00
Yotam Mann
70df9df641
fixing type for ratio
2019-09-21 13:09:06 -04:00
Yotam Mann
ec3c1381c5
removing unused stuff
2019-09-20 20:04:45 -04:00
Yotam Mann
0ffc5d65da
deleting old js files
2019-09-20 18:51:51 -04:00
Yotam Mann
4d5b63d97e
adding categories for docs
2019-09-20 18:51:45 -04:00
Yotam Mann
1dd208c1ea
converting UserMedia to ts
2019-09-20 18:51:17 -04:00
Yotam Mann
a68dea0a02
adding createMediaStreamSource
...
should create BaseContext class to better handle this case
2019-09-20 18:50:22 -04:00
Yotam Mann
d612d9a793
using const instead of var
2019-09-20 17:56:21 -04:00
Yotam Mann
2365894608
Merge branch 'pr/543' into typescript
2019-09-20 17:55:50 -04:00
Yotam Mann
2b86adafb2
small linting and docing
2019-09-20 17:55:36 -04:00
Yotam Mann
f8e7a81490
linting
2019-09-20 17:50:14 -04:00
Yotam Mann
dd22e298e5
exporting debug
2019-09-20 17:49:54 -04:00
Yotam Mann
26855a9398
using the clocks ticks instead of tracking offset
...
addresses #544
2019-09-20 17:46:30 -04:00
Yotam Mann
72b9604d8e
using epsilon floating point comparisons
2019-09-20 17:45:22 -04:00
Yotam Mann
c35666c6fa
moving epsilon comparisons to it's own file
2019-09-20 17:44:55 -04:00
Yotam Mann
9625492b2f
including GrainPlayer in export
2019-09-20 11:06:40 -04:00
Yotam Mann
82ae4930af
adding some additional coverage tests
2019-09-20 10:11:03 -04:00
Yotam Mann
be634eb093
running all logging and warning through Logger object
...
makes it possible to implement a Logger interface to visualize logging.
2019-09-20 00:31:43 -04:00
Yotam Mann
4be7043bea
testing matching within small epsilon
2019-09-20 00:19:38 -04:00
Yotam Mann
f1a0990ee9
comparisons all done within some small epsilon
...
fixes floating point errors
fixes #422
2019-09-20 00:19:19 -04:00
Yotam Mann
315070afca
implemented the TODO feature
...
removing comment
2019-09-20 00:18:02 -04:00
Yotam Mann
df35666759
simplifying time math
...
since the time is already computed into seconds
2019-09-20 00:17:28 -04:00
Yotam Mann
0e0073b75b
adding logging for restart
2019-09-20 00:16:45 -04:00
Yotam Mann
3f6bcd9438
undoing additional lookAhead
...
turns out to not be necessary
2019-09-20 00:16:03 -04:00
Filipe Herculano
090177efdd
update Pow to extend SignalOperator instead
2019-09-19 20:49:02 -04:00
Yotam Mann
70efec4637
add an additional lookAhead to the onended callback
...
this fixes an issue where the source was scheduled to stop in the time between the current time and the lookAhead time.
fixes #422
2019-09-19 18:22:44 -04:00
Yotam Mann
1426da90c4
adding restart method
...
with test
2019-09-19 17:09:30 -04:00
Yotam Mann
be4bf84369
inforce increase in time
2019-09-19 16:56:48 -04:00
Yotam Mann
3ab260de90
import transport for the side effects
2019-09-19 16:55:57 -04:00
Yotam Mann
5d128470c5
convert GrainPlayer to typescript
2019-09-19 16:55:46 -04:00
Yotam Mann
ace049a9a2
render just the clock portion without the audio
2019-09-19 16:55:09 -04:00
Yotam Mann
7a85c4b68a
some debugging
2019-09-19 16:53:53 -04:00
Yotam Mann
38ef65fcb2
TimelineValue holds a single schedulable value
...
get/set based on time.
2019-09-18 11:15:10 -04:00
Yotam Mann
cf957ff37e
Looping is a schedulable parameter
...
fixes #448
2019-09-17 19:33:41 -04:00
Yotam Mann
4c9e6cbd4e
testing the interval
2019-09-17 15:34:40 -04:00
Yotam Mann
abc6ef0e2b
removing old classes
2019-09-17 14:46:35 -04:00
Yotam Mann
e44005138d
quote props only when needed
2019-09-17 14:46:26 -04:00
Yotam Mann
64189a8685
converting Loop to typescript
2019-09-17 14:45:58 -04:00
Yotam Mann
1709f46d83
testing progress when not looping
2019-09-17 14:18:05 -04:00
Yotam Mann
d119f67356
testing signal syncing
2019-09-17 14:13:42 -04:00
Yotam Mann
142e169e74
initialize the context before closing it
2019-09-17 14:07:34 -04:00
Yotam Mann
d82d715c64
testing out the max cache-size for the oscillator periodic wave
2019-09-17 14:04:32 -04:00
Yotam Mann
c5d1920d93
adding category to docs
2019-09-17 13:55:51 -04:00
Yotam Mann
9ea47a6905
removing unused imports
2019-09-17 13:54:30 -04:00
Yotam Mann
0bb0f3c591
linting
2019-09-17 13:54:24 -04:00
Yotam Mann
6edc34af0b
Merge branch 'pr/537' into typescript
2019-09-17 13:53:08 -04:00
Yotam Mann
e52c588386
updating typing
2019-09-17 13:52:57 -04:00
Yotam Mann
d435dcae96
linting
2019-09-17 13:40:07 -04:00
Yotam Mann
7c20589ea0
Merge branch 'pr/538' into typescript
2019-09-17 13:37:58 -04:00
Yotam Mann
536dbb7406
updating comments and typing
2019-09-17 13:37:43 -04:00
Yotam Mann
5ed8c19f7c
testing returns some keys, but not ones that are omitted
2019-09-17 12:21:27 -04:00
Yotam Mann
470e906d15
doesn't require a custom get
function
...
testing that it gets all of the attributes
2019-09-17 12:21:00 -04:00
Yotam Mann
44cbe181df
removing props which are not in the default obj
2019-09-17 12:20:37 -04:00
Filipe Herculano
c5dc4fa2ca
fix set to use exponent instead of value
2019-09-17 10:02:43 -04:00
Filipe Herculano
c59a12ced6
Merge branch 'typescript' of https://github.com/Tonejs/Tone.js into typescript
2019-09-16 18:18:32 -04:00
Filipe Herculano
00a936de0f
convert Pow to typescript
2019-09-16 18:18:03 -04:00
Yotam Mann
069a114a31
fixing indentation
2019-09-16 11:09:44 -04:00
Yotam Mann
82b2376959
updating categories
2019-09-16 11:05:24 -04:00
Yotam Mann
36db2c3cdc
updating example
2019-09-16 10:49:35 -04:00
Yotam Mann
dfcbfae824
adding Event category
2019-09-16 10:49:30 -04:00
Yotam Mann
401d278063
Adding categories to all the nodes
2019-09-16 10:15:23 -04:00
Yotam Mann
e8e785ffdd
linting
2019-09-15 23:32:40 -04:00
Yotam Mann
be9fba41b7
updating docs
2019-09-15 14:39:55 -04:00
Yotam Mann
852c78df79
updating internal links
...
to [[style]]
2019-09-14 19:55:50 -04:00
Yotam Mann
e63cbf8a82
linting
2019-09-14 19:55:39 -04:00
Yotam Mann
2d93d7ae23
updating docs
2019-09-14 18:44:37 -04:00
Yotam Mann
1bde88a19b
linting
2019-09-14 18:12:44 -04:00
Yotam Mann
61c9f191b6
removing calls to tslint
...
getting rid of tslint from project and using eslint instead
2019-09-14 18:06:46 -04:00
Yotam Mann
286692e67b
updating block comment style
2019-09-14 17:47:07 -04:00
Yotam Mann
261a5f4c3b
normalizing whitespace in comments
2019-09-14 16:39:18 -04:00
Yotam Mann
829a7ebd2c
fixing compressor test
2019-09-12 16:05:47 -04:00
Yotam Mann
39f3f42b64
Revert "Merge branch 'pr/542' into typescript"
...
This reverts commit b94d590a0b
, reversing
changes made to 9be3ffeb05
.
2019-09-12 16:03:35 -04:00
Yotam Mann
b94d590a0b
Merge branch 'pr/542' into typescript
2019-09-12 15:56:05 -04:00
Yotam Mann
9be3ffeb05
removing js files
2019-09-12 15:54:28 -04:00
Yotam Mann
a15042d290
exporting options
2019-09-12 15:53:30 -04:00
Yotam Mann
dd105d4622
hiding unused variables
2019-09-12 15:53:21 -04:00
Yotam Mann
f6749c043f
updating types
2019-09-12 15:53:05 -04:00
Yotam Mann
65b98d9923
updating docs
2019-09-12 15:52:57 -04:00
Yotam Mann
6c67ebd9ec
fixing example
2019-09-12 15:52:47 -04:00
Yotam Mann
7aa426e973
Updating docs
2019-09-12 15:52:38 -04:00
Jack Anderson
7e6ea23f49
optimize Tone.isObject
...
- this should be about 25% faster
- taken from https://github.com/jonschlinkert/isobject
- custom perf test: https://jsbench.me/24k0gdoxa6/1
2019-09-12 09:45:41 -07:00
Yotam Mann
55733930cd
fixing typo
...
testing that it works
2019-09-10 22:42:04 -04:00
Yotam Mann
89fcc3d7af
converting Mono to typescript
2019-09-10 22:38:48 -04:00
Yotam Mann
fd75074ab0
testing 'off' without an 'on'
2019-09-10 10:45:41 -04:00
Yotam Mann
e85b59755e
converting PanVol to ts
2019-09-10 10:34:47 -04:00
Yotam Mann
7f2dbbcb25
removing js file
2019-09-10 10:08:09 -04:00
Yotam Mann
8205db5485
removing unused var
2019-09-10 10:08:01 -04:00
Yotam Mann
3d26c3adba
converting Solo to ts
2019-09-10 10:07:50 -04:00
Yotam Mann
daf340ba69
invoke the onloaded promise deferred when the samples are already loaded
2019-09-10 00:16:58 -04:00
Yotam Mann
7f1d529918
removing unused dep
2019-09-10 00:16:23 -04:00
Yotam Mann
92cb3b1542
invoke onload if the buffers object is already fully loaded
2019-09-10 00:07:10 -04:00
Yotam Mann
77c6a18cd8
changing name of unused var
2019-09-10 00:06:52 -04:00
Yotam Mann
05f83239d2
removing old js file
2019-09-09 23:51:44 -04:00
Yotam Mann
009d92909e
simplifying the add method
...
doesn't need to test at both if statements assuming that the API is followed
2019-09-09 23:51:31 -04:00
Yotam Mann
4ae119eb77
testing that the underlying buffer is the same
...
not necessarily the same ToneAudioBuffer obj
2019-09-09 23:51:09 -04:00
Yotam Mann
2fb44774c7
removing unused import
2019-09-09 23:50:53 -04:00
Yotam Mann
4453025efc
testing that it can be constructed with an AudioBuffer
2019-09-09 23:42:04 -04:00
Yotam Mann
1152ee1ad6
converting Players to typescript
2019-09-09 23:39:32 -04:00
Yotam Mann
481fde2757
allows ToneAudioBuffers to add a buffer which is not loaded
...
also simplifies code a little
2019-09-09 23:39:00 -04:00
Yotam Mann
7be307926f
test that a warning is fired
2019-09-09 23:38:34 -04:00
Yotam Mann
2aa03e5805
removing old classes
2019-09-09 23:20:54 -04:00
Yotam Mann
e970d59c98
adding DCMeter which tests a signal output instead of returning a decibel or waveform value
...
replaces getValue method of Meter
2019-09-09 19:28:39 -04:00
Yotam Mann
f2f1530ad1
Adding MeterBase class to reuse some code
2019-09-09 19:27:45 -04:00
Yotam Mann
bf84a38c19
add function to test if method returns warning
2019-09-09 19:27:14 -04:00
Yotam Mann
51f714e505
adding the ability to convert the output to normalRange instead of decibel
2019-09-09 18:30:53 -04:00
Yotam Mann
52a5417ff9
converting FFT to typescript
2019-09-09 18:24:07 -04:00
Yotam Mann
3b52805812
making constructor arg optional
2019-09-09 18:23:48 -04:00
Yotam Mann
a37f5b919b
converting Meter to ts
2019-09-09 17:53:39 -04:00
Yotam Mann
08d5170501
converting Panner3D to typescript
2019-09-08 15:17:20 -04:00
Yotam Mann
fd35fa6383
removing test code
2019-09-08 14:38:17 -04:00
Yotam Mann
c05fd4b3e2
pointing at correct output
2019-09-08 14:12:01 -04:00
Yotam Mann
93b5e1bcf5
removing unneeded comment
2019-09-08 14:08:33 -04:00
Yotam Mann
58a7d090a7
using updated param generic
2019-09-08 14:08:25 -04:00
Yotam Mann
f96f5ff892
pointing to updated param as input
2019-09-08 14:08:18 -04:00
Yotam Mann
8669f2b28e
specifying type in Param generic
2019-09-08 14:07:58 -04:00
Yotam Mann
a7d5bdbabf
updating types
2019-09-08 13:49:28 -04:00
Yotam Mann
62d3783ba5
removing unused params
2019-09-08 13:49:19 -04:00
Yotam Mann
1c809914d8
fixing typos
2019-09-08 13:48:31 -04:00
Yotam Mann
5904a151f5
updating docs and types
2019-09-08 13:39:56 -04:00
Yotam Mann
94cc15c46e
should pass in context to param test
2019-09-07 19:16:27 -04:00
Yotam Mann
daf97ae603
adding TickParam class
...
used by TickSignal and TickSource
2019-09-07 19:16:04 -04:00
Yotam Mann
22c95e21bc
removing unused import
2019-09-07 17:57:45 -04:00
Yotam Mann
eb2c352187
adding defaultValue test
2019-09-06 17:16:54 -04:00
Yotam Mann
2f55cc2ec2
wrap the native ConstantSourceNode into ToneConstantSource
...
gets more consistent onended callback and other syntactic sugar
2019-09-06 17:10:32 -04:00
Yotam Mann
66d08cbdcb
fixing typos in comments
2019-09-06 16:20:23 -04:00
Yotam Mann
fa7c984729
'apply' sets the full automation curve from one param to another
2019-09-06 16:18:32 -04:00
Yotam Mann
83e27282d0
changing names to the full name of the event
2019-09-06 16:17:49 -04:00
Yotam Mann
e60d7ffdb1
fixing typedefs
2019-09-06 14:59:21 -04:00
Yotam Mann
336d1b71db
PolySynth uses new context.setInterval
2019-09-06 14:55:20 -04:00
Yotam Mann
294ebeefe7
adding setInterval
...
similar to setTimeout, but the event repeats
2019-09-06 14:46:44 -04:00
Yotam Mann
910d38c3c8
separating the constructor onto two lines
...
makes the documentation more readable
2019-09-06 01:39:56 -04:00
Yotam Mann
651dd956e0
CtrlPattern -> PatternGenerator
...
CtrlPattern is now a generator that iterates over the given array in a pattern
2019-09-05 23:54:26 -04:00
Yotam Mann
81d53ac6e6
remove old js files
2019-09-05 23:53:34 -04:00
Yotam Mann
c27a426daf
converting distortion to typescript
2019-09-05 22:11:02 -04:00
Yotam Mann
95c45a5b7a
adding more documentation to Tone.start
2019-09-05 14:46:26 -04:00
Yotam Mann
1e37601d5d
converting LFO to typescript
2019-09-04 22:57:27 -04:00
Yotam Mann
b2b8a32c91
expose getInitialValue
...
returns the value of the oscillator before it's started
2019-09-04 20:01:16 -04:00
Yotam Mann
736106de5f
accidentally put extra tab before name
2019-09-04 19:18:44 -04:00
Yotam Mann
2289f3c67f
renaming OscillatorNode file to ToneAudioNode
2019-09-04 18:40:28 -04:00
Yotam Mann
51291538a8
renaming file to match class name
2019-09-04 18:39:28 -04:00
Yotam Mann
75a35108af
name is a readonly string
2019-09-04 18:38:04 -04:00
Yotam Mann
a8962eb824
also export Options
2019-09-04 18:34:42 -04:00
Yotam Mann
1285fb19ed
exporting options and class
2019-09-04 18:29:24 -04:00
Yotam Mann
0f31c77923
ability to use MetalSynth in PolySynth
2019-09-04 18:29:11 -04:00
Yotam Mann
10710d8f4c
Test against the old polysynth API
...
notifies people of the update
2019-09-04 11:59:30 -04:00
Yotam Mann
cca7d10566
adding sync test and test long enough to test out the GC process
2019-09-03 23:07:44 -04:00
Yotam Mann
7c1bacb66d
fixing typo
2019-09-03 22:08:20 -04:00
Yotam Mann
d50c444881
using onstatechange instead of addEventListener
2019-09-03 22:00:03 -04:00
Yotam Mann
8e76c0517b
adding MetalSynth export
2019-09-03 21:52:23 -04:00
Yotam Mann
f85adf5dda
resonance is a Frequency
2019-09-03 20:32:44 -04:00
Yotam Mann
e414ce891a
convert MetalSynth to ts and extend Monophonic instead of instrument
...
fixes #486
thank you for the typescripting @jacobclarke92!
2019-09-03 20:20:08 -04:00
Yotam Mann
c167f1a0e1
detune can be passed into the options object
2019-09-03 20:09:46 -04:00
Yotam Mann
6c54f7b3ad
pass in the detune value
2019-09-03 20:09:19 -04:00
Yotam Mann
8ec8ba4a13
Merge branch 'pr/535' into typescript
2019-09-03 19:36:26 -04:00
Yotam Mann
26f931b3ed
PolySynth automatically disposes unused voices
...
expands to the maxPolyphony and will reduce back to 0 allocated voices if unused.
2019-09-03 19:29:59 -04:00
Jacob Clarke
f128fae51e
Converted PluckSynth to TS + filter deps: FeedbackCombFilter, LowpassCombFilter (could not make tests for filters yet due to other issues with ToneWithContext
2019-09-01 21:17:32 +10:00
Jacob Clarke
e49cb07607
Tidied up MetalSynth and restored original comments
2019-09-01 19:19:19 +10:00
Jacob Clarke
d4b0604eb0
Restored some comments
2019-09-01 18:58:56 +10:00
Jacob Clarke
9d95738497
Converted NoiseSynth and test file to ts
2019-09-01 16:27:50 +10:00
Jacob Clarke
d7578f62b0
MetalSynth done, extends Monophonic now
2019-09-01 16:10:32 +10:00
Jacob Clarke
a6fdd24c92
MetalSynth almost done, incomplete triggerAttack function
2019-09-01 14:20:20 +10:00
Yotam Mann
f0f997c09d
swapping constructor order
...
easier to read in the docs
2019-08-30 09:34:04 -07:00
Yotam Mann
2ff888d3b3
adding type classes
...
and basic sanity check
2019-08-30 09:28:45 -07:00
Yotam Mann
544f184b21
updating docs
2019-08-30 09:16:41 -07:00
Yotam Mann
c9d757aaa6
removing references to "@private"
...
old jsdoc comments
2019-08-30 09:08:29 -07:00
Yotam Mann
3e2de8f259
fixing spacing
...
typedoc wants one space before the "@"
2019-08-30 09:06:38 -07:00
Yotam Mann
48ec3f9320
exporting all options
2019-08-30 09:04:03 -07:00
Yotam Mann
5bdbda9c1c
updating docs
2019-08-30 09:03:42 -07:00
Yotam Mann
d073b68b09
fromContext returns the Tone.js objects bound to the passed in context
...
WIP
2019-08-30 09:03:08 -07:00
Yotam Mann
65c63e57a6
fixing doc error
2019-08-30 09:02:18 -07:00
Yotam Mann
99dc1412a8
doc'ing
2019-08-30 09:02:06 -07:00
Yotam Mann
4e156e949d
moving class imports to another file
2019-08-30 09:01:51 -07:00
Yotam Mann
1dba46a822
removing converting files
2019-08-27 10:06:34 -07:00
Yotam Mann
7a5ca042d0
removing converting classes
2019-08-27 10:02:44 -07:00
Yotam Mann
230287f813
updating docs
2019-08-27 10:02:31 -07:00
Yotam Mann
1bf6fb0d51
updating docs
2019-08-27 09:00:59 -07:00
Yotam Mann
b4c2153749
updating docs
2019-08-27 08:58:40 -07:00
Yotam Mann
539a5c45d8
updating docs
2019-08-27 08:57:00 -07:00
Yotam Mann
603bc5b98d
updating docs
2019-08-27 08:53:14 -07:00
Yotam Mann
d57dd7e07a
updating docs
2019-08-27 08:47:52 -07:00
Yotam Mann
a54ab4ea68
using typechecks from standardized-audio-context
2019-08-26 16:52:21 -07:00
Yotam Mann
3fc30c4884
Merge branch 'dev' into typescript
2019-08-26 11:05:12 -07:00
Yotam Mann
0c805aec7b
setContext takes a context or AudioContext or OfflineAudioContext
2019-08-26 10:55:43 -07:00
Yotam Mann
e6431d9890
using standardized-audio-context as AudioContext
...
goal of normalizing behavior across all browsers that support Web Audio.
thanks @chrisguttandin!
2019-08-26 10:55:04 -07:00
Yotam Mann
b09b81c64b
adding categories
2019-08-26 10:44:43 -07:00
Yotam Mann
4c106930e0
adding typedocs
2019-08-21 13:59:01 -07:00
Yotam Mann
e6635058d5
adding readonly to name
2019-08-21 13:44:12 -07:00
Yotam Mann
b018cac113
adding categories
2019-08-21 13:01:12 -07:00
Yotam Mann
8acc11781b
moving params to above constructor
2019-08-21 13:00:44 -07:00
Yotam Mann
e60526c006
fixing typing
2019-08-20 22:51:08 -07:00
Yotam Mann
ff5360f408
converting Panner to ts
2019-08-20 22:50:12 -07:00
Yotam Mann
f1a5c839b9
adding effects tests
2019-08-20 22:23:01 -07:00
Yotam Mann
bea5f32a5c
setting channelCount to 1 and mode to "explicit"
...
fixes issue with std-audio-context and stereo panner
2019-08-20 22:22:52 -07:00
Yotam Mann
1bfdf190d7
FrequencyShifter
...
whoops forgot to include the file in the last commit
2019-08-20 22:02:34 -07:00
Yotam Mann
77a745e09e
FrequencyShifter Effect
...
thanks @Foaly
2019-08-20 21:57:45 -07:00
Yotam Mann
afb9d1726e
converting PhaseShiftAllpass to typescript
2019-08-20 11:19:23 -07:00
Yotam Mann
1439c988e8
Merge branch 'pr/521' into typescript
2019-08-19 19:02:07 -07:00
Yotam Mann
9982db3d1b
adding fadein/out to noise
2019-08-19 18:50:11 -07:00
Maximilian Wagenbach
bb8296d890
Mention antialiasing of the FrequencyShifter in the documentation.
2019-08-19 17:18:27 -07:00
Yotam Mann
ce88eb9b88
using createAudioContext and createOfflineAudioContext
...
easier to eventually move those to standardized-audio-context
2019-08-19 11:15:53 -07:00
Yotam Mann
c2e7c3af04
linting
2019-08-19 10:11:48 -07:00
Yotam Mann
c353df6d5a
skip this test
...
for now
2019-08-19 10:04:28 -07:00
Yotam Mann
94a9f78704
don't merge object when the type is AudioParam, AudioNode or AudioBuffer
...
addresses standardized-audio-context/#642
2019-08-19 10:04:21 -07:00
Yotam Mann
560ac489af
moving tests to AdvancedTypeCheck
2019-08-19 10:01:37 -07:00
Yotam Mann
05586661b3
adding types
2019-08-19 09:59:31 -07:00
Yotam Mann
fd1bbb708b
overloaded offline constructor
2019-08-19 09:59:07 -07:00
Yotam Mann
cf6a4a8e69
export reverb
2019-08-16 16:17:27 -04:00
Yotam Mann
f9b433c4cf
swapping order so that options are used
2019-08-16 15:35:52 -04:00
Yotam Mann
fb38cd4034
adding MembraneSynthOptions to PolySynth
2019-08-16 15:21:09 -04:00
Yotam Mann
68d650862d
MembraneSynth extends Synth
...
addresses #486
Saves some code and enables use in PolySynth
2019-08-16 15:15:14 -04:00
Yotam Mann
c56bef48c4
converting MembraneSynth to ts
2019-08-16 13:57:38 -04:00
Yotam Mann
74ae46a7d4
adding interface to deepMerge which reflects the merging interfaces
2019-08-16 13:57:17 -04:00
Yotam Mann
d1c281c810
using isAudioParam and isAudioNode to test instanceof
...
will make migrating to standardized-audio-context easier
2019-08-16 12:49:04 -04:00
Yotam Mann
4a811bb5aa
updating docs
2019-08-15 19:22:49 -04:00
Yotam Mann
6ae86b1c46
converting compressor to ts
2019-08-15 19:18:09 -04:00
Yotam Mann
77806402b6
omiting synth options on each individual options object
...
instead of on the entire object which caused some issues
2019-08-14 13:16:23 -04:00
Yotam Mann
ed88e6bf10
adding typing to 'connect' method
2019-08-14 13:01:16 -04:00
Yotam Mann
949a123b47
can add a subsequence to a part
2019-08-14 12:03:32 -04:00
Yotam Mann
d4d7c8a78b
testing 'stop' method
...
plays the correct number of iterations
2019-08-14 12:03:21 -04:00
Yotam Mann
9494b570b4
clamping time to current time when not synced
...
correctly this time
2019-08-14 11:52:20 -04:00
Yotam Mann
8dc8c652fa
velocity and time should already be computed by parent class
2019-08-14 10:53:48 -04:00
Yotam Mann
e8cc284b0f
Using an active voices array instead of map
...
enables multiple notes on the same midi note to be scheduled without one deleting the other on _makeVoiceAvailable
2019-08-14 10:50:01 -04:00
Yotam Mann
68dac541dd
using computed values in protected calls to _start and _stop
2019-08-14 10:44:27 -04:00
Yotam Mann
85847df8d2
removing clearing onended callback
...
introduces bugs when multiple oscillators are scheduled to start/stop in the future, the onended callback is not invoked
2019-08-14 10:43:16 -04:00
Yotam Mann
177e903589
logging the computed time
2019-08-14 10:02:22 -04:00
Yotam Mann
ce4fde8e43
releaseAll does not take a release time
...
will release all envelopes immediately. having it be immediate saves the issues that come with tracking active voices
2019-08-13 19:54:11 -04:00
Yotam Mann
6e77fe2e35
clearing onended callback on old oscillators when restarting
2019-08-13 19:36:10 -04:00
Yotam Mann
4594855dc3
adding logging to Source
2019-08-13 19:35:40 -04:00
Yotam Mann
b58812b36a
adding stop and cancelStop logging
2019-08-13 19:34:39 -04:00
Yotam Mann
4d00150b66
computing time
2019-08-13 18:35:07 -04:00
Yotam Mann
0ad8d40c79
making overridden abstract
...
implemented by extending classes
2019-08-12 14:18:34 -04:00
Yotam Mann
e1652b8c20
releaseAll uses multiple triggerRelease instead of directly scheduling the voice
...
seems to cause fewer issues with held notes
2019-08-12 14:15:10 -04:00
Yotam Mann
150e8be0d3
cleaning up
2019-08-12 13:33:18 -04:00
Yotam Mann
3fbe0038cd
convert flag needs to be done before value is set
2019-08-12 13:23:11 -04:00
Yotam Mann
5b3df95487
warning when max polyphony is exceeded
2019-08-12 13:21:55 -04:00
Yotam Mann
4f3e8e233f
removing voice-stealing
...
adds too much complixity for now in terms of scheduling into the future. Using setTimeout for scheduling notes into the future. keeps track of active notes better with this type of scheduling.
2019-08-12 13:18:18 -04:00
Yotam Mann
0b1a6bee58
updating typing
2019-08-12 13:17:37 -04:00
Yotam Mann
8f6c82d6a4
testing setting 'convert' explicitly
2019-08-12 10:20:24 -04:00
Yotam Mann
78d546ea73
testing getting an array curve
2019-08-12 10:16:07 -04:00
Yotam Mann
ef66b85209
using assert instead of conditionals
2019-08-12 10:15:55 -04:00
Yotam Mann
9bd9feb7fb
removing unused import
2019-08-12 10:14:55 -04:00
Yotam Mann
511d98564b
adding some tests for full coverage
2019-08-12 09:37:48 -04:00
Yotam Mann
ef940b778a
adding tests for full coverage
2019-08-12 09:23:01 -04:00
Yotam Mann
e7c429f4ec
adding back envelope
...
getLevelAtTime was used for the portamento
2019-08-12 00:21:34 -04:00
Yotam Mann
0f45fc9efd
removing unused import
2019-08-12 00:20:16 -04:00
Yotam Mann
c81364610c
converting polysynth to typescript
...
slightly updated API includes voice stealing
2019-08-12 00:16:03 -04:00
Yotam Mann
48c410cfc4
added floating point midi conversion
2019-08-12 00:15:30 -04:00
Yotam Mann
4e9fca3df3
marking toMaster as deprecated
2019-08-12 00:15:11 -04:00
Yotam Mann
72e877ff67
hooking up onsilence
2019-08-12 00:13:52 -04:00
Yotam Mann
8b295c32de
removing getLevelAtTime
...
replaced by onsilence which is used to find when the instrument is making sound
2019-08-12 00:13:13 -04:00
Yotam Mann
4d52317fd3
takes an array of partials
2019-08-12 00:09:40 -04:00
Yotam Mann
f79cce25ca
updating docs
2019-08-12 00:09:22 -04:00
Yotam Mann
07cdf6840e
adding onstop to noise
2019-08-11 11:42:17 -04:00
Yotam Mann
18facc5576
safety checks before trying connection
2019-08-10 18:07:10 -04:00
Yotam Mann
edddd9e3ba
moving assert and log to their own file
2019-08-10 18:07:02 -04:00
Yotam Mann
0dff2423e7
checking if connecting to a source with no inputs throws an error
2019-08-10 18:06:41 -04:00
Yotam Mann
f6843947d8
adding onstop to all the sources
2019-08-10 11:51:35 -04:00
Yotam Mann
0719a8ba9d
cancel stop when the ending is implicit
2019-08-09 23:35:08 -04:00
Yotam Mann
fdbf9d64bf
removing 'only' from tests
2019-08-09 23:11:51 -04:00
Yotam Mann
d507188149
Player.onstop is invoked when the buffer has stopped
...
fixes #519
2019-08-09 23:07:09 -04:00
Yotam Mann
b94be3cdc4
moving object creation to constructor body
...
more consistent style
2019-08-09 23:06:30 -04:00
Yotam Mann
63d68f3446
onended callback passes in the file in the parameter
2019-08-09 23:02:28 -04:00
Yotam Mann
73dbca2e1b
removing unused import
2019-08-09 23:00:51 -04:00
Yotam Mann
32d0dfea0e
removing 'only' from tests
2019-08-09 20:01:02 -04:00
Yotam Mann
27e7fbcb91
source tests
...
testing syncing with different offsets and timings
2019-08-09 19:53:10 -04:00
Yotam Mann
70b76c317c
adding TONE_DEBUG_CLASS to the window object
2019-08-08 17:00:42 -04:00
Yotam Mann
25e24800d4
stop the oscillator if it's started
2019-08-08 16:32:22 -04:00
Yotam Mann
cf40ce5349
stop and disconnect the constant source
2019-08-08 16:06:19 -04:00
Yotam Mann
1360828a6c
caching periodic wave computations
...
helps when creating many custom oscillators with the same phase or partials
2019-08-08 14:22:15 -04:00
Yotam Mann
e3d8598533
small optimization which avoids setting the same value
2019-08-08 14:21:20 -04:00
Yotam Mann
4a7c8809e8
linting
2019-08-08 14:17:41 -04:00
Yotam Mann
38d6f9d242
optimization by moving child objects into constructor
...
means that in many cases the param won't be assigned twice
2019-08-08 14:15:56 -04:00
Yotam Mann
73bc128265
small optimization when partials list is []
2019-08-08 13:05:34 -04:00
Yotam Mann
f7405d963a
Removing disconnect on ended
...
not necessary and caused a lot of issues
fixes #463
2019-08-07 11:50:44 -04:00
Yotam Mann
86b2848378
total time = decay + predelay
...
summing instead of subtracting fixes potential range issues when preDelay is larger than decay
fixes #512
2019-08-07 11:48:11 -04:00
Yotam Mann
507f095992
compute time string values for envelope attack/release
...
fixes #501
2019-08-07 11:46:04 -04:00
Yotam Mann
6f4ad826a0
Revert "small optimization to avoid setting the same value twice"
...
This reverts commit 3208497102
.
2019-08-07 11:38:31 -04:00
Yotam Mann
3208497102
small optimization to avoid setting the same value twice
...
happens sometimes on initialization
2019-08-07 00:53:07 -04:00
Yotam Mann
3a3d563c6e
schedule volume from time = 0
2019-08-07 00:52:31 -04:00
Yotam Mann
2397dfedb6
small optimization
...
doesn't set multiply more than once
2019-08-07 00:52:05 -04:00
Yotam Mann
5dbd58e700
moving assertions first
2019-08-06 23:19:03 -04:00
Yotam Mann
2c2c71dd43
updating to new API
2019-08-06 22:54:58 -04:00
Yotam Mann
c0a70924ad
Fixing typing on Oscillator params
2019-08-06 18:24:32 -04:00
Yotam Mann
91db5f9bc7
updating some of the naming and docs
...
thanks @this-fifo!
2019-08-04 15:53:11 -04:00
Yotam Mann
88ea4f5d49
Merge branch 'pr/523' into typescript
2019-08-04 15:47:35 -04:00
Yotam Mann
adce8e2e70
linting
2019-08-04 15:47:02 -04:00
Yotam Mann
9549e98f11
exporting signals
2019-08-04 15:27:44 -04:00
Filipe Herculano
99f607fbcd
fix Scale using incorrect member for input on _setRange
2019-08-04 14:45:49 -04:00
Yotam Mann
4ed750bc1f
using Reflect instead of 'hasOwnProperty'
...
takes care of situation where time has a 'getter'
2019-08-04 13:44:37 -04:00
Yotam Mann
63a0b4e207
Part can accept any object-like thing with a 'time' property
2019-08-04 13:35:48 -04:00
Yotam Mann
1fcd420ee3
using relative paths
2019-08-04 13:21:07 -04:00
Yotam Mann
8af43901bf
exposing utils, units and param
2019-08-04 13:12:39 -04:00
Yotam Mann
0f1218b69e
updating docs
2019-08-04 13:12:23 -04:00
Filipe Herculano
24c989f94c
Merge remote-tracking branch 'upstream/typescript' into typescript
2019-08-04 13:08:58 -04:00
Filipe Herculano
dde20960f3
converting Scale to typescript
2019-08-04 13:08:43 -04:00
Yotam Mann
dd0158d0bf
exposing ToneAudioBuffers
2019-08-04 11:04:48 -04:00
Yotam Mann
6160d4ec70
exposing conversions
2019-08-04 11:02:14 -04:00