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
|
693867f9be
|
Revert "encoding the URI"
This reverts commit 754e9fc500 .
|
2016-06-14 20:04:28 -04:00 |
|
Yotam Mann
|
e0edb67a75
|
Wrapper around the basic AudioBufferSourceNode
|
2016-06-14 19:57:46 -04:00 |
|
Yotam Mann
|
754e9fc500
|
encoding the URI
|
2016-06-14 19:57:15 -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
|
238cf0caa4
|
randomizing the noise offset
this should make two noises played starting at the same time slightly
different.
|
2016-06-14 19:56:18 -04:00 |
|
Yotam Mann
|
cce32d7efc
|
IntervalTimeline.forEachOverlap -> forEachAtTime
|
2016-06-13 09:02:51 -04:00 |
|
Yotam Mann
|
eea938094c
|
renaming cosine->sine and ease->sine
Fixes #69
|
2016-06-12 09:56:18 -04:00 |
|
Yotam Mann
|
4628f8c47a
|
prefixing errors with class name.
|
2016-05-25 20:50:46 -04:00 |
|
Yotam Mann
|
aae52e3fa1
|
default PolySynth voice is Tone.Synth
instead of Tone.MonoSynth
|
2016-05-23 19:56:15 -04:00 |
|
Yotam Mann
|
49fc9d7bb6
|
renamed SimpleSynth to Tone.Synth
|
2016-05-23 19:49:41 -04:00 |
|
Yotam Mann
|
db6b901003
|
attack/release curves can be arrays
also introducing a bunch of new curve types
|
2016-05-23 19:20:20 -04:00 |
|
Yotam Mann
|
29df1b2293
|
setValueCurveAtTime now implemented with a series of linearRampToValue
this is more cross-platform and easier to work with.
|
2016-05-23 19:19:06 -04:00 |
|
Yotam Mann
|
3b9b65bf89
|
adding additional startTime value to rampTo
|
2016-05-17 21:59:27 -04:00 |
|
Yotam Mann
|
9528238873
|
computing rms from the analyser waveform data
|
2016-05-17 21:26:57 -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
|
8e3d3264dd
|
setting a value will cancel scheduled values
so that it gets set immediately.
|
2016-05-14 19:18:33 -04:00 |
|
Yotam Mann
|
58a1223a9a
|
meter uses the analyser node
no more ScriptProcessorNodes
|
2016-05-14 19:13:50 -04:00 |
|
Yotam Mann
|
2db3265fb9
|
needs to cancel at 0 for some reason to take effect in Chrome
|
2016-05-14 18:57:18 -04:00 |
|
Yotam Mann
|
a25767cfbe
|
can mute the output
|
2016-05-14 18:07:53 -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
|
b02a13ab08
|
not using Math.log2 (since it's not supported across all browsers yet)
|
2016-05-14 17:00:57 -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
|
af1a737f71
|
simplifying position code to use TransportTime
|
2016-05-14 16:32:16 -04:00 |
|
Yotam Mann
|
6c77c60469
|
ensures addNow can only be called once
|
2016-05-14 16:31:35 -04:00 |
|
Yotam Mann
|
1d9e43f33a
|
handles math operations correctly now
|
2016-05-14 16:27:55 -04:00 |
|
Yotam Mann
|
5d6f1806c1
|
Making the Analyser a passthrough node.
|
2016-04-25 18:05:15 -04:00 |
|
Yotam Mann
|
688e3812ab
|
removing old types
|
2016-04-18 02:19:29 -04:00 |
|
Yotam Mann
|
d374790175
|
using new Type
|
2016-04-18 02:19:17 -04:00 |
|
Yotam Mann
|
059bbf20b2
|
converting units using new API
|
2016-04-18 02:19:01 -04:00 |
|
Yotam Mann
|
b1d0d33f1b
|
can accept time as the value
|
2016-04-18 02:05:54 -04:00 |
|
Yotam Mann
|
1e7773ae6a
|
using new Timing primitives
|
2016-04-18 02:05:04 -04:00 |
|
Yotam Mann
|
16c28892c8
|
using Time instead of TransportTime
|
2016-04-18 01:12:55 -04:00 |
|
Yotam Mann
|
cebeb3e577
|
clock goes to stop state immediately
no need to test if it’s started.
|
2016-04-18 01:12:35 -04:00 |
|
Yotam Mann
|
733b49bcd5
|
using new types
|
2016-04-18 00:36:08 -04:00 |
|
Yotam Mann
|
696e84cafb
|
new core timing primitives
|
2016-04-18 00:34:16 -04:00 |
|
Yotam Mann
|
3f6580b843
|
simplifying NoiseSynth
removing filer and filterEnvelope
|
2016-04-18 00:28:39 -04:00 |
|
Yotam Mann
|
9b5837df3e
|
Using new types
swing sinusoidally delays until a triplet.
|
2016-04-18 00:17:02 -04:00 |
|
Yotam Mann
|
2530182b2e
|
updating analyser docs
[skip ci]
|
2016-04-17 13:41:54 -04:00 |
|
Yotam Mann
|
ca95a0bef5
|
increasing PPQ to 192. quantize->nextSubdivision
separating out Timeline quantization from quantization method and
moving it elsewhere.
|
2016-04-13 13:05:27 -04:00 |
|
Yotam Mann
|
d47cc0fa9d
|
fixed precedence bug
|
2016-04-13 12:29:02 -04:00 |
|
Yotam Mann
|
0d5f790444
|
updating example
removing support of note interpolation (didn’t seem that useful).
[skip ci]
|
2016-04-13 12:28:10 -04:00 |
|
Yotam Mann
|
6d4a4cf164
|
moving intervalToFrequencyRatio into core
|
2016-04-12 20:30:18 -04:00 |
|
Yotam Mann
|
4a05dc4534
|
removing unused method
`fan` is more useful
|
2016-04-10 23:35:22 -04:00 |
|
Yotam Mann
|
4f4d93ba71
|
removing deprecated Note class
|
2016-04-10 23:34:34 -04:00 |
|
Yotam Mann
|
cd29397a15
|
Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev
|
2016-04-10 16:49:51 -04:00 |
|
Yotam Mann
|
48c7ca5cc4
|
Updating documentation to show start offset time and duration arguments
Fixes #136
[skip ci]
|
2016-04-10 16:00:10 -04:00 |
|
Yotam Mann
|
90c0b5febe
|
MultiPlayer needs Buffer as dependency
|
2016-03-22 16:01:32 -04:00 |
|
Yotam Mann
|
85cfedb03c
|
adding polyfill for getFloatTimeDomain
Fixes #129
|
2016-03-20 19:01:39 -04:00 |
|
Yotam Mann
|
52186f6d31
|
noting polyfill
[skip ci]
|
2016-03-20 18:58:08 -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
|
272ad66873
|
documenting distinction between Time and TimelinePosition
Fixes #104
[skip ci]
|
2016-03-18 11:28:49 -04:00 |
|
Yotam Mann
|
0a4b997bde
|
updating start method documentation
[skip ci]
|
2016-03-18 11:00:07 -04:00 |
|
Yotam Mann
|
df30c40bd3
|
maximum diff between frames
|
2016-03-18 10:24:11 -04:00 |
|
Yotam Mann
|
14fcbb3553
|
Merge branch 'dev' of https://github.com/Tonejs/Tone.js into dev
|
2016-03-18 09:54:17 -04:00 |
|
Yotam Mann
|
5ddf71a3da
|
removing millisecond conversion
accidentally still had that in there.
|
2016-03-17 18:00:42 -04:00 |
|
Yotam Mann
|
40d739fc4d
|
More waveshaper points
works better on Safari
|
2016-03-16 13:09:46 -04:00 |
|
Yotam Mann
|
04614a2948
|
added setCurveAtTime to Timeline
|
2016-03-05 10:44:03 -05:00 |
|
Yotam Mann
|
78095af046
|
properly handles error on buffer decoding
|
2016-03-05 00:07:42 -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
|
ad9ae4dbe9
|
fitting fft size to conform with old spec range
this allows it to pass on older systems which haven’t increased the
range to 32k
|
2016-03-04 18:30:15 -05:00 |
|
Yotam Mann
|
ac6ef2c263
|
ifdef which allows Tone work on the same page as p5.sound
|
2016-03-04 18:14:24 -05:00 |
|
Yotam Mann
|
2728e02555
|
ability to cancel an envelope
|
2016-03-04 15:54:24 -05:00 |
|
Yotam Mann
|
07f8f227cf
|
.events -> .values
|
2016-03-04 15:35:10 -05:00 |
|
Yotam Mann
|
f2fc38210f
|
updated doc examples
|
2016-03-03 13:08:26 -05:00 |
|
Yotam Mann
|
18b2136148
|
.value returns the scheduled value at time=now
|
2016-03-03 13:04:02 -05:00 |
|
Yotam Mann
|
366e61562f
|
canceling future states on stop
also not checking if it’s already started.
Fixes #121
|
2016-03-03 13:02:38 -05:00 |
|
Yotam Mann
|
278aace787
|
setting a reasonable max voice count
|
2016-03-03 13:01:11 -05:00 |
|
Yotam Mann
|
2020194a1c
|
testing and handling edge cases
|
2016-03-03 13:00:59 -05:00 |
|
Yotam Mann
|
7a23c08703
|
LFO outputs 0 value when stopped
gets around 0 gain optimization
|
2016-03-03 01:35:29 -05:00 |
|
Yotam Mann
|
724ac4090c
|
removing threshold value
making _worker static
|
2016-03-03 01:34:48 -05:00 |
|
Yotam Mann
|
89711b336e
|
process single occurrence events first
Fixes #114
|
2016-02-27 17:23:38 -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
|
bfbf567d98
|
Clocks uses Workers instead of requestAnimationFrame
Fixes #124
|
2016-02-27 17:14:39 -05:00 |
|
Yotam Mann
|
12c7426f53
|
baseUrl
useful for various production environments.
|
2016-02-27 17:12:11 -05:00 |
|
Yotam Mann
|
93d70a3a9e
|
waveshaper goes between -1 and 1 inclusive
|
2016-02-27 17:08:53 -05:00 |
|
Yotam Mann
|
ac5841d8ad
|
removing startMobile
use StartAudioContext to accomplish the same thing.
|
2016-02-27 16:46:13 -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
|
23c70cbc93
|
disposing fully
|
2016-02-27 11:22:26 -05:00 |
|
Yotam Mann
|
0441bc5008
|
pruning away unused signal classes
|
2016-02-27 11:18:59 -05:00 |
|
Yotam Mann
|
c4f85780f2
|
using sampleTime variable
|
2016-02-27 11:16:51 -05:00 |
|
Yotam Mann
|
a427070904
|
Outputs 0 at audio-rate
This is to get around an optimization in most browsers which stops
processing when the gain is equal 0 in the Signal.
|
2016-02-27 11:16:25 -05:00 |
|
Yotam Mann
|
670e3ef92b
|
static 'now' function
updated description.
|
2016-02-25 17:58:26 -05:00 |
|
Yotam Mann
|
faf434400b
|
pull in Master like the rest of the sources
|
2016-02-18 14:12:30 -05:00 |
|
Yotam Mann
|
35e065ca80
|
adding error callback on open
|
2016-02-18 14:11:47 -05:00 |
|
Yotam Mann
|
9049857b80
|
fire-and-forget buffer player
|
2016-02-08 13:44:49 -05:00 |
|
Yotam Mann
|
64dbebeb67
|
triggers oldest note
no more control over retriggering.
|
2016-02-08 13:44:49 -05:00 |
|
Yotam Mann
|
4a9f39a62b
|
keeps track of release times
so it’s able to trigger the voice that has already been release, or
retrigger the oldest voice (if stealVoices) is true.
|
2016-02-08 13:44:49 -05:00 |
|
Yotam Mann
|
ecd15808c2
|
simplified Abs
now only accepts signals in the range [-1,1]
|
2016-02-06 15:06:03 -05:00 |
|
Yotam Mann
|
abc62d3962
|
Merge pull request #115 from hiddedejong/PartOffset
fixed start offset in Tone.Part, now behaves like Tone.Player
|
2016-02-01 22:28:59 -05:00 |
|
Yotam Mann
|
af6babf8d8
|
shortens attack time if the envelope is already active
this retains the attack slope.
|
2016-01-31 23:40:50 -05:00 |
|
Yotam Mann
|
c72a5f25c9
|
makes sure that exponential ramping is never from or to 0
when trying to ramp from 0, it does a setValueAtTime to a near zero
value, then ramps exponentially. And the reverse when ramping to 0.
|
2016-01-31 23:33:36 -05:00 |
|
Yotam Mann
|
79ab31603a
|
cache the time in seconds of 1 sample
|
2016-01-31 23:13:00 -05:00 |
|
Yotam Mann
|
de37b6798d
|
adding Master as a dependency
Addresses #112
|
2016-01-31 12:20:55 -05:00 |
|
Hidde de Jong
|
75628b53e8
|
fixed start offset in Tone.Part, now behaves like Tone.Player
|
2016-01-31 14:45:34 +01:00 |
|
Yotam Mann
|
9e7dd15e46
|
removed unused enum
|
2016-01-30 20:24:53 -05:00 |
|
Yotam Mann
|
995a12d765
|
Making sure the envelope is active before triggering the release
This keeps FF from throwing an error when trying to exponentially ramp
from 0.
|
2016-01-30 15:56:56 -05:00 |
|
Yotam Mann
|
46919e7c86
|
Simplifying the API of FMSynth and AMSynth
uses SimpleSynth instead of MonoSynth. API more flat.
|
2016-01-30 15:53:40 -05:00 |
|
Yotam Mann
|
2f4d6d07cd
|
DrumSynth->MembraneSynth & CymbalSynth->MetalSynth
|
2016-01-30 15:48:32 -05:00 |
|
Yotam Mann
|
3d67297166
|
updated copyright year
|
2016-01-23 12:30:34 -05:00 |
|
Yotam Mann
|
d5499f64f8
|
CymbalSynth synthesizes spectrally complex, metallic sounds
|
2016-01-19 10:02:46 -05:00 |
|
Yotam Mann
|
e53c864948
|
making sure the envelope is silent after the decay if the sustain is 0
|
2016-01-18 22:46:36 -05:00 |
|
Yotam Mann
|
9f785b371e
|
removing deprecated methods
|
2016-01-18 22:45:46 -05:00 |
|
Yotam Mann
|
61caca5054
|
volume change proportional to the number of oscillators
|
2016-01-18 00:27:46 -05:00 |
|
Yotam Mann
|
5a772466ae
|
3 new oscillator types
and combined them into the OmniOscillator
|
2016-01-17 22:43:44 -05:00 |
|
Yotam Mann
|
0349216473
|
Envelope is completely silenced while not being triggered
Fixes #109
|
2016-01-16 15:39:29 -05:00 |
|
Yotam Mann
|
68daf2aab9
|
fixing docs
|
2016-01-03 12:36:49 -05:00 |
|
Yotam Mann
|
e371c69a79
|
incrementing version
|
2015-12-13 13:09:53 -05:00 |
|
Yotam Mann
|
6c81d59df2
|
r6 version
|
2015-12-08 00:26:03 -05:00 |
|
Yotam Mann
|
cfc33cf39c
|
doc'ing
|
2015-12-08 00:07:16 -05:00 |
|
Yotam Mann
|
b3e08a4c02
|
removed instrument presets
|
2015-12-07 21:32:28 -05:00 |
|
Yotam Mann
|
7fd1ad026e
|
removing effect presets
Presets have been moved to their own repo
|
2015-12-07 19:14:12 -05:00 |
|
Yotam Mann
|
eda4553169
|
using baseFrequency and octaves for AutoFilter
|
2015-12-07 11:46:34 -05:00 |
|
Yotam Mann
|
d29995a42a
|
phaser uses octaves instead of depth .
more consistent with rest of API.
|
2015-12-07 01:04:09 -05:00 |
|
Yotam Mann
|
2664140ab0
|
implementing filterEnvelope with Tone.FrequencyEnvelope
|
2015-12-07 00:39:39 -05:00 |
|
Yotam Mann
|
acd3722add
|
exposing exponent value
|
2015-12-07 00:38:48 -05:00 |
|
Yotam Mann
|
307dd6632c
|
FrequencyEnvelope is like ScaledEnvelope but with baseFrequency and octaves instead of min and max
|
2015-12-07 00:23:21 -05:00 |
|
Yotam Mann
|
3bbd66c5d2
|
constrain TimelineSignal's memory
|
2015-12-07 00:19:38 -05:00 |
|
Yotam Mann
|
f7547217c8
|
Timeline has an optional memory length
|
2015-12-06 23:48:53 -05:00 |
|
Yotam Mann
|
2626b19469
|
setValueAtTime makes the attack less prone to clicks
not sure why.
|
2015-12-06 21:39:59 -05:00 |
|
Yotam Mann
|
298799dee9
|
added 'spread' to Chorus
|
2015-12-06 20:53:36 -05:00 |
|
Yotam Mann
|
1d7385d819
|
spread is initialized with the constructor.
|
2015-12-06 17:37:37 -05:00 |
|
Yotam Mann
|
972e7f1d00
|
set the state to "stopped" after a number of loops.
|
2015-12-06 17:23:30 -05:00 |
|
Yotam Mann
|
8984365883
|
resolves case where items are removed during iteration
|
2015-12-06 17:23:30 -05:00 |
|
Yotam Mann
|
dbc33d0a1c
|
fixes case of canceling events when there's only one event in the timeline
|
2015-12-06 17:23:30 -05:00 |
|
Yotam Mann
|
441f964206
|
Merge pull request #103 from lukephills/upstream-dev
Tremolo stereo spread control
|
2015-12-06 17:22:54 -05:00 |
|
Yotam Mann
|
9d3b5947fd
|
Reverting to non-signal playbackRate
because Safari isn’t there yet with signal-rate playbackRate
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
74110715f5
|
Revert "playbackRate is now a signal"
This reverts commit f889a77f0f .
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
ae669e7fa6
|
making sure the ramp time constant is above 0
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
1cf6910796
|
Using exponentialRamp for decay and release
This normalizes things across browsers because it seems that FF
setTargetAtTime always starts from 0
addresses #91
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
f4200aa2a7
|
left and right inputs of merger are explicitly mono
this fixes issue of not splitting correctly in FF and Safari.
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
12d7cd0e1f
|
eventsToRemove is no longer necessary
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
2bf8039b4e
|
iterator with guarding in case items are deleted
makes it safer to delete an item during a forEach loop
|
2015-12-06 13:14:36 -05:00 |
|
Yotam Mann
|
f0857f2e08
|
canceling next events on stop
|
2015-12-06 13:14:36 -05:00 |
|
Luke Phillips
|
1cbe390d8d
|
Give tremolo a stereo spread option
|
2015-12-06 13:29:08 +13:00 |
|
Yotam Mann
|
8231fc5cf3
|
fixing and testing start offset for non-looping parts
|
2015-11-26 08:42:33 -08:00 |
|
Yotam Mann
|
97e8169c85
|
acts on the component Tone.Events and not on sub-Parts
|
2015-11-26 08:27:29 -08:00 |
|
Yotam Mann
|
8bcf318271
|
updating to new playbackRate API
|
2015-11-26 08:21:38 -08:00 |
|
Yotam Mann
|
1b10f4e47b
|
reverting. getValueAtTime should return unconverted units
Making a note of this in the docs
|
2015-11-26 01:24:34 -05:00 |
|
Yotam Mann
|
f6a95f2f49
|
default partials value
|
2015-11-25 21:46:54 -05:00 |
|
Yotam Mann
|
33dbdeff41
|
can set partials in constructor
|
2015-11-25 21:46:47 -05:00 |
|
Yotam Mann
|
21b8c074e4
|
changing the humanize amount to 0.02s
|
2015-11-25 21:46:33 -05:00 |
|
Yotam Mann
|
fe5d6ac94e
|
getting partials (correctly) for other Oscillator types
|
2015-11-23 23:51:36 -05:00 |
|
Yotam Mann
|
093d2e3a36
|
getValueAtTime returns converted values
|
2015-11-23 23:49:54 -05:00 |
|
Yotam Mann
|
ac693eac4b
|
doc'ing
|
2015-11-17 23:21:55 -05:00 |
|