Commit graph

553 commits

Author SHA1 Message Date
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
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
77953eede9 ExternalInput -> UserMedia
updated to latest MediaDevice API
2016-12-17 16:26:27 -05:00
Yotam Mann
eb4242b780 using meter to test if buffer is playing 2016-12-15 12:49:51 -05:00
Yotam Mann
7529599607 adding explicit start time to Transport.start in tests 2016-12-05 21:30:25 -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
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
1935d24ba2 removing convolver effects tests that throw an error when running in TravisCI 2016-11-22 10:46:26 -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
3ca0eadafd .load method returns a Promise 2016-11-06 19:16:31 -05: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
f4b9393202 testing complex scheduling with multiple start/stop invoked in both event and Transport 2016-10-20 11:45:10 -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
Yotam Mann
64a33b0c16 correcting offset when greater than loopEnd 2016-10-11 14:03:10 -04:00
Yotam Mann
c700caed7f member api test 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
70ea8f7155 panner/listener tests 2016-10-01 21:45:30 -04:00
Yotam Mann
f37e188acd adding type primitives to APITest 2016-09-26 14:58:04 -04:00
Yotam Mann
753640bdeb seek to a position in the buffer 2016-09-25 22:32:54 -04:00
Yotam Mann
2474312a4e updating API tests 2016-09-25 21:58:48 -04:00
Yotam Mann
e4abe75851 validating constructor/method inputs 2016-09-25 21:36:32 -04:00
Yotam Mann
827fda3d00 more accurate handling of syncing to Transport start with an offset / duration 2016-09-25 12:35:57 -04:00
Yotam Mann
7565530987 start/stop/pause callbacks are invoked at the moment they occur
Previously they were invoked when the ‘start/stop/pause’ methods were
called.

Fixes #159
2016-09-24 11:48:28 -04:00
Yotam Mann
792f85bebd clock is an event emitter 2016-09-24 11:26:57 -04:00
Yotam Mann
5b9e01be5c Revert "making envelope tests not start on 0"
This reverts commit 244a4188e4.
2016-09-24 10:03:26 -04:00
Yotam Mann
244a4188e4 making envelope tests not start on 0 2016-09-24 00:01:17 -04:00
Yotam Mann
e3ca856764 additional TransportTime validations 2016-09-20 18:35:28 -04:00
Yotam Mann
cc232ce3c3 updated buses to use Gain. clearing send/recv on new AudioContext
testing that a gain can be passed in.
2016-09-19 23:30:43 -04:00
Yotam Mann
ebf0eb4f64 added Promise tests 2016-09-19 00:08:23 -04:00
Yotam Mann
6a951fa217 using 'emit' instead of 'trigger'
more similar to Node.js EventEmitter class
2016-09-18 20:07:00 -04:00
Yotam Mann
86fa6233c3 Time copy/clone tests 2016-09-18 19:41:41 -04:00
Yotam Mann
46fc0c732c testing LFO as value 2016-09-18 19:28:20 -04:00
Yotam Mann
81c65f0bb0 testing loaded 2016-08-19 18:03:13 -04:00
Yotam Mann
a1563b90af removing console log
[skip ci]
2016-08-18 22:35:39 -04:00
Yotam Mann
ff5ef1c045 toMilliseconds test 2016-08-18 11:41:15 -04:00
Yotam Mann
5f38177b9b testing error callbacks 2016-08-16 15:26:56 -04:00
Yotam Mann
e8f7020eaf sync tests 2016-08-15 23:13:09 -04:00
Yotam Mann
2c1e1167a6 buffer length is inconsistent on linux....
might be because it’s block aligned or something. broadening the test
to deal to deal with this.
2016-08-15 11:50:30 -04:00
Yotam Mann
1270727098 testing to/from Array methods 2016-08-15 10:23:01 -04:00
Yotam Mann
682ec0e46e get/set the progress in seconds 2016-08-15 07:28:52 -04:00
Yotam Mann
79a723cf03 removing effects test 2016-08-09 16:47:14 -04:00
Yotam Mann
27ad555987 chrome doesn't seem to like ratios over 20 2016-08-09 15:10:35 -04:00
Yotam Mann
601d89564d updated convolved name
[skip ci]
2016-08-09 14:59:38 -04:00
Yotam Mann
cdf64aeac3 using rest of effects tests on Convolver
using stereo sample for it
2016-08-09 14:25:20 -04:00
Yotam Mann
438abe481a added karma test baseUrl 2016-08-09 01:14:52 -04:00
Yotam Mann
464d64d13b Merge branch 'master' into dev 2016-07-20 15:44:34 -04:00
Yotam Mann
b266902bd7 can set the buffer 2016-07-20 15:42:55 -04:00
Yotam Mann
77e4111e19 adding additional compressor constructor test 2016-07-18 22:54:07 -04:00
Yotam Mann
dee059d4de validating pause->restart fix
addresses #145
2016-07-08 12:27:22 -04:00
Yotam Mann
99d7d2f8bd disconnects from a specific node
(tests this feature only when supported)
2016-07-06 23:39:06 -04:00
Yotam Mann
c08e16087f correctly setting PPQ
wasn’t taking into account that the returns bpm value was dependent on
the PPQ. therefore, need to read the bpm before setting the PPQ.
2016-07-06 23:23:14 -04:00
Yotam Mann
408f142be3 increasing timeout time
for very slow TravisCI server instances
2016-07-06 22:47:30 -04:00
Yotam Mann
3a7e51793e sampler tests
also allowing a constructor argument to be passed into the Instrument
tests
2016-07-06 22:33:07 -04:00
Yotam Mann
b06f50e9c6 removing redundant reverse test
already exists in player and buffer
2016-07-05 21:55:17 -04:00
Yotam Mann
dbc428a197 GrainPlayer tests 2016-07-05 20:33:01 -04:00
Yotam Mann
1ba3733439 interval is exclusive of end point
specifically the repeat time is: [start, start + duration).

so Transport.scheduleRepeat(fn, 1, 0, 2) will repeat twice, not three
times (since it’s exclusive of the end time).
2016-06-22 16:39:48 -04:00
Yotam Mann
ad17849389 testing retrigger with custom curve 2016-06-17 13:15:41 -04:00
Yotam Mann
74ebee4bfe MultiPlayer keeps track of all the BufferSources it's played 2016-06-15 00:48:55 -04:00
Yotam Mann
1f131625de already testing offset in Player 2016-06-14 20:58:22 -04:00
Yotam Mann
1efc061ebd explicitly stop the AudioBufferSource when duration is given 2016-06-14 20:43:26 -04:00
Yotam Mann
96644f37d2 Adjusting the timing of the tests
also using wav’s instead of mp3s
2016-06-14 20:27:12 -04:00
Yotam Mann
e0edb67a75 Wrapper around the basic AudioBufferSourceNode 2016-06-14 19:57:46 -04:00
Yotam Mann
5978d46825 Buffers is a data structure for holding multiple Tone.Buffer 2016-06-14 19:57:01 -04:00
Yotam Mann
cce32d7efc IntervalTimeline.forEachOverlap -> forEachAtTime 2016-06-13 09:02:51 -04:00
Yotam Mann
ed0e2960ad adjusting thresholds for test 2016-06-12 10:06:39 -04:00
Yotam Mann
eea938094c renaming cosine->sine and ease->sine
Fixes #69
2016-06-12 09:56:18 -04:00
Yotam Mann
49fc9d7bb6 renamed SimpleSynth to Tone.Synth 2016-05-23 19:49:41 -04:00
Yotam Mann
06dbbc03b7 testing new attack/release curves 2016-05-23 19:20:30 -04:00
Yotam Mann
10b9e7fa0f adjusting thresholds to accommodate a FF precision 2016-05-23 19:19:38 -04:00
Yotam Mann
f2ccded2e8 speeding up player tests
with shorter samples
2016-05-17 23:03:19 -04:00
Yotam Mann
e22ba03642 testing rampTo with additional time 2016-05-17 21:59:36 -04:00
Yotam Mann
4fc7646a40 adjusting tests with new unity level 2016-05-17 21:27:08 -04:00
Yotam Mann
6060b397ad added detune to PolySynth
applied when available.
2016-05-14 20:49:55 -04:00
Yotam Mann
b3e9ec173a added detune for AM/FM synths 2016-05-14 20:10:31 -04:00
Yotam Mann
cdebaeedf5 Can pass in an array of durations into triggerAttackRelease
Fixes #135
2016-05-14 19:55:51 -04:00
Yotam Mann
607656f276 increasing default timeout time 2016-05-14 19:22:25 -04:00
Yotam Mann
58a1223a9a meter uses the analyser node
no more ScriptProcessorNodes
2016-05-14 19:13:50 -04:00
Yotam Mann
24692aa343 can be muted in the constructor options 2016-05-14 17:46:21 -04:00
Yotam Mann
3ecd99ecb6 moving mute code to Volume 2016-05-14 17:34:23 -04:00
Yotam Mann
aacf62136b increasing testing time for signal scheduling 2016-05-14 17:34:03 -04:00
Yotam Mann
07184385f9 testing muting 2016-05-14 17:21:36 -04:00
Yotam Mann
9a0fbb1991 using more reliable Offline timing tests for quantization 2016-05-14 17:16:28 -04:00
Yotam Mann
11dd12f002 changing subdivision test to use Offline testing
more reliable than setTimeout
2016-05-14 17:00:31 -04:00
Yotam Mann
c83c70d11c cancels scheduling when setting a value with .value
this makes the behavior consistent between Webkit and FF
2016-05-14 16:52:58 -04:00
Yotam Mann
98e58d0576 switching argument position of type and size
type is more important a parameter.
2016-05-14 16:34:50 -04:00
Yotam Mann
b68f4d24f2 testing that time classes handle expressions 2016-05-14 16:30:40 -04:00
Yotam Mann
ce0f6fb2ec rewriting test to not use secondsToSamples 2016-04-18 02:39:06 -04:00
Yotam Mann
688e3812ab removing old types 2016-04-18 02:19:29 -04:00
Yotam Mann
a7f36314f2 tests using new Type 2016-04-18 02:18:36 -04:00
Yotam Mann
1e82abfaa2 CtrlInterpolate no longer interpolates notes 2016-04-18 02:07:24 -04:00
Yotam Mann
7a749dee0f tests accurately reset the PPQ each time 2016-04-18 02:04:48 -04:00
Yotam Mann
e582294937 testing if schedule methods accept TransportTime 2016-04-18 01:15:49 -04:00
Yotam Mann
5c2957d34b type tests 2016-04-18 00:34:35 -04:00
Yotam Mann
3f6580b843 simplifying NoiseSynth
removing filer and filterEnvelope
2016-04-18 00:28:39 -04:00
Yotam Mann
fdf39d4253 testing swing 2016-04-18 00:17:23 -04:00
Yotam Mann
a0d066032e Transport unnecessary dependency 2016-04-18 00:15:46 -04:00
Yotam Mann
ee39eb3ce7 wasDisposed ignores objects that are on the prototype 2016-04-18 00:15:26 -04:00
Yotam Mann
d27f5bb8d1 updating Transport tests with nextSubdivision changes 2016-04-13 13:06:57 -04:00
Yotam Mann
1ecf848c7a removing quantization tests from Type 2016-04-13 12:27:38 -04:00
Yotam Mann
b32e73a5fc fixed typo in test 2016-04-13 12:24:34 -04:00
Yotam Mann
68b1791222 moving interval to frequency test 2016-04-12 21:01:15 -04:00
Yotam Mann
9f4135404c updated testing README
[skip ci]
2016-03-29 19:42:31 -04:00
Yotam Mann
ddbba6cccc small typo corrections
Addresses #130

thanks @Joseworks
2016-03-29 19:27:14 -04:00
Yotam Mann
0e2c4fde9a a few more sanity checks for the polysynth 2016-03-21 15:20:04 -04:00
Yotam Mann
d722bdf555 offline testing sequences 2016-03-20 19:26:19 -04:00
Yotam Mann
c7e8551a2f removing conditional test for float waveform analysis 2016-03-20 19:03:18 -04:00
Yotam Mann
e18ed2e677 polyfill for browsers that don't support interpolate value curves
Required by [the
spec](http://webaudio.github.io/web-audio-api/#widl-AudioParam-setValueC
urveAtTime-AudioParam-Float32Array-values-double-startTime-double-durati
on), but not currently implemented by Safari and FF.
2016-03-20 18:36:59 -04:00
Yotam Mann
2285e6feb4 making clock tick more often in offline mode 2016-03-18 11:01:06 -04:00
Yotam Mann
906859b764 adjusting times to compensate for lookAhead 2016-03-18 10:27:48 -04:00
Yotam Mann
9b599642ca fudging times to compensate for lookAhead time 2016-03-18 10:23:49 -04:00
Yotam Mann
d98915ac38 increasing tick update rate for offline tests
makes the clock’s lookahead time come less in into play
2016-03-18 10:23:28 -04:00
Yotam Mann
96897c6a28 COMPLEX->ACCURATE
should be fixed with
https://bugzilla.mozilla.org/show_bug.cgi?id=1257718
2016-03-18 09:51:41 -04:00
Yotam Mann
0afbb59257 ifdef'ing some envelope tests on FF 2016-03-18 09:49:33 -04:00
Yotam Mann
edc3ad5a81 ifdef'ing tests based on current browser support 2016-03-16 13:13:32 -04:00
Yotam Mann
9c3398da49 noting which parts of the spec are supported in which browsers 2016-03-16 13:12:40 -04:00
Yotam Mann
86690eccdb testing setCurveAtTime 2016-03-05 10:44:10 -05:00
Yotam Mann
4a336e1675 using non-mp3s for testing 2016-03-05 00:07:17 -05:00
Yotam Mann
1946d737ae scheduling sequence test in the future 2016-03-05 00:01:29 -05:00
Yotam Mann
102913de14 using wave versions for testing
it’s the most cross-platform
2016-03-04 23:52:17 -05:00
Yotam Mann
abb300a249 cleaning up unused mp3s
This reverts commit f478be48b0.
2016-03-04 23:31:23 -05:00
Yotam Mann
a0c49b0286 adjusting ranges
so FF passes more consistently.
2016-03-04 19:31:21 -05:00
Yotam Mann
b29e543458 removing test which doesn't pass on Chromium
(for now)
2016-03-04 19:20:36 -05:00
Yotam Mann
f478be48b0 switching to mp3 for testing 2016-03-04 19:07:08 -05:00
Yotam Mann
aa1b5123aa fixing panner for browsers that don't support stereo panner 2016-03-04 18:59:31 -05:00
Yotam Mann
df9c213c33 adding karma testing files and hooks 2016-03-04 16:25:44 -05:00
Yotam Mann
45a82a4965 removing setTimeouts where possible
replacing it with new Offline
2016-03-04 16:00:05 -05:00
Yotam Mann
26db6d9377 testing envelope canceling 2016-03-04 15:54:39 -05:00
Yotam Mann
07f8f227cf .events -> .values 2016-03-04 15:35:10 -05:00
Yotam Mann
cea06ca26c moving event classes to Offline testing 2016-03-04 15:31:48 -05:00
Yotam Mann
dd3b35b430 testing if stopping before starting will cancel the sound
addresses #121
2016-03-03 13:04:36 -05:00
Yotam Mann
2020194a1c testing and handling edge cases 2016-03-03 13:00:59 -05:00
Yotam Mann
b29c297398 using new Offline testing 2016-03-03 01:37:44 -05:00
Yotam Mann
621242c17d removing log 2016-03-03 01:37:07 -05:00
Yotam Mann
0ed5591338 slicker syntax than other Offline test 2016-03-03 01:36:46 -05:00
Yotam Mann
ac9c4a3360 offline test adjusts 'now' method to allow for offline testing
previously these things needed to be tested in real-time. now can be
tested faster than real time
2016-03-03 01:36:31 -05:00
Yotam Mann
e8eb147935 Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev 2016-02-27 17:19:26 -05:00
Yotam Mann
115b9376ab Panner is now between -1 and 1
Same as the Web Audio API.
2016-02-27 11:31:15 -05:00
Yotam Mann
ba2ee5deff merge needs both sides connected
updating test to reflect that.
2016-02-27 11:27:59 -05:00
Yotam Mann
acd0f89d83 updating tests to compensate for 0 gain optimization 2016-02-27 11:27:17 -05:00
Yotam Mann
5389ad0add removing unused tests 2016-02-27 11:26:48 -05:00
Yotam Mann
553b11a4d9 Zero tests 2016-02-27 11:22:49 -05:00
Yotam Mann
ed7e4839f2 removing tests of old signal classes 2016-02-27 11:19:41 -05:00
Yotam Mann
1e4a2375ff sanity checks on MultiPlayer 2016-02-08 13:44:49 -05:00
Yotam Mann
ce148de513 basic sanity checks for PolySynth 2016-02-08 13:44:49 -05:00