Commit graph

563 commits

Author SHA1 Message Date
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