Commit graph

2057 commits

Author SHA1 Message Date
tambien
cb2ee0cf05 extends AudioNode 2018-07-30 13:30:21 -04:00
tambien
caeb628dc0 assign the listener before it's used! 2018-07-30 13:13:00 -04:00
tambien
65691d3c8a assign the listener before it's used! 2018-07-30 13:13:00 -04:00
tambien
d38fefb2cd toMaster uses the instance connected to the context 2018-07-30 13:07:46 -04:00
tambien
df1c27fbda toMaster uses the instance connected to the context 2018-07-30 13:07:46 -04:00
tambien
ae90dafc8c using global TONE_AUDIO_CONTEXT 2018-07-29 23:34:40 -04:00
tambien
5681b0701f using global TONE_AUDIO_CONTEXT 2018-07-29 23:34:40 -04:00
tambien
df5c800df4 changing singleton references to lowercase 2018-07-29 23:34:13 -04:00
tambien
8b0c210d60 changing singleton references to lowercase 2018-07-29 23:34:13 -04:00
tambien
2542f55727 fixing comment 2018-07-29 09:36:54 -04:00
tambien
169662a13a fixing comment 2018-07-29 09:36:54 -04:00
tambien
91652ff2ff reverting change 2018-07-29 09:36:02 -04:00
tambien
48f4633e61 reverting change 2018-07-29 09:36:02 -04:00
tambien
9edafa8be4 removing source when sample has finished
prevents error where the BufferSource.stop is attempted after the source has already finished
2018-07-29 09:28:45 -04:00
tambien
e52ce0d965 removing source when sample has finished
prevents error where the BufferSource.stop is attempted after the source has already finished
2018-07-29 09:28:45 -04:00
tambien
36f037ad56 updating jsdoc comment 2018-07-28 10:21:02 -04:00
tambien
99de3295da updating jsdoc comment 2018-07-28 10:21:02 -04:00
tambien
38897d7bae pass the options object to the next class 2018-07-28 10:20:36 -04:00
tambien
f61f17034a pass the options object to the next class 2018-07-28 10:20:36 -04:00
tambien
1507fe25db removing onConnect method 2018-07-27 07:32:31 -04:00
tambien
bc8dc5ff7f removing onConnect method 2018-07-27 07:32:31 -04:00
Yotam Mann
16b0263b7b deferring onload callback
fixes #376
2018-07-25 21:54:13 -04:00
Yotam Mann
6005162263 deferring onload callback
fixes #376
2018-07-25 21:54:13 -04:00
Yotam Mann
b081a9e656 fixing typos 2018-07-21 09:06:28 -04:00
Yotam Mann
13b91673b9 fixing typos 2018-07-21 09:06:28 -04:00
Yotam Mann
ea218c2921 adding logging 2018-06-20 23:12:17 -04:00
Yotam Mann
7431480efa adding logging 2018-06-20 23:12:17 -04:00
Yotam Mann
0173e31c91 adding an index to each voice 2018-06-20 23:02:44 -04:00
Yotam Mann
881a02f26c adding an index to each voice 2018-06-20 23:02:44 -04:00
Yotam Mann
f76beaf916 moving to updated BufferSource fade out api
Player still fades from the end
2018-06-20 15:08:16 -04:00
Yotam Mann
da0e118dfd moving to updated BufferSource fade out api
Player still fades from the end
2018-06-20 15:08:16 -04:00
Yotam Mann
ad1e362d7c release happens after stop time
as per new BufferSource api
2018-06-20 15:03:52 -04:00
Yotam Mann
16c96c4486 release happens after stop time
as per new BufferSource api
2018-06-20 15:03:52 -04:00
Yotam Mann
fec49b6936 stops clock after 1 iteration when loop = false
removing seek method. adjusts for playbackRate when scheduling grain duration
2018-06-20 14:57:42 -04:00
Yotam Mann
adbcbdd41e stops clock after 1 iteration when loop = false
removing seek method. adjusts for playbackRate when scheduling grain duration
2018-06-20 14:57:42 -04:00
Yotam Mann
9ece80d1f4 logging cancel and hold for debugging 2018-06-20 14:56:49 -04:00
Yotam Mann
d31c0e2ec1 logging cancel and hold for debugging 2018-06-20 14:56:49 -04:00
Yotam Mann
36c19e3762 AudioContext resume does not apply to OfflineAudioContext 2018-06-20 14:56:35 -04:00
Yotam Mann
0e89ddf854 AudioContext resume does not apply to OfflineAudioContext 2018-06-20 14:56:35 -04:00
Yotam Mann
8a74995f2e making logs more descriptive 2018-06-20 14:56:11 -04:00
Yotam Mann
488b84c954 making logs more descriptive 2018-06-20 14:56:11 -04:00
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
Yotam Mann
6ceca510e4 moving functionality over to Tone.AudioNode 2017-08-27 17:21:17 -04:00
Yotam Mann
35040e94e3 class for processing audio
differentiates classes which process audio and classes which don’t.
keeping in mind the eventual goal of supporting node.js audio rendering
and support for multiple audio contexts
2017-08-27 17:18:19 -04:00
Yotam Mann
b849b68132 updating extends jsdoc to reflect inheritance 2017-08-27 16:30:26 -04:00
Yotam Mann
ea869e7c93 updating jsdoc comment to reflect that class extends Tone.Instrument 2017-08-27 16:28:29 -04:00
Yotam Mann
ffa4cbd0f0 updating comment to reflect that it extends Tone.Source 2017-08-27 16:25:43 -04:00
Yotam Mann
841f2448ca can solo multiple audio streams at once 2017-08-27 15:01:13 -04:00
Yotam Mann
b731c85cae adding 'mute' to PanVol 2017-08-27 13:57:50 -04:00
Yotam Mann
1e148a9c74 Sampler is now an instrument for creating a chromatic instrument from pitched samples 2017-08-27 12:55:54 -04:00
Yotam Mann
1d362ee6f7 account for release time when scheduling note stop 2017-08-26 15:39:09 -04:00
Yotam Mann
6937466554 fixed rounding error when converting frequency to midi 2017-08-26 15:39:09 -04:00
Yotam Mann
5bea2666c0 defaults can also take an object as third argument 2017-08-26 15:39:09 -04:00
Yotam Mann
8110d38bd6 master->dev 2017-08-22 11:57:40 -04:00
Yotam Mann
982e31c099 adding Gain typedef 2017-08-22 11:44:12 -04:00
Alan Russell
bd0b36b9ab Point links to Synth Secrets on archive.org (#254)
* point Cymbal Synthesis link to archive.org

* point to Synth Secrets Amplitude Modulation article on archive.org

* point to pair of Synth Secrets FM articles on archive.org

* point to Synth Secrets Reverb article on archive.org

* Revert "point Cymbal Synthesis link to archive.org"

This reverts commit f621d8ecec.

* point to Synth Secrets Cymbal Synthesis article on archive.org
2017-08-15 01:02:00 -04:00
Yotam Mann
a4032ad65c linting 2017-08-13 21:46:43 -04:00
Yotam Mann
5fe3e9106c using async callback for getting context
for classes that need it on init
2017-08-13 21:37:32 -04:00
Yotam Mann
f5e5cd16f6 async callback for getting the context
useful on init when the context isn’t necessarily available
2017-08-13 21:36:21 -04:00
Yotam Mann
63fcb4af1e updating private variable 2017-08-12 10:45:28 -04:00
Yotam Mann
faee7175e1 added link in deprecation notice 2017-08-08 20:50:55 -04:00
Yotam Mann
d1af3f71ca connect instead of chain 2017-08-08 13:30:38 -04:00
Yotam Mann
486344bb87 replacing set curve internals with a series of linear ramps
simplifies code
2017-08-08 13:30:38 -04:00
Jack Anderson
1fb225383e no insignificant zeroes in barsBeatsSixteenths (#250)
* no insignificant zeroes in barsBeatsSixteenths

- fixes #246

* restore bpm to orig val in trailing zero test
2017-08-08 10:54:47 -04:00
Yotam Mann
bf52df2fdc check that there is an AudioNode before augmenting it 2017-07-27 18:06:05 -04:00
Yotam Mann
7050400f32 using @private instead of @internal
[skip ci]
2017-07-27 18:02:44 -04:00
Yotam Mann
066eb207ad updating Time copy
[skip ci]
2017-07-27 18:02:21 -04:00
Yotam Mann
9f31807cf4 sampleTime and blockTime should be instance variables not static 2017-07-27 17:54:57 -04:00
Yotam Mann
effd317acd Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2017-07-27 17:46:15 -04:00
Yotam Mann
4e69013265 copyFromChannel shouldn't exceed the destination arrays length 2017-07-08 11:54:11 -04:00
Yotam Mann
7734e70421 removing unnecessary returnType setting 2017-07-08 11:46:27 -04:00
Yotam Mann
3a08d9fd2e return type is always float32
removing byte analysis since it isn’t very useful
2017-07-08 11:21:26 -04:00
Yotam Mann
c3c5364397 remove unreachable code 2017-07-06 10:32:31 -04:00
Yotam Mann
e0fadfcb8e use the timeout callbacks update interval 2017-07-05 14:47:27 -04:00
Yotam Mann
9e3e598220 passing in options to super constructor 2017-07-05 13:59:13 -04:00
Yotam Mann
dfdd665881 context takes an options object 2017-07-05 13:58:36 -04:00
Yotam Mann
c30b07cbd5 terminate web worker on dispose 2017-06-30 16:04:10 -04:00
Yotam Mann
3ece282d04 removing window debugging reference 2017-06-30 15:44:30 -04:00
Yotam Mann
68ce570476 Revert "without try/catch"
This reverts commit cf085112fe.
2017-06-30 15:38:01 -04:00
Yotam Mann
cf085112fe without try/catch 2017-06-30 15:31:30 -04:00
Yotam Mann
dae97143d5 using clockSource API 2017-06-29 19:49:43 -04:00
Yotam Mann
86698bb5d6 use setTimeout if Web Worker is not available
Addresses #208
2017-06-29 19:49:25 -04:00
Yotam Mann
8f63e7c3fe using Tone.defaultArg and throwing error directly to help with debugging 2017-06-29 15:59:06 -04:00
Yotam Mann
207c4e66e4 removing lag checking 2017-06-29 15:58:35 -04:00
Yotam Mann
835a3be67d no need to schedule a block in the future since lookAhead is now built into Tone.now() 2017-06-29 13:55:36 -04:00
Yotam Mann
2f65397000 don't convert to ticks twice 2017-06-29 12:33:16 -04:00
Yotam Mann
49b54f3c4c removing unused conditional
`options.events` will always be defined because of `Tone.defaults`
2017-06-29 11:02:15 -04:00
Yotam Mann
c22f630182 removing unused conditionals 2017-06-29 10:43:55 -04:00
Yotam Mann
1f604f3f31 update sampler example
Fixes #243
[skip ci]
2017-06-28 15:23:49 -04:00
Yotam Mann
96719c8621 Clock forwards the caught error
makes the source of the crash easier to find
2017-06-28 15:22:26 -04:00
Yotam Mann
62e05f6d57 styling
[skip ci]
2017-06-26 18:19:30 -04:00
Yotam Mann
da60cbdfea Merge pull request #242 from christopheralcock/patch-1
tiny typo
2017-06-23 15:44:27 -05:00
Christopher Alcock
55f489c73b tiny typo
sorry for pedantry
2017-06-23 16:33:54 +01:00
Yotam Mann
d69770eea3 don't remove all of the Transport synced events with Source.unsync 2017-06-21 17:28:50 -04:00
Yotam Mann
2aacd45a0b fixing error in comment
[skip ci]
2017-06-21 10:22:10 -04:00
Yotam Mann
dc4acf15c2 updating jsdocs
[skip ci]
2017-06-21 10:22:00 -04:00
Yotam Mann
28caddede6 updating jsdocs
[skip ci]
2017-06-21 10:21:49 -04:00
Yotam Mann
775042bbe7 removing "lookAhead" from Clock 2017-06-21 10:21:38 -04:00
Yotam Mann
22b86333aa putting method in <pre> tag
[skip ci]
2017-06-21 10:21:20 -04:00
Yotam Mann
8d7ee0ec5c lookAhead is not static
[skip ci]
2017-06-21 10:20:43 -04:00
Yotam Mann
15537e1f19 dispose Transport/Master when context is closed 2017-06-19 17:51:59 -04:00
Yotam Mann
b670936c67 emit an event when a context is closed
to clean up Master/Transport and anything else static on the context
2017-06-19 17:51:03 -04:00
Yotam Mann
1c2e9afc0c float is default analyser return type 2017-06-19 17:13:46 -04:00
Yotam Mann
f9f1d3544e removing url flattening
little used/unnecessary feature
2017-06-19 17:10:36 -04:00
Yotam Mann
e105387072 Players can fadeIn/Out 2017-06-19 15:18:50 -04:00
Yotam Mann
83866e6492 adding fadeIn/Out to Player 2017-06-19 15:11:15 -04:00
Yotam Mann
2de449b74c fadeOut is subtracted from end of the sample
instead of the stop time being the beginning of the fade out.
2017-06-19 15:03:10 -04:00
Yotam Mann
ff100a1db2 provide multiple extension types which are used as fallbacks if the first extension format is not supported 2017-06-19 13:02:29 -04:00
Yotam Mann
bdbbc14ad5 toggle the Transport state 2017-06-16 17:32:04 -04:00
Yotam Mann
0a42b3ef54 adding triggerAttackRelease method
Instrument one does not work with MultiSampler since a note is required
as the first argument
2017-06-16 17:27:30 -04:00
Yotam Mann
69481fd05b removing comment
[skip ci]
2017-05-28 22:19:26 -04:00
Yotam Mann
59a276d8fe including lookAhead in now() removes need for adding blockTime to reduce clicks 2017-05-28 21:52:28 -04:00
Yotam Mann
77d404963c lookAhead applied to all scheduled events
by placing it in the ‘now’ method instead of Tone.Clock
2017-05-28 21:44:56 -04:00
Yotam Mann
81df4a9a0e deprecating multiplayer
use Tone.Players instead
2017-05-28 21:38:31 -04:00
Yotam Mann
edf14cffe4 GrainPlayer no longer uses MultiPlayer
uses BufferSource instead
2017-05-28 21:27:59 -04:00
Yotam Mann
2328413a8f stops playing if invoked with 'stop' at an earlier time
does not stop playing if `stop` is invoked with a later time
2017-05-28 21:20:17 -04:00
Yotam Mann
b9170401b0 using unit conversion 2017-05-28 20:47:27 -04:00
Yotam Mann
e3715a634e removing unused tryCallback 2017-05-28 19:42:08 -04:00
Yotam Mann
23c5a10fff offline context has 0 lookahead 2017-05-28 19:39:35 -04:00
Yotam Mann
652c5631cc clock using TickSignal 2017-05-28 19:39:18 -04:00
Yotam Mann
06a3413824 removing start/stop/pause events from TickSignal
adding `getDurationOfTicks`
2017-05-28 16:55:25 -04:00
Yotam Mann
7afa2c578c cancel->cancedScheduledValues 2017-05-28 14:14:22 -04:00
Yotam Mann
5a8550690f start/stop/pause events to TickSignal 2017-05-28 14:02:15 -04:00
Yotam Mann
73adc20088 get an event before the given event 2017-05-28 13:57:47 -04:00
Yotam Mann
aa5b81f8d1 linting 2017-05-26 22:25:12 -04:00
Yotam Mann
323eb3000a using inverse integral technique described in WAC paper 2017-05-26 22:16:09 -04:00
Yotam Mann
8727ca4383 linting 2017-05-26 17:39:45 -04:00
Yotam Mann
bed6181b70 no input node on TimelineSignal
that way nothing could be connected to it which would overwrite its
computed values
2017-05-26 17:17:32 -04:00
Yotam Mann
8081940629 timeline takes optional comparator arg to getters
allows it to do binary search on other attributes, not just time
2017-05-26 17:06:11 -04:00
Yotam Mann
686a591219 linting 2017-05-26 16:55:03 -04:00
Yotam Mann
f86639fc8e Tone.TickSignal calculates elapsed ticks
sums area under scheduling curve. approximates exponential and target
curves using multiple linear ramps
2017-05-26 16:45:30 -04:00
Yotam Mann
dc0e61c757 Revert "don't update clock time, just tick time"
This reverts commit 6597764434.
2017-05-23 23:29:14 -04:00
Yotam Mann
6597764434 don't update clock time, just tick time 2017-05-23 22:14:50 -04:00
Yotam Mann
54b11df1dd simplifying BufferSource playback offset > loopEnd logic 2017-05-23 09:30:17 -04:00
Yotam Mann
ea4078348f don't nullify source when stopped
fixes #241
2017-05-22 16:11:50 -04:00
Yotam Mann
0ba7837899 cloning queue to remove items within forEach loop 2017-05-21 21:00:44 -07:00
Yotam Mann
3f6c22ed39 removing unnecessary if statement 2017-05-21 20:41:43 -07:00
Yotam Mann
c8c436cbf2 Tone.Players wraps up multiple Tone.Player objects
fixes #215
fixes #217
2017-05-21 20:40:20 -07:00
Yotam Mann
a6bb882758 readonly loaded boolean if the buffer is loaded 2017-05-21 20:25:35 -07:00
Yotam Mann
8d84d67c4a Transport loops when ticks is >= loopEnd
Fixes #223
2017-05-21 19:43:31 -07:00
Yotam Mann
d41c649a5c Buffer onload and onprogress only rely on downloadQueue and not currentDownloads count 2017-05-21 19:12:14 -07:00
Yotam Mann
fc1496182a making channel mode explicit
fixes splitting problem in FF
2017-05-16 22:51:51 -07:00
Yotam Mann
264e5d0869 pass additional options other than the urls in second constructor argument 2017-05-13 22:16:05 -04:00
Yotam Mann
f778774401 linting 2017-05-13 22:14:13 -04:00
Yotam Mann
f87665a52a make sure that the downloads count doesn't go below 0 2017-05-13 22:09:20 -04:00
Yotam Mann
5d7bd92d7a MultiSampler instrument 2017-05-13 22:08:04 -04:00
Yotam Mann
260d27bbb3 instruments depend on Tone.Master 2017-05-08 11:49:08 -04:00
Yotam Mann
e30e6c5cc9 try/catch block around callback
allows it to recover from errors that are in the callback

fixes #239
2017-05-08 11:45:21 -04:00
Yotam Mann
b1c5da4234 closing paren in docs
[skip ci]
2017-05-07 19:42:03 -07:00
Yotam Mann
02ff1b1817 changing blockTime refs to static references 2017-05-07 19:17:50 -07:00
Yotam Mann
c9203221aa making blockTime and sampleTime static vars 2017-05-07 19:15:35 -07:00
Yotam Mann
44a041a027 making method as private
[skip ci]
2017-05-07 18:45:23 -07:00
Yotam Mann
32842fde3a delayTime is signal of type Time
[skip ci]
2017-05-07 18:45:09 -07:00
Yotam Mann
18d9802dd9 updating numberOfInputs/Outputs docs
[skip ci]
2017-05-07 18:44:44 -07:00
Yotam Mann
cb1937062c throwing error when passed in device is not found 2017-05-02 20:58:14 -04:00
Yotam Mann
b0a0ff2a38 removing unnecessary conditional 2017-05-02 20:48:20 -04:00
Yotam Mann
488299a822 Player uses BufferSource 2017-05-02 12:15:00 -04:00
Yotam Mann
a1a4ad81c3 testing the empty constructor and static fromArray method 2017-05-01 19:10:05 -04:00
Yotam Mann
fd25ee83e0 fixing linting errors 2017-05-01 19:00:31 -04:00
Yotam Mann
b760821234 BufferSource.buffer is a Tone.Buffer 2017-05-01 18:52:53 -04:00
Yotam Mann
a5a673f6ed scheduling the stop time at buffer.duration - offset 2017-05-01 18:00:31 -04:00
Yotam Mann
61cad0f1fc BufferSource uses context's setTimeout method for onended
removed source.stop method. stopping now relies entirely on the gain
node.

fixes #230
fixes #233
2017-05-01 17:46:51 -04:00
Yotam Mann
b1e7c8153a removing hacky chrome fix
No longer needed now that bug is fixed in Chrome.

#163
2017-05-01 16:39:13 -04:00
Yotam Mann
695fd2421f can receive to a specific input number instead of input node 2017-05-01 16:03:04 -04:00
Yotam Mann
ceb209313e fixing disconnect from nonzero input/output 2017-05-01 15:49:35 -04:00
Yotam Mann
c4362c46f8 removing unnecessary arguments.length check 2017-05-01 14:26:11 -04:00
Yotam Mann
0b047ead65 removing unnecessary safety check 2017-05-01 14:19:47 -04:00
Yotam Mann
1b8fdc404d createInsOuts was using input count for output 2017-05-01 14:17:16 -04:00
Yotam Mann
7159700f11 making connectSeries static 2017-05-01 14:06:36 -04:00
Yotam Mann
17510c8f9c latency hint should be "interactive" when set to fastest lookAhead 2017-05-01 13:55:21 -04:00
Yotam Mann
0bd8fbb717 merging dev commits 2017-05-01 11:11:11 -04:00
Yotam Mann
b927395825 making defaultArg static 2017-04-30 15:03:49 -04:00
Yotam Mann
8cd381c2ca mirroring the way that Master is stored on the context 2017-04-30 14:48:57 -04:00
Yotam Mann
15c238a31e don't create unnecessary output 2017-04-30 14:48:39 -04:00
Yotam Mann
867798e55d properly disconnecting constant signals 2017-04-30 14:48:25 -04:00
Yotam Mann
0354a87dab hasStereoPanner is now static 2017-04-30 14:11:44 -04:00
Yotam Mann
3a0a55be7b Solo makes it easier to solo one of many sources
will mute all other instances of Tone.Solo when an instance.solo=true
2017-04-30 12:39:09 -04:00
Yotam Mann
f7b7600ac9 fixing jsdoc errors
[skip ci]
2017-04-30 11:16:35 -04:00
Yotam Mann
4bda177b83 gainToDb, dbToGain, intervalToFrequencyRatio now static functions 2017-04-26 23:21:26 -04:00
Yotam Mann
4bd1044cb4 using only static type queries 2017-04-26 00:27:28 -04:00
Yotam Mann
edfa168713 moving to static type queries
i.e. this.isString -> Tone.isString
2017-04-26 00:24:19 -04:00
Yotam Mann
2e807dde30 light styling 2017-04-26 00:08:41 -04:00
Yotam Mann
c544255953 using defaults in last remaining classes 2017-04-26 00:07:10 -04:00
Yotam Mann
2030034494 sources to new defaults api
and es6 classes prep
2017-04-26 00:00:01 -04:00
Yotam Mann
a48a980861 moving signals to static defaults
invoking super constructor in prep for es6 classes
2017-04-25 23:45:37 -04:00
Yotam Mann
aa54db39fe using static defaultArg/defaults methods 2017-04-25 23:22:34 -04:00
Yotam Mann
4019b49c12 effects moved to new defaults API 2017-04-25 23:18:08 -04:00
Yotam Mann
c9d41345b7 bass constructor invoked without options 2017-04-25 23:08:57 -04:00
Yotam Mann
6e585e8f82 components using new defaults api
also invoking super constructor first in preparation for es6 migration
2017-04-25 23:08:23 -04:00
Yotam Mann
4057252566 applying defaults API to control classes 2017-04-25 22:37:01 -04:00
Yotam Mann
b3dd6513b9 using new defaults API 2017-04-25 22:31:06 -04:00
Yotam Mann
a3f54ce4cd new defaults api 2017-04-25 22:23:22 -04:00
Yotam Mann
4d08462067 type checkers and defaults methods are static 2017-04-25 22:22:29 -04:00
Yotam Mann
58bdbbc82a invoke super constructor first
preparation for moving to es6 modules. also moving to slightly
simplified `default` method
2017-04-24 23:23:15 -04:00
Yotam Mann
4bf55605c8 removing circular dependency 2017-04-24 23:18:53 -04:00
Yotam Mann
e66c515762 setTimeout method which is guaranteed by the clock source
also includes clearTimeout. API is similar to window.setTimeout, but
time is in seconds instead of milliseconds
2017-04-24 23:13:29 -04:00
Yotam Mann
a4a94b63ea callback is invoked with the timeline as the context 2017-04-24 22:59:21 -04:00
Yotam Mann
aea6c80f09 trying out new defaults API 2017-04-24 22:10:13 -04:00
Yotam Mann
741073c17b transitioning defaults->optionsObject
slightly different API. defaults includes the default constructor API
without it needing to be passed in.
2017-04-24 22:08:59 -04:00
Yotam Mann
0befd293c9 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2017-04-20 15:14:44 -04:00
Yotam Mann
b82f2bd6d7 surfaced returnType in docs
[skip ci]
2017-04-20 15:13:30 -04:00