Commit graph

2912 commits

Author SHA1 Message Date
Powerlated
0636c28517
Use Triangle instead of Sawtooth for PulseOscillator source
Using Sawtooth for the source wave produces an inaccurate tone at pulse widths other than 50% (0). The fix is to use a Triangle wave for the source.
2020-04-12 15:21:57 -04:00
Yotam Mann
b090617c9b removing old tests 2020-04-10 09:13:58 -04:00
Yotam Mann
f317b97d89 testing that slice can also extend the duration 2020-04-08 10:02:33 -04:00
Yotam Mann
8b734d9755 Clock callback returns seconds 2020-04-07 21:52:07 -04:00
James Pettit
169d6d7f09
Add dotted notes to the Subdivision type.
Reading 30e14cf729/Tone/core/type/Time.ts (L76) it looks like dotted notes can be returned, and in fact when I try it I can get a dotted note but the Typescript compiler complains that the return value cannot exist when used in a switch statement, so I think this is just an accidental omission.
2020-04-05 13:08:04 +08:00
Yotam Mann
627cb3cd45 adding some more simple examples 2020-03-21 21:58:48 -04:00
Yotam Mann
4a0aa07af7 testing if loaded can be created in the same block before adding downloads 2020-03-17 22:46:27 -04:00
Yotam Mann
85f70621ef loaded promise allows for downloads to be added while 'loaded' is awaiting 2020-03-17 22:45:59 -04:00
Jacob Smith
7ec07954ae
Fixing bounds in TickSource test 2020-03-17 17:17:50 -03:00
Yotam Mann
8b58824d75 waiting for all download promises to resolve 2020-03-15 21:54:36 -04:00
Yotam Mann
09943840c4 fixing race condition where loaded was not yet set to true when promise is resolved 2020-03-11 11:41:33 -04:00
Yotam Mann
a9b2f05d6a linting 2020-03-08 12:10:39 -04:00
Erich Loftis
785c3bc5dc
Update PatternGenerator.test.ts 2020-03-01 23:53:57 -06:00
Erich Loftis
744698f71e
Update PatternGenerator.ts 2020-03-01 23:11:27 -06:00
Yotam Mann
17ad337c1c get maxChannelCount 2020-03-01 22:03:37 -05:00
Yotam Mann
52bf3414a4 fix: reconnecting convolver after creating new one when setting buffer
fixes #616
2020-02-26 18:26:18 -05:00
Yotam Mann
bdd66ef8ba cleaning up code a little 2020-02-26 17:18:08 -05:00
Yotam Mann
7adda98875 perf: optimizing forEachAtTime to iterate over a smaller range
fixes #618
2020-02-26 16:54:35 -05:00
Yotam Mann
1539d88ef3 fix: Remove download promise when completed
fixes #620
2020-02-26 16:05:47 -05:00
Yotam Mann
e68fe68e4c bug: cancel next event with very short attacks as well
fixes #614
2020-02-02 21:57:23 -05:00
Yotam Mann
e15194821b perf: don't schedule curve when there is no decay necessary. 2020-02-02 21:55:47 -05:00
Yotam Mann
5d1b29f4b3 feat: changed the name Buffer, Buffers and BufferSource so that it doesnt conflict with native naming
Buffer -> ToneAudioBuffer
Buffers -> ToneAudioBuffers
BufferSource -> ToneBufferSource
2020-02-02 11:41:24 -05:00
Yotam Mann
d966735bd9 feat: option to pass in the number of input channels to Panner
fixes #609
2020-01-30 18:22:36 -05:00
Yotam Mann
7236600182 feat: adding onerror to Sampler
fixes #605
2020-01-30 16:42:32 -05:00
Yotam Mann
766ef638d3 making sure that the onerror returns the error 2020-01-30 16:15:28 -05:00
Yotam Mann
bb6a6fdef6 feat: adding onerror to ToneAudioBuffers and Players 2020-01-30 14:25:06 -05:00
Yotam Mann
dc53f9272b feat: adding onerror to GrainPlayer when url can't load 2020-01-29 23:37:36 -05:00
Yotam Mann
0bc28e742a using url instead of buffer makes it more consistent with other url loading APIs
feat: adding onerror to ToneBufferSource and Player
2020-01-29 23:34:05 -05:00
Yotam Mann
88dae77c90 removing 'Connect.ts' and updating dependencies
was a pass through and caused other problems of redefining the variable
2020-01-08 14:12:11 -05:00
Yotam Mann
40e5d7d046 fixing path 2020-01-05 18:34:22 -05:00
Yotam Mann
b86aaede46 updating relative path 2020-01-05 17:59:29 -05:00
Yotam Mann
7eb1eaf625 setting range limits 2019-12-30 18:49:55 -05:00
Yotam Mann
3526b9c42c Adding note about performance with recent upgrade
closes #571
2019-12-30 18:46:35 -05:00
Yotam Mann
266576b44f recieve returns 'this' 2019-12-30 18:30:00 -05:00
Yotam Mann
3df7942908 keeping the loopStart/End within range 2019-12-24 00:17:25 -05:00
Yotam Mann
9853f44e8c test setting reverb values 2019-12-23 23:58:40 -05:00
Yotam Mann
c82a2aafb0 updating synth options
fixes scenario where "custom" is passed in
2019-12-23 23:00:27 -05:00
Yotam Mann
a90669d87e invoking callback slight further in the future 2019-12-23 19:17:06 -05:00
Yotam Mann
a7f1ad36a4 updating sequence description to account for greater depth 2019-12-22 11:07:57 -05:00
Yotam Mann
0f9c14575d return the progress computed by the internal part 2019-12-22 01:31:27 -05:00
Yotam Mann
bbef5f5dec fixing edge case where computed offset is equal to the duration of the buffer
sets it to 0 in this case.
2019-12-22 00:38:21 -05:00
Yotam Mann
4e1b385a48 fixing typos 2019-12-22 00:37:51 -05:00
Yotam Mann
dd73c2128c importing listener when panner is imported 2019-12-21 22:07:05 -05:00
Yotam Mann
015e4c7a30 correcting default value 2019-12-21 22:06:40 -05:00
Yotam Mann
ed5f7876c2 fixing typo 2019-12-21 22:05:31 -05:00
Yotam Mann
24fe9acc18 using standardized-audio-context in tests 2019-12-21 22:05:24 -05:00
Yotam Mann
7391cf6d3c wrapping native AudioListener with Listener 2019-12-21 21:01:45 -05:00
Yotam Mann
f1cda064b5 only set the player as stopped when it's still scheduled as playing
addresses #594
2019-12-21 15:27:10 -05:00
Yotam Mann
e077f1810b export panner3D 2019-12-21 14:32:00 -05:00
Yotam Mann
7606a5d28b updating test name 2019-12-19 17:13:14 -05:00
Yotam Mann
daae4aef7c ensure start is not scheduled twice at the same time
subsequent start times must be greater than the previous time

fixes #594
2019-12-19 17:13:05 -05:00
Yotam Mann
fbf4345de4 removing debugging code 2019-12-18 18:03:11 -05:00
Yotam Mann
d22747cc69 Adding more range guards 2019-12-17 12:42:40 -05:00
Yotam Mann
32fa0f3eba values can be nested arrays of the generic type 2019-12-17 11:58:45 -05:00
Yotam Mann
ef52e20a1b updating comment 2019-12-17 11:57:02 -05:00
Yotam Mann
25eb6fce40 removing unused vars 2019-12-17 11:56:56 -05:00
Yotam Mann
abcb3bec5c removing out of range value 2019-12-17 11:38:43 -05:00
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
51d06bd987 feat: Removing Ctrl classes
breaking changes: Removing CtrlInterpolate, CtrlRandom, CtrlMarkov.
2019-12-16 16:42:40 -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
1255bc6766 feat: Meter can do multichannel analysis
pass in `channels` > 1 into constructor
2019-12-15 16:43:41 -05:00
Yotam Mann
d9a7520eb6 feat: Analyser can handle multiple channels
Can pass in `channels` into constructor which runs a separate analysis on each channel and returns the results as a Float32Array[].
2019-12-15 16:42:50 -05:00
Yotam Mann
6d0e17d3d2 adding the category 2019-12-15 16:02:29 -05:00
Yotam Mann
93fdb9c0f2 documenting output type 2019-12-15 16:02:19 -05:00
Yotam Mann
2625a134b6 feat: meter output can be normalRange in addition to decibels 2019-12-15 16:01:19 -05:00
Yotam Mann
ed93e677a9 setting minValue for harmonicity 2019-12-15 02:19:25 -05:00
Yotam Mann
caf58ffe0b throws error when set outside of range 2019-12-15 02:19:12 -05:00
Yotam Mann
f3022bbb35 not necessary to set frequency in constructor 2019-12-15 02:18:13 -05:00
Yotam Mann
192b749b85 Gain can also have min/max range 2019-12-14 17:27:54 -05:00
Yotam Mann
72d7f37509 removing unused variable 2019-12-14 17:07:13 -05:00
Yotam Mann
a2d5c3d634 adding the intial state at time 0 2019-12-14 16:11:56 -05:00
Yotam Mann
ef0aaec8ee Refactor source
adding `_restart` is an internal protected abstract method for all sources.
2019-12-14 16:09:24 -05:00
Yotam Mann
e709203656 Reverb decay should be at least 1ms 2019-12-14 12:34:44 -05:00
Yotam Mann
276af87a6d decay needs to be at least 1 sample long 2019-12-14 12:33:49 -05:00
Yotam Mann
267f1befc0 Simplifying Freeverb dispose 2019-12-14 11:53:12 -05:00
Yotam Mann
dedfe18ac2 open returns this
closes #589
2019-12-13 11:25:28 -05:00
Yotam Mann
f20fdce3a6 making paths relative 2019-12-11 10:35:01 -05:00
Yotam Mann
8eed7bd6ce adding range guards to reverb 2019-12-11 10:13:52 -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
409fb929af skipping isSilent test 2019-12-06 18:00:26 -05:00
Yotam Mann
d4f47b7cd8 removing unused vars 2019-12-06 17:29:06 -05:00
Yotam Mann
2295ce674e whoops: made it so it only funs one test 2019-12-06 17:23:02 -05:00
Yotam Mann
9f51cb5293 exporting BaseContext 2019-12-06 17:13:22 -05:00
Yotam Mann
c66f2d5e89 feat: ramps must be at least 1 sample long
otherwise just uses a setValueAtTime
2019-12-06 16:38:35 -05:00
Yotam Mann
8a508f2405 feat: Reverb generate is automatically called when decay or preDelay values are changed
`ready` promise resoves when reverb values have been updated.
2019-12-06 16:37:40 -05:00
Yotam Mann
8540c44459 needs to set detune outside of signal being overridden 2019-12-06 14:10:33 -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
e955846bb2 moving docs from #584 to typescript 2019-12-04 10:52:40 -05:00
Yotam Mann
b1c5a3c8c7 docs: fixing example 2019-11-22 15:46:46 -05:00
Yotam Mann
ba311dbe7b putting settings into constructor object
slight optimization over setting them all individually
2019-11-22 13:26:16 -05:00
Yotam Mann
0f8a282dfa fixing stereo widener 2019-11-22 13:25:50 -05:00
Yotam Mann
fef7bde5a5 rounding up the number of voices it keeps 2019-11-22 11:19:03 -05:00
Yotam Mann
c80f8a89f9 optimization: also storing the wave
turns out that the call to `createPeriodicWave` is the most expensive part.
2019-11-22 11:18:49 -05:00
Yotam Mann
94de75c1b4 no need to guard against the part being undefined now 2019-11-21 13:19:44 -05:00
Yotam Mann
15d5580cb3 schedule all the events at the end of the constructor 2019-11-21 13:19:03 -05:00
Yotam Mann
11f7c2207a test the initial state 2019-11-21 11:08:22 -05:00