Commit graph

1809 commits

Author SHA1 Message Date
Yotam Mann
10727105f8 linting 2017-12-29 12:20:51 -05:00
Yotam Mann
0f7ee4344f WaveShaperNode shim 2017-12-29 12:02:40 -05:00
Yotam Mann
3e04de993b no sampleRate logging 2017-12-29 11:25:33 -05:00
Yotam Mann
10af6b1f7b fixing linting error 2017-12-29 11:09:55 -05:00
Yotam Mann
d0c7add2ae print context sample rate for debugging osx failures 2017-12-29 11:03:06 -05:00
Yotam Mann
ef25147c2a re-adding Safari shim 2017-12-28 18:49:47 -05:00
Yotam Mann
5ba49351d9 additional safety flag for if the internal BufferSourceNode is actually started
checking if the offset < duration keeps safari from going into invalid
state
2017-12-28 18:43:53 -05:00
Yotam Mann
3f996c2bc0 requiring BufferSource 2017-12-28 18:43:05 -05:00
Yotam Mann
83ec5d3288 transpose and harmonize Midi notes 2017-12-27 17:29:26 -05:00
Yotam Mann
4d8812ee02 transpose and harmonize a Tone.Frequency
fixes #219
2017-12-27 17:29:10 -05:00
Yotam Mann
7bd133ca02 using getTicksAtTime for better accuracy when getting progress 2017-12-27 16:29:15 -05:00
Yotam Mann
d72fba9bf7 using setTicksAtTime for more accuracy when setting/looping 2017-12-27 16:28:41 -05:00
Yotam Mann
40891fb865 using clock seconds
they are accurate even during bpm automation curves
2017-12-27 16:24:27 -05:00
Yotam Mann
32d5451293 ability to get/set ticks at a given time. more accurate seconds counter using elapsed ticks. 2017-12-27 16:23:39 -05:00
Yotam Mann
60cdeaa5f3 converting between ticks and seconds during automation curves
fixes #169
2017-12-27 16:21:45 -05:00
Yotam Mann
a10ea86882 use setValueAtTime for .value setting 2017-12-27 16:18:14 -05:00
Yotam Mann
be8027549a use 'this.now()' instead of Tone.now() 2017-12-27 11:51:50 -05:00
Yotam Mann
8dbaf71d89 forEachBetween iterator 2017-12-27 11:46:27 -05:00
Yotam Mann
e3d9cd136a use 'this.now()' instead of Tone.now() 2017-12-27 11:45:37 -05:00
Yotam Mann
f6bd45036e increasing number of segments in exponential and approach ramps 2017-12-25 14:43:59 -05:00
Yotam Mann
e61a4c5fe2 renaming to getTicksAtTime 2017-12-21 15:13:43 -05:00
Yotam Mann
7bf39fc7c5 using Math.log2 instead of dividing by Math.LN2 2017-12-18 10:45:25 -05:00
Yotam Mann
3ea44d3af6 linting 2017-12-17 14:49:26 -05:00
Yotam Mann
d4afe1e6ee Tone.Midi is primitive type for Midi notes 2017-12-17 14:48:25 -05:00
Yotam Mann
2138d2c26f adding toMidi() 2017-12-17 14:48:08 -05:00
Yotam Mann
456dd7ceb3 making midi<->freq conversions static 2017-12-17 14:47:51 -05:00
Yotam Mann
77d352450f moving basic conversions to TimeBase 2017-12-17 14:44:36 -05:00
Yotam Mann
1bb0a95a8e clone array so that events can be added/removed during iteration 2017-12-17 14:18:47 -05:00
Yotam Mann
0bb2391a43 clean up time value on dispose 2017-12-17 13:33:09 -05:00
Yotam Mann
e55b1e9dc1 toNotation() returns closest notation representation 2017-12-17 13:26:21 -05:00
Yotam Mann
38d493fc68 using Tone.Ticks to represent times 2017-12-17 13:26:04 -05:00
Yotam Mann
cee2d3da3a TransportTime returns seconds instead of Ticks
introducing Ticks for tick representation
2017-12-17 13:24:34 -05:00
Yotam Mann
32374fe27a constructor can take another type and convert it to target type 2017-12-17 13:23:31 -05:00
Yotam Mann
ade2778082 Tone.Ticks extends TransportTime 2017-12-17 13:17:46 -05:00
Yotam Mann
92c7638786 evaluate time with .valueOf 2017-12-17 12:53:34 -05:00
Yotam Mann
ac6af1cf56 simplifying TimeBase classes. No longer evaluate expressions 2017-12-16 14:31:09 -05:00
Yotam Mann
933fa95b45 define loopStart/End, subdivision and interval in terms of seconds 2017-12-16 14:23:08 -05:00
Yotam Mann
8f3f480baa loopStart/End times in Time instead of TransportTime 2017-12-16 14:08:22 -05:00
Yotam Mann
41eeb9884f adding min/maxValue to Param 2017-12-16 13:09:52 -05:00
Idicious
43c2e9b449 Increased general accurary of dbToGain method + updated test cases. (#279)
* Increased general accurary of dbToGain method + updated test cases.

* Increased test accuracy
2017-12-16 00:04:50 -05:00
Yotam Mann
b929b26ca4 can pass in an unloaded Tone.Buffer into Convolver constructor
fixes #277
2017-12-15 23:36:39 -05:00
Yotam Mann
e4380a048b player can be constructed with unloaded Tone.Buffer
onload callback is invoked when the Buffer parameter is loaded

fixes #273
2017-12-15 23:06:06 -05:00
Yotam Mann
4c783c9b09 buffer can be constructed with an unloaded Buffer
load callback is invoked when parameter Buffer is loaded
2017-12-15 23:04:22 -05:00
Yotam Mann
bc2be646dc fixing linting errors 2017-12-15 12:50:30 -05:00
Yotam Mann
0d22648aef adding 'once' to mixin methods 2017-12-15 12:49:53 -05:00
Yotam Mann
e184f9f149 using native connect instead of 'chain' 2017-12-15 12:49:41 -05:00
Yotam Mann
7d1b06f1bb promise-based decodeAudioData 2017-12-15 12:48:58 -05:00
Yotam Mann
167af325b5 decodeAudioData promise shim 2017-12-15 12:48:46 -05:00
Yotam Mann
a6ebaeeb9f Emitter.once invokes a callback only once 2017-12-15 11:11:14 -05:00
Yotam Mann
db4e5fab0d if the constructor delayTime is greater than the maxDelay, use the delayTime as the maxDelay
fixes #280
2017-12-06 13:16:22 -05:00
Yotam Mann
f818bede9a releaseAll stops all currently active notes
fixes #272
2017-11-29 16:54:17 -05:00
Yotam Mann
27b1513ddf removing Tone.Expr
no more use for this class
2017-11-29 16:28:47 -05:00
Yotam Mann
7b35eee3ed throw error if constructor is invoked without 'new'
addresses #271
2017-11-29 16:28:04 -05:00
Yotam Mann
528882be53 does not require device and deviceId in gUM 2017-11-29 15:38:25 -05:00
Yotam Mann
3e7e351e4a fixing typo in else statement 2017-11-29 15:27:01 -05:00
Yotam Mann
f5e6d973c9 only throw 'no matching device error' when a specific device is requested 2017-11-29 15:22:58 -05:00
Yotam Mann
9a745e3624 PolySynth throws error if the instrument voice is not Monophonic
fixes #270
2017-11-26 11:22:25 -08:00
Yotam Mann
4316530b16 linting 2017-10-26 16:03:00 -04:00
Yotam Mann
c58fad41f0 linting 2017-10-26 15:26:04 -04:00
Yotam Mann
06118bf52d moving shims to AudioContext 2017-10-26 14:09:20 -04:00
Yotam Mann
f446185eb7 removing Expr from StereoWidener 2017-10-26 13:51:51 -04:00
Yotam Mann
9ddb392b7c flagging line to ignore 2017-10-26 13:27:07 -04:00
Yotam Mann
5feb1976f7 linting 2017-10-26 13:25:37 -04:00
Yotam Mann
a5e949ce6c moving OfflineAudioContext shim to separate file 2017-10-26 13:14:00 -04:00
Yotam Mann
39ebf3d36f removing unused var 2017-10-26 13:13:36 -04:00
Yotam Mann
255b20cebb signal uses ConstantSourceNode (shimmed when not available) 2017-10-26 11:33:42 -04:00
Yotam Mann
7a870296bc linting 2017-10-26 01:07:53 -04:00
Yotam Mann
9449a6102c moving shim to it's own file 2017-10-26 00:52:09 -04:00
Yotam Mann
2d2424e639 envelope uses Signal instead of TimelineSignal
they are equivalent now bc of the AudioParam shim
2017-10-26 00:51:31 -04:00
Yotam Mann
374365f2a8 param uses shimmed AudioParam 2017-10-26 00:51:02 -04:00
Yotam Mann
903c87ff72 user media does not look for 'default'
instead takes the first device if nothing is specified
2017-10-26 00:50:22 -04:00
Yotam Mann
36ffd3d779 increasing the waveshaper steps 2017-10-26 00:26:25 -04:00
Yotam Mann
183bd1e94d using StereoPannerNode shim when not supported 2017-10-26 00:07:02 -04:00
Yotam Mann
72200b530f effect is no longer a feedback effect.
fixes #226
2017-10-25 23:30:07 -04:00
Yotam Mann
9400091609 modulus the offset by the duration in case the offset > duration 2017-10-25 23:05:30 -04:00
Yotam Mann
eb162526bb moving shim to it's own file 2017-10-25 23:01:42 -04:00
Yotam Mann
7f148b5c34 moving shim to another file 2017-10-25 23:01:26 -04:00
Yotam Mann
305fdc02da moving shim to another file 2017-10-25 23:00:37 -04:00
Yotam Mann
0d85d90f5c reducing volume further 2017-10-25 23:00:20 -04:00
Yotam Mann
f707458349 shimming AudioParam to account for a few browser discrepancies 2017-10-25 18:25:41 -04:00
Yotam Mann
4628ff3c64 increasing the number of values in the abs array 2017-10-25 18:17:00 -04:00
Yotam Mann
89743bc91a reverting while loop 2017-10-25 17:59:35 -04:00
Yotam Mann
2c7e200ade close returns promise like in AudioContext 2017-10-25 17:59:17 -04:00
Yotam Mann
99f73e47f7 Context.ready returns a promise when the AudioContext reports itself as 'running' 2017-10-25 17:59:03 -04:00
Yotam Mann
8c85f8bcf2 Context.dispose returns promise which resolves when the context is closed 2017-10-25 17:58:36 -04:00
Yotam Mann
a82ab45132 linting 2017-10-25 17:57:52 -04:00
Yotam Mann
cb2a982c39 linting 2017-10-21 19:02:46 -04:00
Yotam Mann
1d18b1c53b removing Tone.Expr from classes 2017-10-21 18:29:50 -04:00
Yotam Mann
a908d6bd92 correcting 'pan' type 2017-10-21 15:22:14 -04:00
Yotam Mann
d61a22e7f4 linting 2017-10-21 13:52:06 -04:00
Yotam Mann
da26a1c94c keeps track of BufferSources on the state timeline
addresses #258
2017-10-21 13:49:48 -04:00
Yotam Mann
916430ac2e increasing the memory of the state timeline 2017-10-21 13:44:54 -04:00
Tim Pulver
202f6fd03f Fix doc: singular -> plural (#264) 2017-09-29 10:26:50 -04:00
Yotam Mann
54bd67332f fixing logging when is supported and initialized 2017-09-29 00:06:00 -04:00
Yotam Mann
dd1044a56f Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2017-09-28 23:44:10 -04:00
Yotam Mann
b7287a767b using global TONE_AUDIO_CONTEXT keeps multiple contexts from being created on the same page 2017-09-28 23:44:07 -04:00
Steve De Jonghe
713e97fbeb Fix typo in MembraneSynth description (#262)
"applied during during ..." => "applied during ..."
2017-09-26 12:33:41 -04:00
Yotam Mann
6d38440379 using exponentialApproachValueAtTime 2017-09-20 19:04:49 -04:00
Yotam Mann
0723f50796 exponentialApproachAtTime is the same as setTargetAtTime but the timeConstant is computed based on the given time 2017-09-20 19:04:33 -04:00
Yotam Mann
086ff88168 dont limit output value to minValue. throw error when timeConstant <= 0 2017-09-19 22:46:56 -04:00
Yotam Mann
4abe8a78cf stop the source to allow for garbage collection 2017-09-19 22:45:40 -04:00
Yotam Mann
f8f0489e14 jsdocing constructor params
fixes #261
[skip ci]
2017-09-18 12:29:04 -04:00
Yotam Mann
195354584f Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2017-09-17 12:35:41 -04:00
Jack Anderson
5b491a5379 Round Time#toTicks (#256)
* failing test for toTicks() float issue

* round (not floor) to nearest tick
2017-09-17 12:35:32 -04:00
Yotam Mann
b8648cc8ac removing deprecated MultiPlayer class 2017-09-17 12:31:25 -04:00
Yotam Mann
48b15b2c5e removing LFO option from Signal and Param
straightforward to simply connect an LFO to the signal. Also causes
circular dependency issue
2017-09-17 12:26:00 -04:00
Yotam Mann
a097434923 incrementing version 2017-09-17 12:19:39 -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