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
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