Commit graph

1816 commits

Author SHA1 Message Date
Yotam Mann
405a841db0 stop method is beginning of fadeOut curve instead of end
simplifies code

fixes #328
2018-06-20 14:55:43 -04:00
Yotam Mann
4a47d68cde stop method is beginning of fadeOut curve instead of end
simplifies code

fixes #328
2018-06-20 14:55:43 -04:00
tambien
cbe1588662 calling resume on clock start
since it relies on the context clock being started
2018-06-18 11:23:31 -04:00
tambien
43bf4e30b5 calling resume on clock start
since it relies on the context clock being started
2018-06-18 11:23:31 -04:00
tambien
031dc98898 optimization to turn off oscillator after play 2018-06-13 19:04:02 -04:00
tambien
c6c6cb8014 optimization to turn off oscillator after play 2018-06-13 19:04:02 -04:00
tambien
081e995983 use onstatechange instead of addEventListener
in Safari < 10 AudioContext does not extend EventEmitter
2018-06-13 16:42:33 -04:00
tambien
990d5d05e4 use onstatechange instead of addEventListener
in Safari < 10 AudioContext does not extend EventEmitter
2018-06-13 16:42:33 -04:00
tambien
2d1c2dc705 no noise supression 2018-06-13 15:57:05 -04:00
tambien
e3cf01aeae no noise supression 2018-06-13 15:57:05 -04:00
tambien
a1e782df4a using resume instead of ready 2018-06-13 15:56:00 -04:00
tambien
68688c326e using resume instead of ready 2018-06-13 15:56:00 -04:00
Yotam Mann
45e40a8498 linting 2018-06-13 00:20:23 -04:00
Yotam Mann
b9efb432ad linting 2018-06-13 00:20:23 -04:00
Yotam Mann
4dbd48943e using exponentialApproach instead of targetRampTo
reduces call to cancelScheduledValuesAtTime
2018-06-12 23:48:51 -04:00
Yotam Mann
9c11b21ce6 using exponentialApproach instead of targetRampTo
reduces call to cancelScheduledValuesAtTime
2018-06-12 23:48:51 -04:00
Yotam Mann
26df78b0db handles start/stop/restart better in many situations
less prone to errors where the OscillatorNode is silent after starting
2018-06-12 23:48:15 -04:00
Yotam Mann
6f021eb345 handles start/stop/restart better in many situations
less prone to errors where the OscillatorNode is silent after starting
2018-06-12 23:48:15 -04:00
Yotam Mann
ebbb1ef8bb log and assert help in debugging classes 2018-06-12 23:47:30 -04:00
Yotam Mann
3fcea01d66 log and assert help in debugging classes 2018-06-12 23:47:30 -04:00
Yotam Mann
3d92d0fdf8 simplifying the way that free voices are selected 2018-06-12 23:44:15 -04:00
Yotam Mann
5babc8e75d simplifying the way that free voices are selected 2018-06-12 23:44:15 -04:00
Yotam Mann
6dbb025c2a removing signal proxies
added too much difficulty with garbage collection, too many edge cases
2018-06-09 12:55:29 -04:00
Yotam Mann
c338310acd removing signal proxies
added too much difficulty with garbage collection, too many edge cases
2018-06-09 12:55:29 -04:00
Yotam Mann
baeb20a17c fixing order of gate connections
had wrong behavior bc of connection order.

fixes #298
2018-06-07 12:49:32 -04:00
Yotam Mann
9325ba4d15 fixing order of gate connections
had wrong behavior bc of connection order.

fixes #298
2018-06-07 12:49:32 -04:00
Yotam Mann
049bfd04de exponent passed into constructor is applied
fixes #356
2018-06-07 12:21:38 -04:00
Yotam Mann
e5892fe6c6 exponent passed into constructor is applied
fixes #356
2018-06-07 12:21:38 -04:00
Yotam Mann
616af3b9de filter gain is in decibels 2018-06-07 12:12:28 -04:00
Yotam Mann
20378f6d5a filter gain is in decibels 2018-06-07 12:12:28 -04:00
Yotam Mann
a441ce3ade changing LPCF implementation to avoid positive feedback loop
Fixes #198
2018-06-07 12:11:53 -04:00
Yotam Mann
f1adbf2aff changing LPCF implementation to avoid positive feedback loop
Fixes #198
2018-06-07 12:11:53 -04:00
tambien
534b97bea4 removing unnecessary type from TickSignal 2018-06-05 22:56:47 -04:00
tambien
60cf6a116e removing unnecessary type from TickSignal 2018-06-05 22:56:47 -04:00
tambien
43130a5800 reverting TickSignal 2018-06-05 22:56:28 -04:00
tambien
6e86d6b8dc reverting TickSignal 2018-06-05 22:56:28 -04:00
tambien
982bc16b71 gate uses just smoothing instead of attack/release 2018-06-05 22:43:01 -04:00
tambien
216219195d gate uses just smoothing instead of attack/release 2018-06-05 22:43:01 -04:00
tambien
8cb4fc32d9 signals extend Tone.Signal again
but are set proxy = false initially
2018-06-05 22:42:17 -04:00
tambien
442c7cb1c5 signals extend Tone.Signal again
but are set proxy = false initially
2018-06-05 22:42:17 -04:00
tambien
765de3c6b8 follower uses a single smoothing value 2018-06-05 22:14:46 -04:00
tambien
eb003d8b6c follower uses a single smoothing value 2018-06-05 22:14:46 -04:00
tambien
5a3b905aec revert: TransportTimelineSignal extends Signal 2018-06-05 22:02:42 -04:00
tambien
b1ae21930f revert: TransportTimelineSignal extends Signal 2018-06-05 22:02:42 -04:00
tambien
f7633a5c73 testing signal proxies 2018-06-05 21:58:00 -04:00
tambien
508ad723e9 testing signal proxies 2018-06-05 21:58:00 -04:00
tambien
e7b9045160 components extend Param instead of Signal 2018-06-05 21:53:28 -04:00
tambien
6749e84520 components extend Param instead of Signal 2018-06-05 21:53:28 -04:00
tambien
70c5c0e289 fixing docs
[skip ci]
2018-06-05 16:56:14 -04:00
tambien
1e1eb23709 fixing docs
[skip ci]
2018-06-05 16:56:14 -04:00
tambien
72964c7777 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-31 13:18:32 -04:00
tambien
1d265a48a0 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-31 13:18:32 -04:00
tambien
8e2295e229 making triggerAttackRelease private
fixes #358
2018-05-31 13:18:29 -04:00
tambien
871df10d2d making triggerAttackRelease private
fixes #358
2018-05-31 13:18:29 -04:00
Yotam Mann
bbf2929b6f rotating the phase of the oscillator group
addresses #354
2018-05-29 10:35:12 -04:00
Yotam Mann
ed648fc8ec rotating the phase of the oscillator group
addresses #354
2018-05-29 10:35:12 -04:00
Yotam Mann
3c2b822b43 can make decayCurve linear or exponential
fixes #354
2018-05-28 18:51:44 -04:00
Yotam Mann
5ecf93f491 can make decayCurve linear or exponential
fixes #354
2018-05-28 18:51:44 -04:00
Yotam Mann
4cb60ca111 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-28 18:06:44 -04:00
Yotam Mann
aa83647aea Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-28 18:06:44 -04:00
Yotam Mann
5b20f572a3 removing unused lines 2018-05-28 18:01:19 -04:00
Yotam Mann
9f22ca7e12 removing unused lines 2018-05-28 18:01:19 -04:00
Yotam Mann
ec4e9a3fdf searches for envelope position in attack curve 2018-05-28 17:59:31 -04:00
Yotam Mann
49768eb658 searches for envelope position in attack curve 2018-05-28 17:59:31 -04:00
tambien
cbb5c78823 using super method 2018-05-25 18:25:08 -04:00
tambien
95f2a2bf65 using super method 2018-05-25 18:25:08 -04:00
tambien
57070d987b only disconnecting when signal is started
fixes #338
2018-05-25 18:24:45 -04:00
tambien
160a89f34c only disconnecting when signal is started
fixes #338
2018-05-25 18:24:45 -04:00
tambien
77e2b96767 initialized is a readOnly member 2018-05-25 18:04:01 -04:00
tambien
40fe84ce43 initialized is a readOnly member 2018-05-25 18:04:01 -04:00
tambien
b8c5353638 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-24 16:58:21 -04:00
tambien
0e9c983d6b Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-05-24 16:58:21 -04:00
Yotam Mann
54276555f2 correctly restarting PulseOscillator 2018-05-20 17:36:07 -04:00
Yotam Mann
f7938e93df correctly restarting PulseOscillator 2018-05-20 17:36:07 -04:00
Yotam Mann
ee18f87106 assign basic oscillator type
typo!
2018-05-20 17:25:39 -04:00
Yotam Mann
02ad574af0 assign basic oscillator type
typo!
2018-05-20 17:25:39 -04:00
Yotam Mann
319ae28fa8 using setValueAtTime instead of .value
fixes #288
2018-05-19 17:32:32 -04:00
Yotam Mann
2562cec829 using setValueAtTime instead of .value
fixes #288
2018-05-19 17:32:32 -04:00
Yotam Mann
a7b783b0a5 updating docs
[skip ci]
2018-05-19 15:07:58 -04:00
Yotam Mann
a79daec0e0 updating docs
[skip ci]
2018-05-19 15:07:58 -04:00
Yotam Mann
bc7269e740 checking for 'then' instead of 'instanceof Promise' 2018-05-19 13:39:39 -04:00
Yotam Mann
86664183fd checking for 'then' instead of 'instanceof Promise' 2018-05-19 13:39:39 -04:00
tambien
9b78520038 noting that Oscillator is better for most cases 2018-05-17 18:38:53 -04:00
tambien
49b173166f noting that Oscillator is better for most cases 2018-05-17 18:38:53 -04:00
tambien
55168fffa5 play silent audio for browsers that don't implement resume
this jumpstarts the AudioContext
2018-05-17 18:38:40 -04:00
tambien
0f67791315 play silent audio for browsers that don't implement resume
this jumpstarts the AudioContext
2018-05-17 18:38:40 -04:00
tambien
4e772baab9 updating time docs
fixes #348
2018-05-17 11:44:22 -04:00
tambien
e44dffe459 updating time docs
fixes #348
2018-05-17 11:44:22 -04:00
tambien
ade4946ff3 removing peak
only use RMS value
2018-05-17 11:40:59 -04:00
tambien
f47e49e798 removing peak
only use RMS value
2018-05-17 11:40:59 -04:00
David Sherman
c66c453e95 Added type property to Tone.Meter (#276)
* Added 'type' property to Tone.Meter that accepts 'peak' or 'rms' and defaults to 'rms'. Calculation methods + sources added to Tone.Meter. Tests added to Tone.Meter + assertion sources.

* Fixed a number of formatting issues

* more formatting fixes

* Formatting for CI

* fixed variable names

* Updated to use existing gainToDb method.

* Removed tests of removed method.

* Removed whitespaces and tabs.

* Moved Supports.ONLINE_TESTING to original position

* Moded Supports.ONLINE_TESTING to top
2018-05-16 10:41:02 -04:00
David Sherman
d0c58e088f Added type property to Tone.Meter (#276)
* Added 'type' property to Tone.Meter that accepts 'peak' or 'rms' and defaults to 'rms'. Calculation methods + sources added to Tone.Meter. Tests added to Tone.Meter + assertion sources.

* Fixed a number of formatting issues

* more formatting fixes

* Formatting for CI

* fixed variable names

* Updated to use existing gainToDb method.

* Removed tests of removed method.

* Removed whitespaces and tabs.

* Moved Supports.ONLINE_TESTING to original position

* Moded Supports.ONLINE_TESTING to top
2018-05-16 10:41:02 -04:00
timothyboie
ab87d37426 Time miscalculation fix (#343)
Times being converted to BarsBeatsSixteenths have the potential to miscalculate due to an extended floating point number within the function.

Example of error:
https://jsfiddle.net/timboie/1vztuhz1/

Fix validation:
https://jsfiddle.net/timboie/6e7d31t3/

Any further testing is appreciated

Fixes #342
2018-05-15 10:10:10 -04:00
timothyboie
4cd88ab1eb Time miscalculation fix (#343)
Times being converted to BarsBeatsSixteenths have the potential to miscalculate due to an extended floating point number within the function.

Example of error:
https://jsfiddle.net/timboie/1vztuhz1/

Fix validation:
https://jsfiddle.net/timboie/6e7d31t3/

Any further testing is appreciated

Fixes #342
2018-05-15 10:10:10 -04:00
ZIwen
fa23475906 Update Sampler.js (#346)
support sampler polyphonic syntax
2018-05-15 10:07:36 -04:00
ZIwen
e39e392791 Update Sampler.js (#346)
support sampler polyphonic syntax
2018-05-15 10:07:36 -04:00
tambien
a61467bfa5 fixes safari issue with splitting audio 2018-05-03 16:46:51 -04:00
tambien
6438f4688c fixes safari issue with splitting audio 2018-05-03 16:46:51 -04:00
tambien
ddbfa81bc3 no need to set the splitter defaults
this is no longer configurable and throws an error when set.

addresses #340
2018-05-03 16:26:45 -04:00
tambien
a5c566a766 no need to set the splitter defaults
this is no longer configurable and throws an error when set.

addresses #340
2018-05-03 16:26:45 -04:00
Joe Lepper
92a7bab0b4 fix Tone.Midi examples (#337) 2018-04-26 10:31:26 -04:00
Charles Holbrow
51ac1a2100 Sampler Instrument can play entire sample, even when pitch shifting down. (#335)
* Sampler instrument does not truncate playback when pitch shifting down

* `BufferSource.start` defaults to playing the entire buffer, respects `this.playbackRate`

Previously, the Buffer would truncate the sample when `playbackRage` is less than 1.

Within the `start` method, this commit also tightens the scope of `var computedDur`, so
that it is accessible only where it is used.
2018-04-25 14:27:50 -04:00
Yotam Mann
5e0a2285b4 fixing syncronization issue 2018-04-25 11:46:13 -04:00
Yotam Mann
1026c34163 removing unnecessary @private
fixes #330
2018-04-25 11:10:15 -04:00
Yotam Mann
7d862a1705 Removing support for native cancelAndHoldAtTime
Chrome's implementation causes occassional crashes

fixes #332
2018-04-25 11:02:50 -04:00
Yotam Mann
39d5898738 Time classes take Object notation as well
replacement for deprecated expression notation
2018-04-25 10:51:36 -04:00
Yotam Mann
542914bcb7 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2018-04-25 10:29:18 -04:00
Yotam Mann
2fab59e446 fixing typo in triggerAttack
fixes #333
2018-04-25 10:28:49 -04:00
jbpuryear
d4d569e52b Fix AudioNode.disconnect error when disconnecting from signals/params (#329) 2018-04-22 16:45:02 -04:00
Matan Gover
147341688c Fix typo in documentation. (#327) 2018-04-09 12:09:46 -07:00
Yotam Mann
62e2cf5dfc fixing docs 2018-04-09 13:24:10 -04:00
Yotam Mann
ee3d077410 incrementing version 2018-04-08 00:29:01 -07:00
Yotam Mann
79397e1075 Merge branch 'dev'
# Conflicts:
#	Tone/core/Tone.js
2018-04-06 17:22:23 -07:00
Yotam Mann
f0bddd08ab release candidate 2017-09-16 15:35:52 -04:00
Yotam Mann
25315eccc2 removing warnings triggered in constructor 2017-09-15 18:05:23 -04:00
Yotam Mann
13fdf13f57 linting 2017-09-15 17:54:32 -04:00
Yotam Mann
39389e810c warning if scheduling time is in the past
addresses #260
2017-09-15 17:50:12 -04:00
Yotam Mann
1559b8275a Add warning if time is scheduled in the past 2017-09-15 17:45:57 -04:00
Yotam Mann
c7385ef575 using exponential curve in sampler 2017-09-15 09:07:09 -04:00
Yotam Mann
33e7bd0c13 adding "curve" to BufferSource fades 2017-09-13 18:30:43 -04:00
Yotam Mann
f1507b0bb7 moving getTimeConstant into its own method 2017-09-13 17:12:25 -04:00
Yotam Mann
20ac5d8d11 cancel values after the current time, but not into the future 2017-09-13 11:18:49 -04:00
Yotam Mann
42634bd453 using exponential approach for decay and release curves 2017-09-13 11:04:13 -04:00
Yotam Mann
8340b4856c correctly setting ramp point for all curve types 2017-09-13 11:02:17 -04:00
Yotam Mann
9f545c4bdd exponential approach rampTo 2017-09-13 11:00:32 -04:00
Yotam Mann
994d932f2c fixing typo in variable name 2017-09-13 10:02:01 -04:00
Yotam Mann
918e18119a small jsdoc tweak 2017-09-09 19:10:02 -04:00
Yotam Mann
f3732410dc class extends TransportEvent 2017-09-04 16:16:34 -04:00
Yotam Mann
08812c0886 optimizing the way that repeat events are handled 2017-09-04 16:08:47 -04:00
Yotam Mann
5d86d72cfb handles events which are added during iteration in the same was as events which are removed during iteration 2017-09-04 16:04:16 -04:00
Yotam Mann
f9fcceb226 Creating Transport event classes which are used internally by the Transport 2017-09-04 16:03:20 -04:00
Yotam Mann
d37c88825a going back to dev version 2017-09-04 11:45:46 -04:00
Yotam Mann
6a3461bee8 simplifying removal code 2017-09-04 10:46:27 -04:00
Yotam Mann
303e171c6b fixing spelling of comparator 2017-09-04 10:41:23 -04:00
Yotam Mann
8a5dd01274 only test loop length in _search method 2017-09-02 11:39:40 -04:00
Yotam Mann
3fa2c1a69d correcting internal link 2017-08-31 18:24:18 -04:00
Yotam Mann
892668b01e linearRampToValue -> linearRampTo 2017-08-31 12:45:25 -04:00
Yotam Mann
6662ca8670 adding cancelAndHold to signal classes
with fallback for unsupported browsers
2017-08-31 12:41:15 -04:00
Yotam Mann
1603ad7b0f splitting Analyser functionality into multiple classes
simplifies the API
2017-08-31 10:56:19 -04:00
Yotam Mann
d6fe0e6d68 analyse() -> getValue() 2017-08-30 14:42:50 -04:00
Yotam Mann
75bf464cea updating jsdoc type 2017-08-30 12:52:33 -04:00
Yotam Mann
537eca39c0 updating version 2017-08-28 15:11:03 -04:00
Yotam Mann
3ddef693e7 Param extends AudioNode 2017-08-28 11:38:45 -04:00
Yotam Mann
631e307d01 updating connect methods jsdocs 2017-08-28 11:08:47 -04:00
Yotam Mann
e51fc401ef updating private method jsdocs 2017-08-28 11:08:20 -04:00
Yotam Mann
29100b8152 setting method to private 2017-08-27 20:00:28 -04:00
Yotam Mann
a890d78628 using createInsOuts method from Tone.AudioNode 2017-08-27 19:50:36 -04:00
Yotam Mann
e4044bf39e TransportTimelineSignal is a TimelineSignal which can be scheduled to the Transport 2017-08-27 19:42:10 -04:00
Yotam Mann
e6faa39dba classes which generate or process sound extend Tone.AudioNode 2017-08-27 17:50:31 -04:00
Yotam Mann
d6eefa800c moving connect/disconnect to AudioNode 2017-08-27 17:48:52 -04:00