Commit graph

1802 commits

Author SHA1 Message Date
Yotam Mann
810a667442 get elapsed seconds at the given time 2018-03-05 22:27:31 -05:00
Yotam Mann
25ae2081ce don't iterate if no index is found 2018-03-05 22:26:56 -05:00
Yotam Mann
8c2acd03d5 removing retrigger, maintaining array of activeSources 2018-03-05 22:26:37 -05:00
Yotam Mann
5ded029206 getSecondsAtTime returns elapsed seconds
also invoking event immediately if the window has already passed
2018-03-05 22:25:57 -05:00
Yotam Mann
103f01bdc7 getState at time, does not throw error if already stopped 2018-03-05 22:25:12 -05:00
Yotam Mann
dcd5a0d0e9 documenting getStateAtTime 2018-03-05 13:00:45 -05:00
Yotam Mann
a5503e02d2 linting 2018-03-05 12:25:33 -05:00
Yotam Mann
4988523b44 requiring Master in Offline 2018-03-05 11:58:46 -05:00
Yotam Mann
b70ba1fca0 removing reference to TONE_AUDIO_CONTEXT 2018-03-05 11:58:27 -05:00
Yotam Mann
a80ae0656b Tone.isDefined replaces !Tone.isUndef 2018-03-05 11:32:08 -05:00
Yotam Mann
897b885a40 increasing max search interval to 8 octaves
fixes #315
2018-03-05 10:40:46 -05:00
Yotam Mann
701092d6e2 Fixing documentation error
fixes #316
2018-03-05 10:31:32 -05:00
Yotam Mann
efa06f43f1 testing that the stop event is not the first event 2018-03-01 14:44:20 -05:00
Yotam Mann
3d0a8005b7 removing isPast warning
clutters up tests, rarely helpful for debugging
2018-03-01 14:38:40 -05:00
Yotam Mann
1d6132a141 Revert "keeping reference to original Transport/Master/Listener interfaces"
This reverts commit 7bf69db3d6.
2018-03-01 14:33:16 -05:00
Yotam Mann
7bf69db3d6 keeping reference to original Transport/Master/Listener interfaces
fixes #314
2018-03-01 14:27:58 -05:00
Yotam Mann
4dd5c0a464 get the playback position of the playing buffer
integrates TickSource to track position even with playbackRate changes

Fixes #292 and Fixes #307
2018-03-01 14:15:37 -05:00
Yotam Mann
e5a6788de1 getNextState returns the next instance of the given state after the given time 2018-03-01 14:11:07 -05:00
Yotam Mann
d98b10d6f8 documenting oscillator node 2018-03-01 14:08:35 -05:00
Yotam Mann
23932cbfa6 can cancel scheduled stop and setTick events 2018-03-01 14:06:03 -05:00
Yotam Mann
40530e3c16 'stop' is invoked on the last scheduled stop value 2018-03-01 14:02:11 -05:00
Yotam Mann
897d1d1294 Param.value cancels scheduled values
uses context.currentTime for instant change
2018-02-27 17:05:39 -05:00
Yotam Mann
36beb6c5f8 events use Transport.getTicksAtTime for greater accuracy 2018-02-27 17:04:30 -05:00
Yotam Mann
5a04a72d34 TickSignal is slightly more accurate
removes sampleTime subtraction where possible
2018-02-27 17:04:01 -05:00
Yotam Mann
740131e062 Transport exposes getTicksAtTime
uses clock.nextTickTime to compute quantization
2018-02-27 17:03:18 -05:00
Yotam Mann
b14e51f9e9 Clock uses TickSource to track ticks 2018-02-27 17:02:41 -05:00
Yotam Mann
f06516d76d TickSource handles pause events
more flexible and accurate timing calculations
2018-02-27 17:02:17 -05:00
Yotam Mann
cf138c03b4 TickSource tracks elapsed ticks can start/stop
no pause yet
2018-02-25 17:25:32 -05:00
Yotam Mann
836a173cf8 forEachBetween is exclusive of endTime 2018-02-25 15:08:43 -05:00
Yotam Mann
ebb7aac407 getLastState returns the last event with the given state 2018-02-18 16:01:27 -05:00
Yotam Mann
5f1ae523f9 lookAhead shouldn't be private 2018-02-15 11:47:22 -05:00
Yotam Mann
cd31c5b3e9 pass maxDelay in the options object
addresses #280
2018-02-15 11:42:59 -05:00
Yotam Mann
44512cee0a get the readonly maxDelay time 2018-02-15 11:41:01 -05:00
Yotam Mann
a7e2f603d9 playing sources only while instruments are triggered 2018-02-08 11:11:57 -05:00
Yotam Mann
65f166570b Sources call 'restart' method if already started when 'start' is invoked 2018-02-08 11:10:53 -05:00
Yotam Mann
8f0b5d2279 making onConnect private 2018-02-08 11:02:30 -05:00
Yotam Mann
98d1b8808a adding getter/setter for channelCount, channelCountMode and channelInterpretation 2018-02-05 16:51:04 -05:00
Yotam Mann
56c12fb627 Tone.Mono coerces the incoming mono or stereo signal into a mono signal 2018-02-05 16:40:55 -05:00
Yotam Mann
5eec68f9d0 compare rendered output to previously rendered audio files 2018-02-05 13:55:37 -05:00
Yotam Mann
a99e582c3c correctly handles changing playbackRate after source is started 2018-02-05 13:54:16 -05:00
Yotam Mann
457c7b221c optimizing instrument by only turning on oscillators when active 2018-02-05 13:50:14 -05:00
Yotam Mann
2fe32576ed using OscillatorNode in Oscillator 2018-02-05 00:40:53 -05:00
Yotam Mann
0ee67d8445 proper disposal of timeout 2018-02-05 00:40:42 -05:00
Yotam Mann
9428e6c1b8 relaxing optimization slightly. only when connected to an AudioParam or Param 2018-02-05 00:15:49 -05:00
Yotam Mann
f086f58c75 OscillatorNode is a fire-and-forget Oscillator 2018-02-04 22:55:19 -05:00
Yotam Mann
4914fbe771 optimizing signal connections for basic use case 2018-02-04 17:01:30 -05:00
Yotam Mann
68a0f1ae8c don't convert if value is overridden 2018-02-04 13:03:03 -05:00
Yotam Mann
6076be97af calling connect from this instead of this.output 2018-02-04 11:41:19 -05:00
Yotam Mann
ea5d3880c0 using SignalBase.connect instead of Signal.connect 2018-02-04 11:40:47 -05:00
Yotam Mann
c7728ba738 private onConnect method called on node receiving connection 2018-02-04 11:40:11 -05:00