Yotam Mann
c5c8082d4e
removing unused method
2019-10-30 18:59:38 -04:00
Yotam Mann
5baeddf451
updating examples
2019-10-28 21:28:53 -04:00
Yotam Mann
51af0138fc
adding AMSynth to polysynth options
2019-10-28 15:12:02 -04:00
Yotam Mann
b1351af339
fixing example
2019-10-28 11:50:32 -04:00
Yotam Mann
d2b064f41e
docs: working on code examples
2019-10-25 16:54:33 -04:00
Yotam Mann
7c026cc16b
only release one voice at a time
2019-10-22 23:08:42 -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
fe6aea9641
polysynth always has at least one voice
2019-10-13 22:40:57 -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
70d11f4b1a
Don't dispose the synth in the offline context
2019-10-03 17:34:06 -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
401d278063
Adding categories to all the nodes
2019-09-16 10:15:23 -04:00
Yotam Mann
1bde88a19b
linting
2019-09-14 18:12:44 -04:00
Yotam Mann
261a5f4c3b
normalizing whitespace in comments
2019-09-14 16:39:18 -04:00
Yotam Mann
336d1b71db
PolySynth uses new context.setInterval
2019-09-06 14:55:20 -04:00
Yotam Mann
736106de5f
accidentally put extra tab before name
2019-09-04 19:18:44 -04:00
Yotam Mann
75a35108af
name is a readonly string
2019-09-04 18:38:04 -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
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
Yotam Mann
539a5c45d8
updating docs
2019-08-27 08:57:00 -07: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
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
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
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
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
c81364610c
converting polysynth to typescript
...
slightly updated API includes voice stealing
2019-08-12 00:16:03 -04:00