Commit graph

763 commits

Author SHA1 Message Date
Yotam Mann
0429548703 small optimization in getter/setter 2015-02-01 20:37:40 -05:00
Yotam Mann
0551f451d0 getter/setter and new dispose 2015-02-01 20:02:54 -05:00
Yotam Mann
fc20586939 getVolume 2015-02-01 20:02:38 -05:00
Yotam Mann
632baf2862 new dispose method and getter/setter 2015-02-01 20:02:30 -05:00
Yotam Mann
650458fafd new dispose and get/set api
integrated new API on sources
2015-02-01 20:02:13 -05:00
Yotam Mann
9070b13c89 ES5 add getter/setter method 2015-02-01 15:48:20 -05:00
Yotam Mann
251a1e02a5 phase get/set for each of the extended oscillators 2015-02-01 15:47:31 -05:00
Yotam Mann
9eee63459a all sources return this
good for chaining methods
2015-02-01 14:40:47 -05:00
Yotam Mann
db0250e054 set loop boundaries after started
Fixes #49
2015-02-01 13:42:51 -05:00
Yotam Mann
b6875955e4 add type getter/setter 2015-02-01 13:32:39 -05:00
Yotam Mann
8a9f5a9ce9 updating docs 2015-02-01 13:32:02 -05:00
Luke Phillips
b40ce6ba8c getters for player.js 2015-01-25 18:45:19 +00:00
Luke Phillips
1f52e24c95 MultibandEQ setters and getters 2015-01-22 13:24:10 +00:00
Luke Phillips
7dad7adfa7 getGain() for Filter class 2015-01-21 09:15:39 +00:00
Luke Phillips
ea5febc95a DryWet getDry and getWet 2015-01-21 09:07:14 +00:00
Luke Phillips
a99325b01a DryWet getter function description added 2015-01-20 21:08:26 +00:00
Luke Phillips
4c93abb315 DryWet getter functions added 2015-01-20 21:06:38 +00:00
Luke Phillips
c0ba518f30 MultibandEQ getter functions 2015-01-20 14:03:58 +00:00
Luke Phillips
16ee304d48 Chebyshev getter functions 2015-01-20 13:55:28 +00:00
Luke Phillips
ab6710e0b1 WaveShaper getter functions 2015-01-20 13:50:51 +00:00
Luke Phillips
a7e4e316c1 Source getter functions 2015-01-20 13:48:54 +00:00
Luke Phillips
4cdd3a30da Filter getter functions 2015-01-20 13:45:12 +00:00
Luke Phillips
a48c7a759d Envelope getter functions 2015-01-20 13:41:48 +00:00
Luke Phillips
96dab0cdcc StereoWidener getter functions 2015-01-20 13:38:08 +00:00
Luke Phillips
b22804a06f StereoWidener getter functions 2015-01-20 13:36:57 +00:00
Luke Phillips
3ec811b2b7 PingPongDelay getter functions 2015-01-20 13:35:11 +00:00
Luke Phillips
c5695f3efd Phaser getter functions 2015-01-20 13:33:50 +00:00
Luke Phillips
7faee048c8 JCReverb getter functions 2015-01-20 13:30:36 +00:00
Luke Phillips
55a7c628a6 Freeverb getter functions 2015-01-20 13:29:37 +00:00
Luke Phillips
67dbaf203b FeedbackEffect getter functions 2015-01-20 13:17:33 +00:00
Luke Phillips
49a2a6a37e FeedbackDelay getter functions 2015-01-20 13:15:56 +00:00
Luke Phillips
a5d6ae61dc Distortion getter functions 2015-01-20 13:11:43 +00:00
Luke Phillips
0717c194ae BitCrusher getter functions 2015-01-20 13:05:27 +00:00
Luke Phillips
782d7731cf AutoPanner getter functions 2015-01-20 13:00:23 +00:00
Luke Phillips
b584ea242e Pow getter functions 2015-01-20 12:50:31 +00:00
Luke Phillips
cc829b2327 ScaleExp getter functions 2015-01-20 12:49:08 +00:00
Luke Phillips
20bbfd85ed Scale getter functions 2015-01-20 12:46:37 +00:00
Luke Phillips
c670988f6b AutoWah getter functions 2015-01-20 12:42:31 +00:00
Luke Phillips
b11f86be7c Oscillator getter functions 2015-01-20 12:33:07 +00:00
Luke Phillips
bc7c76998b LFO getter functions 2015-01-20 12:31:28 +00:00
Luke Phillips
1371f2522a Chorus getter functions 2015-01-20 12:30:31 +00:00
Luke Phillips
e651a6a62e set functions for bitcrusher 2015-01-18 16:09:31 +00:00
Luke Phillips
dca25ae204 fixed sensitivity error 2015-01-14 14:06:54 +00:00
Yotam Mann
2e15f03490 Revert Tone.Volume representation 2015-01-05 23:33:05 -05:00
Yotam Mann
177b096f55 moved isFrequency to Tone 2015-01-05 22:46:38 -05:00
Yotam Mann
a60ec836db migrating to Tone.Volume representation 2015-01-05 22:46:19 -05:00
Yotam Mann
d659e923bb Tone.Volume representation
accepts db as strings like “6db”
2015-01-05 22:45:24 -05:00
Yotam Mann
49883947de putting the onload callback back in player
at least for now…
2015-01-05 21:55:57 -05:00
Yotam Mann
b825e55385 deprecating Tone.MultiSampler 2015-01-05 21:49:56 -05:00
Yotam Mann
22d29c42e3 removing onload callbacks
fits better into the Tone.Buffer.onload scheme
2015-01-05 21:49:21 -05:00
Yotam Mann
f986b32849 Sampler can load many samples
choose which sample plays in the triggerAttack method
2015-01-05 21:48:03 -05:00
Yotam Mann
a965c520f0 make buffer private
reset download count after the download is complete
2015-01-05 21:47:07 -05:00
Yotam Mann
3c2d962715 renamed onend to onended 2015-01-04 22:25:16 -05:00
Yotam Mann
693d96b1b7 Clock uses setTimeout to invoke onended
the native onended is too flakey. addresses #48
2015-01-04 22:19:33 -05:00
Yotam Mann
080b8f5854 updated Player and Convolver with new Buffer 2015-01-04 21:46:10 -05:00
Yotam Mann
c11d66f2c3 Tone.Buffer has static progress and load event 2015-01-04 20:59:08 -05:00
Yotam Mann
3a0845f009 sync/unsync the LFO 2014-12-19 16:40:06 -05:00
Yotam Mann
f1cbd96f98 sync/unsync the frequency 2014-12-19 16:39:50 -05:00
Yotam Mann
9ed92b7af0 removing unneeded disposes 2014-12-19 16:33:43 -05:00
Yotam Mann
cc26f35e57 master send/receive
master effects chain
2014-12-19 16:32:59 -05:00
Yotam Mann
6ddf1b372f single 'setVolume' definition in Master 2014-12-19 16:27:50 -05:00
Yotam Mann
3316ea381f StereoEffect deps clean up 2014-12-19 12:21:02 -05:00
Yotam Mann
62dbec1937 Distortion setter 2014-12-19 12:20:47 -05:00
Yotam Mann
9e140a7605 Fixing/testing microphone dispose method
Fixes #46
2014-12-19 12:20:26 -05:00
Luke Phillips
9b4e69eaed added MultibandEQ 2014-12-17 14:22:58 +00:00
Luke Phillips
e6caa81479 don't crash if user deny's microphone stream 2014-12-16 17:55:08 +00:00
Luke Phillips
8fafb3d20b microphone disconnect error 2014-12-15 17:08:14 +00:00
Yotam Mann
a730873ff1 Threshold - removing deprecated 2014-12-09 15:02:36 -05:00
Yotam Mann
de707f1838 volume gets set right away 2014-12-08 11:03:47 -05:00
Yotam Mann
202c84c0ec making voices public 2014-12-08 11:03:20 -05:00
Yotam Mann
ba445538f2 using AudioToGain instead of Expr 2014-12-08 11:03:10 -05:00
Yotam Mann
e1ce5f54a9 default args 2014-12-08 11:02:55 -05:00
Yotam Mann
63876cafe2 LFO, changing 'rate'->'frequency' 2014-12-08 11:02:47 -05:00
Yotam Mann
daf428b23b fixed velocity bug 2014-12-08 11:02:22 -05:00
Yotam Mann
3b7b7b5423 fixed bus infinite recursion. 2014-12-08 00:44:40 -05:00
Yotam Mann
ba90b842a1 Envelope no longer has an exponent 2014-12-06 16:48:57 -05:00
Yotam Mann
f7a14f2b37 all frequency values accept a note name as well 2014-12-06 16:48:36 -05:00
Yotam Mann
908ae686f2 ramp exponential won't go below some small value 2014-12-06 16:47:48 -05:00
Yotam Mann
bf325680a6 started r4-dev 2014-12-03 23:04:56 -05:00
Yotam Mann
f79ccd9825 release candidate 3 2014-12-03 22:41:56 -05:00
Yotam Mann
809dc99091 no feedback in phaser 2014-12-03 22:24:36 -05:00
Yotam Mann
c2d320ce8d renamed MidSide -> MidSideEffect 2014-12-03 22:11:23 -05:00
Yotam Mann
cd31d02048 jsdoc'ing 2014-12-03 21:38:24 -05:00
Yotam Mann
da014bf954 better presets 2014-12-03 21:37:58 -05:00
Yotam Mann
db544d20c4 using markdown instead of example tag 2014-12-03 17:25:34 -05:00
Yotam Mann
1b9cc1483b jsdoc'ing 2014-12-03 17:20:23 -05:00
Yotam Mann
902f1fa24d updating Envelope ADR types 2014-12-02 10:39:19 -05:00
Yotam Mann
2d0bcffc9f adding defaults to jsdocs 2014-12-02 01:42:08 -05:00
Yotam Mann
0a944516af doc tweaks 2014-12-02 00:27:28 -05:00
Yotam Mann
398f2bcce2 jsdoc tweak 2014-12-02 00:08:44 -05:00
Yotam Mann
a7dbac68bb optimizing input/output
also subclass of Tone.SignalBase
2014-11-30 23:26:42 -05:00
Yotam Mann
ce0d5f3597 signals inherit from a signal base class 2014-11-30 23:26:06 -05:00
Yotam Mann
c8478192e1 get the time till the next beat
useful for the eventual quantization
2014-11-30 22:40:07 -05:00
Yotam Mann
25496dea77 switched to updated chain method 2014-11-30 21:32:09 -05:00
Yotam Mann
efe69616bd changing presets 2014-11-30 21:20:22 -05:00
Yotam Mann
152f0cdda5 using updated fan method 2014-11-30 21:20:12 -05:00
Yotam Mann
7fcddeb000 removed feedback from phaser 2014-11-30 21:18:58 -05:00
Yotam Mann
c5da40969e chain and fan methods use 'this' nodes output 2014-11-30 17:46:09 -05:00
Yotam Mann
9498d6af3c boost Tone.Pow resolution 2014-11-30 17:42:02 -05:00
Yotam Mann
cf2cb263b2 chain -> connectSeries, fan -> connectParallel 2014-11-30 17:37:29 -05:00
Yotam Mann
d1839dc1b6 output is 0 when input is 0 2014-11-30 17:36:56 -05:00
Yotam Mann
cd4121ef41 removed feedback divisor
Fixes #42
2014-11-30 17:17:50 -05:00
Yotam Mann
597d07510e NoiseSynth added triggerAttackRelease 2014-11-30 14:53:54 -05:00
Yotam Mann
a25c106565 removing unnecessary comments 2014-11-30 14:53:32 -05:00
Yotam Mann
310231dbd1 using Tone.WaveShaper instead of native node 2014-11-30 13:20:35 -05:00
Yotam Mann
ae24c8272d Tone.WaveShaper abstraction on WaveShaperNode 2014-11-30 13:16:20 -05:00
Yotam Mann
ab28ad9a99 NoiseSynth 2014-11-29 22:03:28 -05:00
Yotam Mann
e32386da79 MonoSynth dispose cleanup 2014-11-29 21:55:38 -05:00
Yotam Mann
ffd5ac875a LFO has a defaults object 2014-11-29 21:54:29 -05:00
Yotam Mann
574c75f7c6 Tone.Limiter is a compressor with limiter settings 2014-11-29 21:47:28 -05:00
Yotam Mann
09f4b5fdf8 Normalize an input range to 0,1 2014-11-29 21:37:21 -05:00
Yotam Mann
5fdc2cfd38 updated to new Tone.Scale API 2014-11-29 21:36:32 -05:00
Yotam Mann
d3bb514dde Scale and ScaleExp scale from gain range only 2014-11-29 21:18:04 -05:00
Yotam Mann
15c33fdecd Scale a gain to an equal power scale 2014-11-29 20:32:33 -05:00
Yotam Mann
b67c187caa map audio range to gain range 2014-11-29 20:30:52 -05:00
Yotam Mann
2b22bfac31 updating dependencies 2014-11-24 18:51:35 -05:00
Yotam Mann
4948fde652 the filter envelope is not optional
#41
2014-11-11 15:24:34 -05:00
Yotam Mann
aa2f1fc2ef cleaning up the constructor - Expr 2014-11-09 10:57:34 -05:00
Yotam Mann
0a442a2608 oscillator accepts Tone.Time as frequency 2014-11-09 10:57:14 -05:00
Yotam Mann
4587420071 some deps cleanup 2014-11-09 10:56:55 -05:00
Yotam Mann
f1593c1a29 new class PanVol. combined Pan and Vol
useful for making stereo mixer-type things
2014-11-04 01:27:36 -05:00
Yotam Mann
7e09fc6931 small reorganization 2014-11-04 01:24:24 -05:00
Yotam Mann
adcf3a0c74 small object count optimization 2014-11-04 01:23:59 -05:00
Yotam Mann
dcfac108eb using Tone constructor in signal classes 2014-11-04 01:21:42 -05:00
Yotam Mann
484a7bf47d Tone constructor accepts input/output num as param 2014-11-04 01:01:57 -05:00
Yotam Mann
f7a0590ec5 optimizing comb filters
also trying to get them to crash less often. (i think it worked)
2014-11-04 00:46:31 -05:00
Yotam Mann
13f091e43e Using ScaledEnvelope for filter envelope 2014-11-04 00:44:59 -05:00
Yotam Mann
4272e051ee created ScaledEnvelope as its own class
factors out the scaling from the amplitude env and normal envelope
2014-11-04 00:44:16 -05:00
Yotam Mann
043172df7c keeping reference to Float32Array
potentially causing crashes (trying to debug)
2014-11-03 19:22:17 -05:00
Yotam Mann
58338bef23 removing Mono from stereo effect
(will need to run single channel signals through a panner or mono node
if connecting to stereo effect)
2014-11-03 11:45:33 -05:00
Yotam Mann
10099e6f6d Sampler: exponential scaling on filterEnv 2014-11-03 11:44:12 -05:00
Yotam Mann
7ab00d1760 cleaning up AMSynth and testing 2014-11-03 11:43:42 -05:00
Yotam Mann
d0bcc2f931 max delay time on feedback comb filter 2014-11-03 11:34:02 -05:00
Yotam Mann
3d9639b48a tiny bit of clean up 2014-11-01 22:00:36 -04:00
Yotam Mann
48181f140b new instrument AMSynth 2014-11-01 21:56:23 -04:00
Yotam Mann
fe9a87daa3 using exponential scaling for frequencyEnvelope 2014-11-01 21:55:59 -04:00
Yotam Mann
d3866bcf51 using new Envelope internals 2014-11-01 21:55:19 -04:00
Yotam Mann
bf20552449 using new string replacement syntax 2014-11-01 21:54:53 -04:00
Yotam Mann
a830f4b711 handles exponential scaling 2014-11-01 21:54:40 -04:00
Yotam Mann
5c3cdab7cc does string replacements 2014-11-01 21:53:36 -04:00
Yotam Mann
56791f2ef2 pow is just a waveshapercurve 2014-11-01 21:53:14 -04:00
Yotam Mann
4f6d04498a using Pow and optimizing nodes 2014-11-01 21:52:49 -04:00
Yotam Mann
7a8c8d168b Merge branch 'expr' into dev
Conflicts:
	.gitignore
	CHANGELOG.md
	Tone/signal/Modulo.js
	test/tests/Effect.js
2014-11-01 18:34:22 -04:00
Yotam Mann
680b2cd8ee MidSide and StereoWidener 2014-11-01 18:17:03 -04:00
Yotam Mann
21a0b84137 including Pow and Divide 2014-11-01 16:18:23 -04:00
Yotam Mann
6362b59725 fixed connect method bug non-array multiple ins 2014-11-01 16:18:07 -04:00
Yotam Mann
264c56a343 small dry/wet optimization 2014-11-01 16:17:27 -04:00
Yotam Mann
c454357fd7 small modulo optimization 2014-11-01 16:16:27 -04:00
Yotam Mann
866bb5cd65 simplified BitCrusher further 2014-11-01 16:16:14 -04:00
Yotam Mann
ef4692789e Tone.Divide division 2014-10-30 21:34:53 -04:00
Yotam Mann
77559a4264 Tone.Inverse multiplicative inverse of a number 2014-10-30 21:34:34 -04:00
Yotam Mann
3a6261c9b9 Tone.Pow exponential 2014-10-30 21:34:11 -04:00
Yotam Mann
36f4a85582 connect method from Tone.Signal 2014-10-30 19:48:53 -04:00
Yotam Mann
7f4b873aa8 Follower uses subtract 2014-10-30 19:44:05 -04:00
Yotam Mann
2a65eb3ce7 rewrote floor in BitCrusher with Expr 2014-10-30 18:06:13 -04:00
Yotam Mann
79e4c1c9fc refactored Expr
put regexp all in one place and function callbacks all in one place
2014-10-30 17:04:15 -04:00
Yotam Mann
9d41f7aa3d handles multiple inputs 2014-10-30 01:05:17 -04:00
Yotam Mann
47a5e2d962 bug fixes 2014-10-30 01:04:49 -04:00
Yotam Mann
e19e0cea30 first Expr version
aggregate signal processing expression
2014-10-29 23:56:08 -04:00
Yotam Mann
ba7ead9581 Envelope -> AmplitudeEnvelope in MonoSynth 2014-10-28 14:51:22 -04:00
Yotam Mann
76c596ca31 Fixed whitespace problem with toSeconds 2014-10-25 11:57:00 -04:00
Yotam Mann
e1d27c5525 Convolver style and formatting 2014-10-23 11:42:41 -04:00
Yotam Mann
477eef29c7 making distortion curve length smaller
trying to fix occasional crashes in chrome.
2014-10-23 11:42:07 -04:00
Yotam Mann
f36b185517 rearranging dispose methods for readability 2014-10-23 11:41:38 -04:00
Yotam Mann
98ef0e8fae making mod curve smaller 2014-10-23 11:41:15 -04:00
Yotam Mann
4766f5a27f Transport loops when greater than the loopEnd
used to be just equal to. caused bugs sometimes.
2014-10-23 00:24:02 -04:00
Yotam Mann
0bea209d68 simplify buffer constructor 2014-10-22 22:27:21 -04:00
Yotam Mann
e1ba3a4487 returns an array when given an array 2014-10-22 22:27:01 -04:00
Yotam Mann
3b10b93eca Merge pull request #39 from indefinit/unicode-fix
Unicode fix
2014-10-22 21:55:21 -04:00
Yotam Mann
0fce1bf624 Modulo small doc changes. 2014-10-22 21:52:42 -04:00
Yotam Mann
7ae56f179c Equal accepts two signals. 2014-10-22 21:26:10 -04:00
Yotam Mann
0a68826768 LessThan accepts two signals 2014-10-22 21:25:28 -04:00
Yotam Mann
8b58bd0a9b Greater than compares two signals 2014-10-22 21:24:40 -04:00
Yotam Mann
de194f24c3 min and max accept two signals 2014-10-22 21:23:47 -04:00
Yotam Mann
fcba9bd62a multiply handles two signals 2014-10-22 21:20:43 -04:00
Yotam Mann
23eaf83935 handles summing two signals
or a signal and a number.
2014-10-22 21:19:04 -04:00
Yotam Mann
7f7e093a4b Subtract class
subtract a signal and a number or a signal and a signal
2014-10-22 21:17:29 -04:00
Kevin Siwoff
054d5ff2e8 fixes buffer initialization in Player.js 2014-10-22 18:24:58 -04:00
Kevin Siwoff
1422a544f9 adds Convolver class, IR, and convolver example 2014-10-22 17:58:03 -04:00
Kevin Siwoff
b45c983152 updates player class and build for Buffer 2014-10-21 14:55:29 -04:00
Kevin Siwoff
d71f83c8fd adds new Buffer class to core 2014-10-21 14:44:02 -04:00
Yotam Mann
167d989828 using bufferTime in Follower 2014-10-19 22:07:18 -04:00
Yotam Mann
68dea5880a 3 band compressor 2014-10-19 21:55:55 -04:00
Yotam Mann
fdae3c0b5b thin DynamicsCompressorNode wrapper 2014-10-19 21:55:18 -04:00
Yotam Mann
425bca36ad Chebyshev effect
applies Chebyshev wave shaper to incoming signal.
2014-10-19 19:39:50 -04:00
Yotam Mann
918be69c6c connectEffect switched to internal 2014-10-19 17:56:41 -04:00
Yotam Mann
6317e02a67 Distortion effect 2014-10-19 17:54:30 -04:00
Yotam Mann
e28f77a683 PolySynth accepts an array of notes for attack/release 2014-10-19 16:17:40 -04:00
Yotam Mann
4a4da6c85b use MasterConstructor on init 2014-10-19 16:08:40 -04:00
Yotam Mann
9f827a8dad short delay to avoid clicks on change OmniOsc type 2014-10-16 14:52:08 -04:00
Yotam Mann
f913c50241 precompute the bufferTime for a single frame
still need to figure out how to find the frame size
2014-10-16 14:51:25 -04:00
Kevin Siwoff
f784f5585f adds Buffer class, refactors Player class to use new Buffer member 2014-10-16 14:48:23 -04:00
Yotam Mann
3eba6e58a4 optimizing initial script loading 2014-10-16 00:49:31 -04:00
Yotam Mann
eb07e84a6e simplified internals of IfElseThen
changes API slightly because false is 0 and not != 1
2014-10-13 19:24:06 -04:00
Yotam Mann
7277a7eb68 wrote Min and Max with IfThenElse
makes the internals much more readable
2014-10-13 19:22:11 -04:00
Yotam Mann
baf1f0162a enforce min time on Tone.Follower 2014-10-13 19:21:34 -04:00
Yotam Mann
d1cf785350 some jsdoc notes on Meter and Recorder 2014-10-13 17:31:07 -04:00
Yotam Mann
4ccc0e08e7 ability to set rolloff of autowah 2014-10-13 17:16:10 -04:00
Yotam Mann
4f9850d315 disconnect method handles output arrays 2014-10-13 15:58:21 -04:00
Yotam Mann
05b2415fa6 wrote EQ in terms of MutibandSplit 2014-10-13 15:58:06 -04:00