Commit graph

1027 commits

Author SHA1 Message Date
Yotam Mann
48284d78fb adding decorators which validate the input value range 2019-12-16 17:13:03 -05:00
Yotam Mann
2b0c2a64f1 values out of range throw an error
used to fail silently
2019-12-16 17:12:19 -05:00
Yotam Mann
fc84ec281b adding clamp function 2019-12-16 16:50:07 -05:00
Yotam Mann
389ccf8722 using assert instead of this.assert
removing this.assert from Tone.js classes
2019-12-16 15:58:31 -05:00
Yotam Mann
caf58ffe0b throws error when set outside of range 2019-12-15 02:19:12 -05:00
Yotam Mann
192b749b85 Gain can also have min/max range 2019-12-14 17:27:54 -05:00
Yotam Mann
a2d5c3d634 adding the intial state at time 0 2019-12-14 16:11:56 -05:00
Yotam Mann
267f1befc0 Simplifying Freeverb dispose 2019-12-14 11:53:12 -05:00
Yotam Mann
fce95bea6e feat: clamp the values to the defined min/maxValue 2019-12-11 10:11:40 -05:00
Yotam Mann
61cfd3ab8c make sure that maxDelay is readonly 2019-12-10 23:34:12 -05:00
Yotam Mann
cf8965f921 fixing case where buffer is not set
previously would prefix "/"
2019-12-09 17:43:58 -05:00
Yotam Mann
9f51cb5293 exporting BaseContext 2019-12-06 17:13:22 -05:00
Yotam Mann
660915680a feat: when the signal is overridden it should not schedule any change in values
fixes #585
2019-12-06 12:55:30 -05:00
Yotam Mann
11f7c2207a test the initial state 2019-11-21 11:08:22 -05:00
Yotam Mann
16d71718dd removing case that can't happen
there is an event added in the constructor at time 0 and the time can't be less than 0
2019-11-21 11:04:38 -05:00
Yotam Mann
8bb53b3eb1 state time can't be less than 0 2019-11-21 11:04:00 -05:00
Yotam Mann
e0248afb1c using floating point comparisons 2019-11-18 15:16:04 -05:00
Yotam Mann
09dc29191b linting 2019-11-17 13:09:19 -05:00
Yotam Mann
8ec69d42de make sure there is a slash between the baseurl and the url 2019-11-17 11:33:45 -05:00
Yotam Mann
fdca6ef57d removing comment 2019-11-14 16:26:47 -05:00
Yotam Mann
b1b85206f4 updating name string 2019-11-14 13:21:41 -05:00
Yotam Mann
4b0827bf43 removing old js file 2019-11-14 12:34:15 -05:00
Yotam Mann
76b8e84ae4 testing that toString() returns the class name 2019-11-14 12:30:17 -05:00
Yotam Mann
5fd8009c87 correcting ToneAudioNode's name 2019-11-14 12:21:58 -05:00
Yotam Mann
cc7f428a84 adding latencyHint to BaseContext 2019-11-13 14:16:20 -05:00
Yotam Mann
340fb77561 wait for next tick before setting the ticks
fixes #573
2019-11-13 13:19:47 -05:00
Yotam Mann
60e4f7231b removing unused import 2019-11-13 13:16:35 -05:00
Yotam Mann
fa2b7431e3 alphabetizing output 2019-11-13 13:01:00 -05:00
Yotam Mann
94ab93935c annotating type 2019-11-12 23:59:41 -05:00
Yotam Mann
c4153edc30 assert the context is running 2019-11-12 16:55:30 -05:00
Yotam Mann
48c3a98749 more consistent whitespacing 2019-11-12 16:54:09 -05:00
Yotam Mann
eb1427a17e updating whitespace 2019-11-12 16:33:54 -05:00
Yotam Mann
589ab74b11 don't need to check if state is null any longer 2019-11-12 15:10:22 -05:00
Yotam Mann
6623b5b4ea simplifying math a little 2019-11-12 14:12:22 -05:00
Yotam Mann
b6cbd31a78 updating test to pass in context 2019-11-11 16:04:38 -05:00
Yotam Mann
b68808ca6b using GrainPlayer to test 2019-11-11 15:41:01 -05:00
Yotam Mann
522e3a0670 only test if it's in fact suspended 2019-11-11 15:17:48 -05:00
Yotam Mann
9136836da0 assertContextRunning
help with autoplay issues by warning when AudioContext is not running
2019-11-11 11:43:43 -05:00
Yotam Mann
41d4b4a0df More explanation on immediate vs now
addresses #570
2019-11-10 23:20:23 -05:00
Yotam Mann
2ae5d69f4e adding onprocessorerror property to notify when errors have occured in processing 2019-11-07 16:56:56 -05:00
Yotam Mann
e820ae76ed testing the dummy context interface
tests just for coverage
2019-11-07 16:04:43 -05:00
Yotam Mann
6842d48ce7 don't export BaseContext
since probably not necessary in the final output
2019-11-07 16:04:32 -05:00
Yotam Mann
a08ee7e4d7 don't need to export tone 2019-11-07 15:44:33 -05:00
Jack Anderson
3354b24527 Create BaseContext + better DummyContext
- this creates a new abstract BaseContext that DummyContext and Context
inherit from
- All methods available to Context are now stubbed by DummyContext
- BaseContext is now used as the type where Context was originally used
2019-11-06 14:32:19 -08:00
Yotam Mann
fd3a52a54b removing duplicate example 2019-11-04 17:49:59 -05:00
Yotam Mann
8ec41dd200 updating example 2019-11-04 17:49:50 -05:00
Yotam Mann
28bf547959 updating example 2019-11-03 22:19:42 -05:00
Yotam Mann
59b9f5f6a8 adding recursive omit method 2019-11-03 17:42: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
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
91ae308e66 making sure that draw/transport/destination are disposed when the context is closed 2019-10-31 11:41:21 -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
Yotam Mann
546ec43151 updating example
changing updateInterval to be lookAhead/2 instead of 3
2019-10-30 18:05:28 -04:00
Yotam Mann
bc08a1aea9 docs: adding more elaborate examples and explainations 2019-10-29 14:51:29 -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
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
cd37884156 removing unused deps 2019-10-28 15:11:42 -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
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
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
b2a9c9a303 working on examples 2019-10-23 16:30:07 -04:00
Yotam Mann
42cfbcd456 linting docs and examples 2019-10-22 23:04:52 -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
f753aef015 Adding range test 2019-10-09 12:38:10 -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
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
a2153571c2 types: correcting typing 2019-09-29 17:25:55 -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
eb7b14fdc8 fixing docs 2019-09-29 10:19:08 -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
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
ec3c1381c5 removing unused stuff 2019-09-20 20:04:45 -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
dd22e298e5 exporting debug 2019-09-20 17:49:54 -04:00
Yotam Mann
c35666c6fa moving epsilon comparisons to it's own file 2019-09-20 17:44:55 -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