Commit graph

1443 commits

Author SHA1 Message Date
Yotam Mann
f859074254 catch block removes event listeners and throws error 2017-03-14 16:49:04 -04:00
Yotam Mann
1a1cb621e8 wrapping native getChannelData 2017-03-13 22:08:59 -04:00
Yotam Mann
10431589d2 moving shims to their respective files
hopefully simplifies maintenance
2017-03-13 01:12:20 -04:00
Yotam Mann
d81ad3e8c7 polyfilling getFloatTimeDomainData 2017-03-13 00:56:04 -04:00
Yotam Mann
3089f09083 also polyfilling copyFromChannel 2017-03-13 00:50:00 -04:00
Yotam Mann
5ab8f82d3e copyToChannel polyfill 2017-03-13 00:40:30 -04:00
Yotam Mann
84bbdb5c04 optimizing slice call
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functi
ons/arguments
2017-03-13 00:38:40 -04:00
Yotam Mann
d037c28d6f eval -> valueOf
thanks for the suggestion @JackCA
fixes #205
2017-03-12 21:31:23 -04:00
Yotam Mann
ea1b92e75a only set the clock ticks when the value has changed
optimization
2017-03-12 21:09:57 -04:00
Yotam Mann
a48b58eb95 removing old initAudioContext
replaced by Context.on(‘init’)
2017-03-12 21:03:17 -04:00
Yotam Mann
752a0a6bc4 Duration argument must be greater than 0
fixes #203
[skip ci]
2017-03-05 13:19:55 -05:00
Yotam Mann
dba464fcca safety checks for drift
fixes #199
2017-03-05 12:39:43 -05:00
Yotam Mann
39e923480f decibels also ramps exponentially 2017-03-01 15:46:21 -05:00
Yotam Mann
83a019c987 moving context dependency from Transport to Type 2017-02-28 19:01:09 -05:00
Yotam Mann
9919667467 shouldn't zero out next tick time 2017-02-28 18:09:53 -05:00
Yotam Mann
8e5d5e9872 fixing typo in comments
[skip ci]
2017-02-28 17:43:04 -05:00
Yotam Mann
9858dbe563 start method takes an optional duration
also includes start method docs

fixes #195
2017-02-20 14:03:36 -05:00
Yotam Mann
662951cff9 uses constant from context 2017-02-19 23:56:04 -05:00
Yotam Mann
4652203066 stopDownloads -> cancelDownloads 2017-02-19 12:01:15 -05:00
Yotam Mann
d82918a6ce referring to listener on the Context
instead of creating a local copy which can become out of sync with the
current AudioContext
2017-02-19 11:55:08 -05:00
Yotam Mann
b32f2606e7 convert the buffer to mono
replaces the existing buffer
2017-02-19 11:52:04 -05:00
Yotam Mann
4e5ff9d41d _initAudioContext -> "init" 2017-02-19 11:50:53 -05:00
Yotam Mann
91bdd210cd render offline audio 2017-02-19 11:50:34 -05:00
Yotam Mann
7549bdaa1a renaming _initAudioContext() -> on("init") 2017-02-19 11:50:15 -05:00
Yotam Mann
19a41080ba moving constants to Context 2017-02-19 11:48:23 -05:00
Yotam Mann
a74e84fa26 moving Clock worker to Context
offline clocks can be more easily rendered by the offline context
2017-02-19 11:45:43 -05:00
Yotam Mann
7aa336bee5 moving context creation to Tone.Context 2017-02-18 19:49:06 -05:00
Yotam Mann
5ceef2a227 OfflineContext extends Context 2017-02-18 19:48:15 -05:00
Yotam Mann
e08b7bc8fc AudioContext wrapping class 2017-02-18 19:47:28 -05:00
Yotam Mann
c3158bbcf7 fixing docs
fixes #202

[skip ci]
2017-02-16 12:04:12 -05:00
Yotam Mann
05765aae66 only create audio context when web audio is supported
otherwise logs a warning
2017-02-11 13:56:51 -05:00
Yotam Mann
29d6fdd3b3 only schedule animation frame when something is scheduled
fixes #194
2017-02-07 22:26:08 -05:00
Yotam Mann
7f06666729 only add a stop event if it's not synced to the Transport
fixes #192
2017-01-30 23:17:14 -05:00
Yotam Mann
998444c528 removing silent node connection
seems like gain of 0 is optimized out in most cases anyways
2017-01-30 22:35:27 -05:00
Yotam Mann
0818f4f133 incrementing version 2017-01-30 22:12:53 -05:00
Yotam Mann
5d7c95b806 removing deprecated SimpleSynth
[skip ci]
2017-01-08 18:35:04 -05:00
Yotam Mann
3203b45d81 updating copyright year 2017-01-08 17:53:23 -05:00
Yotam Mann
9669e70d4f using a local instance instead of the class in example
[skip ci]
2017-01-08 17:20:55 -05:00
Yotam Mann
7f2608ab06 updated example to Promise api
[skip ci]
2017-01-08 17:20:07 -05:00
Yotam Mann
4f292a4897 updating version
[skip ci]
2017-01-08 17:19:03 -05:00
Yotam Mann
68ac2bb0da latencyHint example
[skip ci]
2017-01-08 17:18:41 -05:00
Yotam Mann
3c8d77d02b Merge branch 'master' into dev 2017-01-08 17:08:24 -05:00
Yotam Mann
11d6da77cc updating docs to UserMedia instead of Microphone
[skip ci]
2017-01-08 15:58:58 -05:00
Bobby Brennan
47d5299e9e Update FMSynth.js 2016-12-31 20:36:24 -05:00
Bobby Brennan
1b9d82b189 Update AMSynth.js 2016-12-31 20:35:57 -05:00
Yotam Mann
a416eafc97 documenting expiration and anticipation more clearly
[skip ci]
2016-12-28 15:39:24 -08:00
Yotam Mann
27739ca795 changing name of private lookAhead member and adding 'lag' member
‘lag’ is the amount that the clock is falling behind the desired update
interval
2016-12-25 19:38:19 -05:00
Yotam Mann
f70825fa17 start no longer starts one lookAhead in the future
made testing more difficult and inconsistent with other behavior of Time
2016-12-20 22:49:20 -05:00
Yotam Mann
5d15ee324f lookAhead -> latencyHint
more consistent with WAA spec
2016-12-20 22:47:37 -05:00
Yotam Mann
2c3fa527fd adding updateInterval
how often the web worker callback is invoked
2016-12-20 22:37:34 -05:00
Yotam Mann
095f40f529 reverting getStateAtTime method in Tone.Clock 2016-12-18 23:39:53 -05:00
Yotam Mann
31fe050475 getStateAtTime -> getValueAtTime 2016-12-18 22:14:14 -05:00
Yotam Mann
9c94b89eec renaming addEvent->add, removeEvent->remove, getEvent->get 2016-12-18 21:56:22 -05:00
Yotam Mann
1536420bc8 adding numberOfInputs/Outputs 2016-12-18 20:57:00 -05:00
Yotam Mann
23f220d62a updating jsdocs
[skip ci]
2016-12-18 20:26:44 -05:00
Yotam Mann
612b6c0b5e Tone.Draw for synchronizing animation frame and Tone.Clock 2016-12-18 20:26:11 -05:00
Yotam Mann
a0ea404745 Revert "deferred animation callback"
This reverts commit f685bcd5ae.
2016-12-18 13:43:23 -05:00
Yotam Mann
77640e7be3 delete pointer to scheduledOnce events after they are triggered 2016-12-18 13:41:23 -05:00
Yotam Mann
7f23302d01 linting 2016-12-17 16:35:50 -05:00
Yotam Mann
77953eede9 ExternalInput -> UserMedia
updated to latest MediaDevice API
2016-12-17 16:26:27 -05:00
Yotam Mann
0681181d67 speeding up the ramp time constant 2016-12-15 13:38:41 -05:00
Yotam Mann
cf69804322 uses buffer as string of actual buffer 2016-12-15 13:01:48 -05:00
Yotam Mann
423029d4b8 managing multiple starts of the same note 2016-12-15 12:48:49 -05:00
Yotam Mann
b19a2b5622 using setTimeout to trigger the onended callback 2016-12-15 12:48:06 -05:00
Yotam Mann
7a1380637e Previous playback is not stopped if retrigger=true
Fixes #186
2016-12-05 21:29:55 -05:00
Yotam Mann
8911dce68a Clock.start with undefined arg is scheduled into the future
if there is no argument passed into the first argument of Clock.start /
Transport.start, the currentTime + Clock’s lookAhead time will be used
as the start time.
2016-12-05 20:59:39 -05:00
Yotam Mann
f685bcd5ae deferred animation callback
This is useful for synchronizing animations with scheduled audio
events.
2016-12-03 12:15:37 -05:00
Yotam Mann
2b7789b3a9 peek and shift methods
this allows the timeline to be used as a priority queue.
2016-12-02 18:59:12 -05:00
Yotam Mann
267d78d4a4 ease renamed to cosine
[skip ci]
2016-11-22 22:38:58 -08:00
Yotam Mann
b721ee8ffd API to set Transport's lookAhead to customize the balance of latency and performance 2016-11-22 10:56:47 -08:00
Yotam Mann
d386ffed97 Convolver.load returns a Promise 2016-11-22 10:31:06 -08:00
Yotam Mann
84c1affe83 Clock uses static lookahead
lookAhead is more conservatively computed and adjusts to the largest
value.
2016-11-21 00:05:19 -08:00
Yotam Mann
5d469d44ba adding triggerAttackRelease jsdoc
Clarifies and Fixes #175

[skip ci]
2016-11-07 10:42:09 -05:00
Yotam Mann
8a88acd735 linting 2016-11-06 20:13:18 -05:00
Yotam Mann
823d6efc16 linting 2016-11-06 19:41:00 -05:00
Yotam Mann
3ca0eadafd .load method returns a Promise 2016-11-06 19:16:31 -05:00
Yotam Mann
45eba82840 updating to new Q values 2016-11-06 19:10:26 -05:00
Yotam Mann
e3d05840d9 'linear' attack removes pops in FF 2016-11-03 14:40:21 -04:00
Yotam Mann
99dd7717ec don't decrement on error
added method to abort all downloads in progress
2016-11-03 14:39:45 -04:00
Yotam Mann
0cd8e26bf6 Merge pull request #174 from gerardabello/dev
Call 'set' method instead of looking into Tone objects
2016-10-31 20:09:54 -04:00
Richard Kwan
f2cc562d23 Change docs to correct default swingSubdivision
The default swingSubdivison for the Transport is an 8th note, not a 16th note.
2016-10-31 08:17:17 -04:00
Yotam Mann
934e731f82 OmniOscillator in MembraneSynth 2016-10-20 11:45:28 -04:00
Yotam Mann
3f7c903302 sets event start/stop correctly when the loopEnd is changed to smaller than the initial value 2016-10-20 11:44:11 -04:00
Gerard Abelló
c9e5bd195a Call 'set' method instead of looking into Tone objects 2016-10-20 08:57:13 +02:00
Yotam Mann
6c222a4b03 looping transport emits 'loopStart' / 'loopEnd' instead of 'start' / 'stop'
Fixes #173
2016-10-19 14:50:55 -04:00
Yotam Mann
c1e5792497 passing in initial value 2016-10-19 01:01:40 -04:00
Yotam Mann
5efa85081c making all of Compressor's parameters Tone.Params 2016-10-19 01:01:31 -04:00
Yotam Mann
64a33b0c16 correcting offset when greater than loopEnd 2016-10-11 14:03:10 -04:00
Yotam Mann
6279582971 increment version 2016-10-11 14:01:03 -04:00
Yotam Mann
4a6fc4cc4b updating version 2016-10-05 10:36:41 -04:00
Yotam Mann
fb9d1617d8 updating docs
[skip ci]

private attribute was missing
2016-10-05 01:31:11 -04:00
Yotam Mann
b5ba9e072c ramping position values
this gets rid of a lot of clicking
2016-10-05 00:18:41 -04:00
Yotam Mann
b5ff5d365a Part accepts a objects that are not object literals in add/remove
it just needs to have a time property
2016-10-03 23:47:01 -04:00
Yotam Mann
bab37aea07 SpatialPanner and Listener wrappers 2016-10-01 21:45:22 -04:00
Yotam Mann
da59018fb3 convert the offset into seconds 2016-10-01 18:31:24 -04:00
Yotam Mann
b07577d53d using Tone.seconds instead of Tone.position in start/stop
so that it can be fed straight into getStateAtTime
2016-10-01 16:26:37 -04:00
Yotam Mann
0285b4d83f handle offset greater than the duration when set to loop 2016-09-29 09:57:31 -04:00
Yotam Mann
ecd5f9b5a3 only emit start/stop when setting ticks if transport is started 2016-09-29 00:52:00 -04:00
Yotam Mann
9ebd1dd7f4 min duration is 0 2016-09-26 21:13:20 -04:00
Yotam Mann
3d4bb4a9d1 removing rAF vestiges 2016-09-26 16:31:01 -04:00