Yotam Mann
8c2979fe8a
connection tests and channel property tests
2019-08-04 09:54:53 -04:00
Yotam Mann
cc18de471d
exposing ToneAudioNode
2019-08-04 09:54:16 -04:00
Yotam Mann
9ab45ab84c
removing channel properties from constructor options
...
will need to set individually when relevant or come up with another solution to setting in constructor. the relevant nodes are not available at the time of the constructor
2019-08-04 09:54:06 -04:00
Yotam Mann
56db8b3a7a
simplifying _internalChannels
...
channelCount/Mode/Interpretation check the input/output nodes, which removes the need for many classes to have _internalChannels
2019-08-03 12:00:14 -04:00
Yotam Mann
5e8a32b662
numberOfInputs/Outputs is inferred by looking at the input/output node
2019-08-02 21:48:28 -04:00
Yotam Mann
4364f2f843
no longer necessary to pass in number of inputs
...
the count is inferred by checking the input or output node
2019-08-02 21:47:57 -04:00
Yotam Mann
52bcac2599
setting name to readonly
2019-08-02 21:09:35 -04:00
Yotam Mann
1792ff1d05
merging functionality from 'dev'
...
changes were made to .js files which are no longer there. moving functionality to .ts files
2019-08-02 13:56:51 -04:00
Yotam Mann
344bd48bc0
removing js files
2019-08-02 10:37:07 -04:00
Yotam Mann
6e5e8b3399
using specific types
...
importing them so there are not multiple import type errors
2019-07-30 15:35:27 -04:00
Yotam Mann
d1716266e7
had slice logic backwards
...
oops
2019-07-30 10:52:49 -04:00
Yotam Mann
a88e9b5a84
making time optional
2019-07-30 10:25:17 -04:00
Yotam Mann
c0bd377805
export 'connect'
2019-07-30 10:24:13 -04:00
Yotam Mann
d9eae0123f
removing window reference
2019-07-26 11:50:59 -04:00
Yotam Mann
dd14e412ae
return context immediately
...
don't wait for the buffer promise to finish because the context will be set wrong for that entire time
2019-07-26 11:45:11 -04:00
Yotam Mann
61fe1a6a0d
fixing initialization case
2019-07-25 18:32:58 -04:00
Yotam Mann
7a099b2310
handling case where window is not defined
...
either because it's loaded in node.js or because of the context that the script is loaded in
2019-07-25 18:28:17 -04:00
Yotam Mann
86bef350e2
adding note on name change
2019-07-25 13:10:52 -04:00
Yotam Mann
bfc3d7ed15
toMaster() -> toDestination()
...
more consistent with the Web Audio API
2019-07-25 11:32:56 -04:00
Yotam Mann
9a49c873df
exporting modules from main entry
2019-07-25 11:29:36 -04:00
Yotam Mann
cbae25a15c
remove Array.prototype.reverse.call, use .reverse() instead
2019-07-25 10:45:02 -04:00
Yotam Mann
111ecc1396
delayTime is in Time instead of seconds
2019-07-25 10:44:32 -04:00
Yotam Mann
ef19d2e6e8
input and output are no longer arrays
...
simplifies connect/disconnect logic greatly. Simplifies API to just have clearly named inputs/outputs instead of overloading input/output connect numbers
2019-07-25 10:43:47 -04:00
Yotam Mann
9788bcc847
optimizing slice implementation
...
no longer requires iteration over the arrays
2019-07-25 09:08:34 -04:00
Yotam Mann
923940576c
abstract classes must take the options object
...
no passing in individual parameters. This simplifies the code a little
2019-07-24 23:33:31 -04:00
Yotam Mann
5fcb7df3cc
Revert "getFrom is like getAfter, but also includes the event at the given time"
...
This reverts commit b4b924f2e0
.
2019-07-24 19:54:57 -04:00
Yotam Mann
4858251ba6
Revert "small optimization reducing the number of cancelScheduledValues calls"
...
This reverts commit 37a62137fa
.
2019-07-24 19:54:50 -04:00
Yotam Mann
37a62137fa
small optimization reducing the number of cancelScheduledValues calls
...
first check if there are any more values which are scheduled
2019-07-24 19:50:49 -04:00
Yotam Mann
b4b924f2e0
getFrom is like getAfter, but also includes the event at the given time
2019-07-24 19:49:31 -04:00
Yotam Mann
934ab5d77f
clearer error messages
...
catch the error before it becomes "the value is non-finite". show the original value
2019-07-24 09:30:58 -04:00
Yotam Mann
6362f00e58
checking both time and value arguments
2019-07-23 17:46:13 -04:00
Yotam Mann
6cb6472f46
if object key is 'value' just copy it over
...
deep merging was causing some errors with ToneEvent
2019-07-23 17:09:11 -04:00
Yotam Mann
3c0953b3a4
adding more detailed error handling
...
addresses #515
2019-07-23 17:08:48 -04:00
Yotam Mann
61a02e6633
toTicks can take a class as well
2019-07-23 15:17:11 -04:00
Yotam Mann
9306e5188c
adding additional option to StateTimeline.add
...
enables more strict typing of returned object
2019-07-23 13:43:11 -04:00
Yotam Mann
2978244fd5
interval can also be a time class
2019-07-23 13:12:27 -04:00
Yotam Mann
027bffc10e
check if the attribute exists and is not falsy
2019-07-23 13:11:01 -04:00
Yotam Mann
ffad8c1475
confirm that an instance was disposed
...
implement Tone.prototype.dispose which flips a boolean wasDisposed.
2019-07-23 12:11:57 -04:00
Yotam Mann
cd968292d4
correcting docs
2019-07-23 11:28:33 -04:00
Yotam Mann
7e65d90ec9
dont remove primitive types from 'get' response
2019-07-23 11:28:22 -04:00
Yotam Mann
5a8ee37c77
adding implicit end attribute to StateTimeline
...
used when the ending is impilcitly scheduled as in Player
2019-07-23 11:26:41 -04:00
Yotam Mann
a820e5bee5
implementing debug
2019-07-23 11:24:38 -04:00
Yotam Mann
622b547e32
time is optional in toSeconds
2019-07-22 16:18:01 -04:00
Yotam Mann
9e8ffa3dd0
optionsFromArguments can accept an object
...
uses 4th parameter to know which options should be an object
2019-07-22 16:15:55 -04:00
Yotam Mann
ca43351e92
convert ToneAudioBuffers to ts
2019-07-22 12:29:50 -04:00
Yotam Mann
6e8cb73ca3
type coersion
2019-07-19 12:32:55 -04:00
Yotam Mann
c56798ebf4
takes a string array instead of object
2019-07-19 12:32:42 -04:00
Yotam Mann
f8d845cede
return from 'get' should be serializable
2019-07-19 11:09:28 -04:00
Yotam Mann
9306f9e797
RecursivePartial is useful for nested properties
2019-07-18 14:06:53 -04:00
Yotam Mann
72d4b80f97
fixing typo
2019-07-18 14:06:20 -04:00
Yotam Mann
3efd706458
omiting defaults from object
...
useful for removing redundant properties in get/set
2019-07-18 14:06:10 -04:00
Yotam Mann
8b501cca7e
only using the attributes which are available in getDefaults()
2019-07-18 14:05:42 -04:00
Yotam Mann
11aed433d7
don't try to set an undefined attribute
2019-07-17 12:54:25 -04:00
Yotam Mann
8c3c2fe9d1
removing old type classes
2019-07-16 16:05:58 -04:00
Yotam Mann
e0a83ef8cd
removing old js files
2019-07-16 15:44:43 -04:00
Yotam Mann
45a254f7e6
setting unused method to abstract
...
should be implemented by extending classes
2019-07-16 15:44:36 -04:00
Yotam Mann
7f17209530
tear down created classes on context close
2019-07-16 15:41:59 -04:00
Yotam Mann
4c4db4b614
fully converting all Time classes to ts
2019-07-16 15:29:34 -04:00
Yotam Mann
4e11f13336
adding midi to frequency conversion
2019-07-16 09:32:36 -04:00
Yotam Mann
990c0f56ed
using type instead of string types
2019-07-15 15:37:25 -04:00
Yotam Mann
1ba36bde6a
connectSeries uses the ToneAudioNode's connect method
...
this is necessary when connecting from a signal since there is additional logic in it's connect method
2019-07-15 09:45:05 -04:00
Yotam Mann
b41646a0ee
elaborating on lookAhead
2019-07-11 11:13:23 -04:00
Yotam Mann
b58577ed5e
working on exported Tone object
...
for global build
2019-07-11 11:05:03 -04:00
Yotam Mann
219462fe9e
cleaning up circular deps
2019-07-11 09:57:06 -04:00
Yotam Mann
c658980915
removing circular dependencies in types
2019-07-11 09:21:12 -04:00
Yotam Mann
bf214dc106
removing call to super.dispose()
2019-07-11 00:37:25 -04:00
Yotam Mann
f48696a69e
Revert "every class calls super.dispose()"
...
This reverts commit 60a63cacf8
.
2019-07-11 00:36:16 -04:00
Yotam Mann
a8e8f53aab
using relative paths
2019-07-11 00:14:53 -04:00
Yotam Mann
60a63cacf8
every class calls super.dispose()
...
makes sure that things don't get disposed twice, which seems to be a common source of issues
2019-07-10 23:35:29 -04:00
Yotam Mann
fde2ff65eb
testing TickSignal outputs a signal
2019-07-10 23:33:58 -04:00
Yotam Mann
ae2804fbc5
implement syncSignal
2019-07-10 23:33:36 -04:00
Yotam Mann
a94a99c94e
TickSignal outputs a signal
2019-07-10 23:33:12 -04:00
tambien
1c3461b924
fixing chain behavior
2019-06-24 14:35:32 -04:00
tambien
db35b3ae3a
linting
2019-06-24 13:41:38 -04:00
Yotam Mann
02cfefa7ef
Merge branch 'typescript' into fix-typescript-linting
2019-06-24 13:33:18 -04:00
tambien
2f9ef33984
adding index files for each of the directories
2019-06-24 13:25:48 -04:00
tambien
d53cf17c8a
needed to pass compiler
2019-06-23 15:04:13 -04:00
tambien
f7033143fc
no longer necessary
2019-06-23 15:04:01 -04:00
tambien
62b4b47fd1
prefering toDestination over toMaster
...
more consistent with Web Audio API
2019-06-23 15:03:31 -04:00
tambien
b276320393
Destination (Master) typescripting
2019-06-23 15:03:04 -04:00
tambien
8b4f1cfa19
Global now only manages global Context
...
global AudioContext was moved to AudioContext.ts
2019-06-23 15:02:38 -04:00
tambien
8fd8d95a48
transport and destination created in separate initialization step
2019-06-23 14:59:27 -04:00
tambien
de6b91c9d0
using global AudioContext created on init
2019-06-23 14:58:57 -04:00
tambien
017f866ee3
options does not require keys if empty
2019-06-23 14:47:44 -04:00
tambien
0194826467
moving initial AudioContext to separate file
2019-06-23 14:47:21 -04:00
tambien
8602ae13db
first node was connected to itself
2019-06-23 14:46:59 -04:00
Garren Smith
efbd3c7f5f
Fix linting issues
...
Also add in no-unused-expression-chai rule so that chai works with
tslint.
2019-06-23 12:53:57 +02:00
tambien
d2b7562021
waiting for promise to resolve before starting next test
2019-06-19 17:20:12 -04:00
tambien
10eec904f7
making sure the context is an AudioContext before calling resume
2019-06-19 16:21:03 -04:00
tambien
4c68c6f2fa
correcting typedef
2019-06-19 16:20:44 -04:00
tambien
ab5184f9a6
adding Radians
2019-06-19 15:52:16 -04:00
tambien
17a38ae10a
allow non 'dev' version
2019-06-19 10:25:05 -04:00
tambien
15182279fc
removing old JS files
2019-06-19 10:18:43 -04:00
tambien
95142d1a6f
test if context is AudioContext before trying to resume
2019-06-19 10:18:33 -04:00
tambien
ff157bf4ad
Update Draw.ts
2019-06-19 09:56:21 -04:00
tambien
ae5cf78098
adding optional fields
...
used in some classes
2019-06-19 09:55:08 -04:00
tambien
863072f8c8
converting Draw to ts
2019-06-19 09:53:36 -04:00
tambien
9ac9de5b12
using TONE_AUDIO_CONTEXT if it exists
2019-06-17 21:53:54 -04:00
tambien
5cc56cbea1
removing unused import
2019-06-17 21:52:51 -04:00
tambien
014601a4f5
adding default arg
2019-06-17 21:52:02 -04:00