Commit graph

2942 commits

Author SHA1 Message Date
Yotam Mann
252ae7b3e4 linking to monosynth 2019-11-03 18:07:13 -05:00
Yotam Mann
3d8a8a4897 fixing example 2019-11-03 18:07:03 -05:00
Yotam Mann
e437ebd846 updating DuoSynth so it passes tests
thanks @this-fifo!
2019-11-03 17:45:50 -05:00
Yotam Mann
59b9f5f6a8 adding recursive omit method 2019-11-03 17:42:51 -05:00
Yotam Mann
b2ebd6876d removing envelope as required by Monophonic
making getLevelAtTime abstract
2019-11-03 17:41:47 -05:00
Yotam Mann
a3acecb776 Merge branch 'pr/565' into typescript 2019-11-03 15:46:36 -05:00
Yotam Mann
cfb19e8334 using deep imports 2019-11-03 15:44:51 -05:00
Yotam Mann
332adefd0d removing unnecessary if 2019-11-03 11:41:03 -05:00
Yotam Mann
b9619d8c68 removing unused variables 2019-10-31 15:43:16 -04:00
Yotam Mann
7549764c38 removing old js files 2019-10-31 15:30:32 -04:00
Yotam Mann
802ce474c7 converting Chorus to ts 2019-10-31 15:29:48 -04:00
Yotam Mann
98aa79125b bind now and immediate to simplify code 2019-10-31 14:54:49 -04:00
Yotam Mann
d647c8b9c8 checking that the listener exists 2019-10-31 14:54:37 -04:00
Yotam Mann
410193d136 testing disconnecting from AudioParam 2019-10-31 14:50:08 -04:00
Yotam Mann
87a86a9071 no need for casting 2019-10-31 14:49:56 -04:00
Yotam Mann
54cac42925 adding some basic conversion tests 2019-10-31 14:45:06 -04:00
Yotam Mann
7ede333128 testing setting ticks 2019-10-31 14:44:59 -04:00
Yotam Mann
757cd380c8 using getStateAtTime when getting state 2019-10-31 14:44:22 -04:00
Yotam Mann
7d93094427 testing event emitters when scheduled event time is in the past 2019-10-31 14:44:01 -04:00
Yotam Mann
89e171b4a3 setting non-cached osc type after starting 2019-10-31 14:22:19 -04:00
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