change params

This commit is contained in:
Jade (Rose) Rowland 2025-07-18 22:03:33 -04:00
parent 7336ff0ded
commit 34874862ab
4 changed files with 261 additions and 266 deletions

View file

@ -447,68 +447,72 @@ export const { coarse } = registerControl('coarse');
/** /**
* modulate the amplitude of a sound with a continuous waveform * modulate the amplitude of a sound with a continuous waveform
* *
* @name am * @name tremolo
* @synonyms tremolo * @synonyms trem
* @param {number | Pattern} speed modulation speed in HZ * @param {number | Pattern} speed modulation speed in HZ
* @example * @example
* s("triangle").am("2").amshape("<tri saw ramp square>").amdepth(.5) * note("d d d# d".fast(4)).s("supersaw").tremolo("<3 2 100> ").tremoloskew("<.5>")
* *
*/ */
export const { am, tremolo } = registerControl(['am', 'amdepth', 'amskew', 'amphase'], 'tremolo'); export const { tremolo } = registerControl(['tremolo', 'tremolodepth', 'tremoloskew', 'tremolophase'], 'trem');
/** /**
* modulate the amplitude of a sound with a continuous waveform * modulate the amplitude of a sound with a continuous waveform
* *
* @name amsync * @name tremolosync
* @synonyms tremsync
* @param {number | Pattern} cycles modulation speed in cycles * @param {number | Pattern} cycles modulation speed in cycles
* @example * @example
* s("supersaw").amsync(1/4).amskew("<0 .5 1>").amdepth(2) * note("d d d# d".fast(4)).s("supersaw").tremolosync("4").tremoloskew("<1 .5 0>")
* *
*/ */
export const { amsync } = registerControl(['amsync', 'amdepth', 'amskew', 'amphase']); export const { tremolosync } = registerControl(['tremolosync', 'tremolodepth', 'tremoloskew', 'tremolophase'], 'tremsync');
/** /**
* depth of amplitude modulation * depth of amplitude modulation
* *
* @name amdepth * @name tremolodepth
* @synonyms tremdepth
* @param {number | Pattern} depth * @param {number | Pattern} depth
* @example * @example
* s("triangle").am(1).amdepth("1") * note("a1 a1 a#1 a1".fast(4)).s("pulse").tremsync(4).tremolodepth("<1 2 .7>")
* *
*/ */
export const { amdepth } = registerControl('amdepth'); export const { tremolodepth } = registerControl('tremolodepth', 'tremdepth');
/** /**
* alter the shape of the modulation waveform * alter the shape of the modulation waveform
* *
* @name amskew * @name tremoloskew
* @synonyms tremskew
* @param {number | Pattern} amount between 0 & 1, the shape of the waveform * @param {number | Pattern} amount between 0 & 1, the shape of the waveform
* @example * @example
* note("{f a c e}%16").am(5).amskew(.5).amdepth("<1 0.5 2>").att(.01).rel(.03) * note("{f a c e}%16").s("sawtooth").tremsync(4).tremoloskew("<.5 0 1>")
* *
*/ */
export const { amskew } = registerControl('amskew'); export const { tremoloskew } = registerControl('tremoloskew', 'tremskew');
/** /**
* alter the phase of the modulation waveform * alter the phase of the modulation waveform
* *
* @name amphase * @name tremolophase
* @synonyms tremphase
* @param {number | Pattern} offset the offset in cycles of the modulation * @param {number | Pattern} offset the offset in cycles of the modulation
* @example * @example
* note("{f a c e}%16").s("sawtooth").am(4).amphase("<0 .25 .66>") * note("{f a c e}%16").s("sawtooth").tremsync(4).tremolophase("<0 .25 .66>")
* *
*/ */
export const { amphase } = registerControl('amphase'); export const { tremolophase } = registerControl('tremolophase', 'tremphase');
/** /**
* shape of amplitude modulation * shape of amplitude modulation
* *
* @name amshape * @name tremoloshape
* @param {number | Pattern} shape tri | square | sine | saw | ramp * @param {number | Pattern} shape tri | square | sine | saw | ramp
* @example * @example
* note("{f g c d}%16").am(4).amshape("ramp").s("sawtooth") * note("{f g c d}%16").tremsync(4).tremoloshape("<sine tri square>").s("sawtooth")
* *
*/ */
export const { amshape } = registerControl('amshape'); export const { tremoloshape } = registerControl('tremoloshape', 'tremshape');
/** /**
* filter overdrive for supported filter types * filter overdrive for supported filter types
* *
@ -1650,18 +1654,8 @@ export const { density } = registerControl('density');
// ['modwheel'], // ['modwheel'],
export const { expression } = registerControl('expression'); export const { expression } = registerControl('expression');
export const { sustainpedal } = registerControl('sustainpedal'); export const { sustainpedal } = registerControl('sustainpedal');
/* // TODO: doesn't seem to do anything
*
* Tremolo Audio DSP effect
*
* @name tremolodepth
* @param {number | Pattern} depth between 0 and 1
* @example
* n("0,4,7").tremolodepth("<0 .3 .6 .9>").osc()
*
*/
export const { tremolodepth, tremdp } = registerControl('tremolodepth', 'tremdp');
export const { tremolorate, tremr } = registerControl('tremolorate', 'tremr');
export const { fshift } = registerControl('fshift'); export const { fshift } = registerControl('fshift');
export const { fshiftnote } = registerControl('fshiftnote'); export const { fshiftnote } = registerControl('fshiftnote');

View file

@ -519,12 +519,12 @@ export const superdough = async (value, t, hapDuration, cps = 0.5, cycle = 0.5)
} }
// destructure // destructure
let { let {
am, tremolo,
amsync, tremolosync,
amdepth = 1, tremolodepth = 1,
amskew, tremoloskew,
amphase = 0, tremolophase = 0,
amshape, tremoloshape,
s = getDefaultValue('s'), s = getDefaultValue('s'),
bank, bank,
source, source,
@ -610,7 +610,7 @@ export const superdough = async (value, t, hapDuration, cps = 0.5, cycle = 0.5)
distortvol = applyGainCurve(distortvol); distortvol = applyGainCurve(distortvol);
delay = applyGainCurve(delay); delay = applyGainCurve(delay);
velocity = applyGainCurve(velocity); velocity = applyGainCurve(velocity);
amdepth = applyGainCurve(amdepth); tremolodepth = applyGainCurve(tremolodepth);
gain *= velocity; // velocity currently only multiplies with gain. it might do other things in the future gain *= velocity; // velocity currently only multiplies with gain. it might do other things in the future
const end = t + hapDuration; const end = t + hapDuration;
@ -742,24 +742,25 @@ export const superdough = async (value, t, hapDuration, cps = 0.5, cycle = 0.5)
shape !== undefined && chain.push(getWorklet(ac, 'shape-processor', { shape, postgain: shapevol })); shape !== undefined && chain.push(getWorklet(ac, 'shape-processor', { shape, postgain: shapevol }));
distort !== undefined && chain.push(getWorklet(ac, 'distort-processor', { distort, postgain: distortvol })); distort !== undefined && chain.push(getWorklet(ac, 'distort-processor', { distort, postgain: distortvol }));
if (amsync != null) { if (tremolosync != null) {
am = cps / amsync; tremolo = cps * tremolosync;
} }
if (am !== undefined) {
if (tremolo !== undefined) {
// Allow clipping of modulator for more dynamic possiblities, and to prevent speaker overload // Allow clipping of modulator for more dynamic possiblities, and to prevent speaker overload
// EX: a triangle waveform will clip like this /-\ when the depth is above 1 // EX: a triangle waveform will clip like this /-\ when the depth is above 1
const gain = Math.max(1 - amdepth, 0); const gain = Math.max(1 - tremolodepth, 0);
const amGain = new GainNode(ac, { gain }); const amGain = new GainNode(ac, { gain });
const time = cycle / cps; const time = cycle / cps;
const lfo = getLfo(ac, t, endWithRelease, { const lfo = getLfo(ac, t, endWithRelease, {
skew: amskew ?? (amshape != null ? 0.5 : 1), skew: tremoloskew ?? (tremoloshape != null ? 0.5 : 1),
frequency: am, frequency: tremolo,
depth: amdepth, depth: tremolodepth,
time, time,
dcoffset: 0, dcoffset: 0,
shape: amshape, shape: tremoloshape,
phaseoffset: amphase, phaseoffset: tremolophase,
min: 0, min: 0,
max: 1, max: 1,
curve: 1.5, curve: 1.5,

View file

@ -781,19 +781,19 @@ exports[`runs examples > example "always" example index 0 1`] = `
exports[`runs examples > example "am" example index 0 1`] = ` exports[`runs examples > example "am" example index 0 1`] = `
[ [
"[ 0/1 → 1/1 | s:triangle am:2 amshape:tri amdepth:0.5 ]", "[ 0/1 → 1/1 | s:triangle am:2 tremoloshape:tri tremolodepth:0.5 ]",
"[ 1/1 → 2/1 | s:triangle am:2 amshape:saw amdepth:0.5 ]", "[ 1/1 → 2/1 | s:triangle am:2 tremoloshape:saw tremolodepth:0.5 ]",
"[ 2/1 → 3/1 | s:triangle am:2 amshape:ramp amdepth:0.5 ]", "[ 2/1 → 3/1 | s:triangle am:2 tremoloshape:ramp tremolodepth:0.5 ]",
"[ 3/1 → 4/1 | s:triangle am:2 amshape:square amdepth:0.5 ]", "[ 3/1 → 4/1 | s:triangle am:2 tremoloshape:square tremolodepth:0.5 ]",
] ]
`; `;
exports[`runs examples > example "amdepth" example index 0 1`] = ` exports[`runs examples > example "tremolodepth" example index 0 1`] = `
[ [
"[ 0/1 → 1/1 | s:triangle am:1 amdepth:1 ]", "[ 0/1 → 1/1 | s:triangle am:1 tremolodepth:1 ]",
"[ 1/1 → 2/1 | s:triangle am:1 amdepth:1 ]", "[ 1/1 → 2/1 | s:triangle am:1 tremolodepth:1 ]",
"[ 2/1 → 3/1 | s:triangle am:1 amdepth:1 ]", "[ 2/1 → 3/1 | s:triangle am:1 tremolodepth:1 ]",
"[ 3/1 → 4/1 | s:triangle am:1 amdepth:1 ]", "[ 3/1 → 4/1 | s:triangle am:1 tremolodepth:1 ]",
] ]
`; `;
@ -858,219 +858,219 @@ exports[`runs examples > example "amp" example index 0 1`] = `
] ]
`; `;
exports[`runs examples > example "amphase" example index 0 1`] = ` exports[`runs examples > example "tremolophase" example index 0 1`] = `
[ [
"[ 0/1 → 1/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 0/1 → 1/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 1/16 → 1/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 1/16 → 1/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 1/8 → 3/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 1/8 → 3/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 3/16 → 1/4 | note:e s:sawtooth am:4 amphase:0 ]", "[ 3/16 → 1/4 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 1/4 → 5/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 1/4 → 5/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 5/16 → 3/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 5/16 → 3/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 3/8 → 7/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 3/8 → 7/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 7/16 → 1/2 | note:e s:sawtooth am:4 amphase:0 ]", "[ 7/16 → 1/2 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 1/2 → 9/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 1/2 → 9/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 9/16 → 5/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 9/16 → 5/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 5/8 → 11/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 5/8 → 11/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 11/16 → 3/4 | note:e s:sawtooth am:4 amphase:0 ]", "[ 11/16 → 3/4 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 3/4 → 13/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 3/4 → 13/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 13/16 → 7/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 13/16 → 7/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 7/8 → 15/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 7/8 → 15/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 15/16 → 1/1 | note:e s:sawtooth am:4 amphase:0 ]", "[ 15/16 → 1/1 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 1/1 → 17/16 | note:f s:sawtooth am:4 amphase:0.25 ]", "[ 1/1 → 17/16 | note:f s:sawtooth am:4 tremolophase:0.25 ]",
"[ 17/16 → 9/8 | note:a s:sawtooth am:4 amphase:0.25 ]", "[ 17/16 → 9/8 | note:a s:sawtooth am:4 tremolophase:0.25 ]",
"[ 9/8 → 19/16 | note:c s:sawtooth am:4 amphase:0.25 ]", "[ 9/8 → 19/16 | note:c s:sawtooth am:4 tremolophase:0.25 ]",
"[ 19/16 → 5/4 | note:e s:sawtooth am:4 amphase:0.25 ]", "[ 19/16 → 5/4 | note:e s:sawtooth am:4 tremolophase:0.25 ]",
"[ 5/4 → 21/16 | note:f s:sawtooth am:4 amphase:0.25 ]", "[ 5/4 → 21/16 | note:f s:sawtooth am:4 tremolophase:0.25 ]",
"[ 21/16 → 11/8 | note:a s:sawtooth am:4 amphase:0.25 ]", "[ 21/16 → 11/8 | note:a s:sawtooth am:4 tremolophase:0.25 ]",
"[ 11/8 → 23/16 | note:c s:sawtooth am:4 amphase:0.25 ]", "[ 11/8 → 23/16 | note:c s:sawtooth am:4 tremolophase:0.25 ]",
"[ 23/16 → 3/2 | note:e s:sawtooth am:4 amphase:0.25 ]", "[ 23/16 → 3/2 | note:e s:sawtooth am:4 tremolophase:0.25 ]",
"[ 3/2 → 25/16 | note:f s:sawtooth am:4 amphase:0.25 ]", "[ 3/2 → 25/16 | note:f s:sawtooth am:4 tremolophase:0.25 ]",
"[ 25/16 → 13/8 | note:a s:sawtooth am:4 amphase:0.25 ]", "[ 25/16 → 13/8 | note:a s:sawtooth am:4 tremolophase:0.25 ]",
"[ 13/8 → 27/16 | note:c s:sawtooth am:4 amphase:0.25 ]", "[ 13/8 → 27/16 | note:c s:sawtooth am:4 tremolophase:0.25 ]",
"[ 27/16 → 7/4 | note:e s:sawtooth am:4 amphase:0.25 ]", "[ 27/16 → 7/4 | note:e s:sawtooth am:4 tremolophase:0.25 ]",
"[ 7/4 → 29/16 | note:f s:sawtooth am:4 amphase:0.25 ]", "[ 7/4 → 29/16 | note:f s:sawtooth am:4 tremolophase:0.25 ]",
"[ 29/16 → 15/8 | note:a s:sawtooth am:4 amphase:0.25 ]", "[ 29/16 → 15/8 | note:a s:sawtooth am:4 tremolophase:0.25 ]",
"[ 15/8 → 31/16 | note:c s:sawtooth am:4 amphase:0.25 ]", "[ 15/8 → 31/16 | note:c s:sawtooth am:4 tremolophase:0.25 ]",
"[ 31/16 → 2/1 | note:e s:sawtooth am:4 amphase:0.25 ]", "[ 31/16 → 2/1 | note:e s:sawtooth am:4 tremolophase:0.25 ]",
"[ 2/1 → 33/16 | note:f s:sawtooth am:4 amphase:0.66 ]", "[ 2/1 → 33/16 | note:f s:sawtooth am:4 tremolophase:0.66 ]",
"[ 33/16 → 17/8 | note:a s:sawtooth am:4 amphase:0.66 ]", "[ 33/16 → 17/8 | note:a s:sawtooth am:4 tremolophase:0.66 ]",
"[ 17/8 → 35/16 | note:c s:sawtooth am:4 amphase:0.66 ]", "[ 17/8 → 35/16 | note:c s:sawtooth am:4 tremolophase:0.66 ]",
"[ 35/16 → 9/4 | note:e s:sawtooth am:4 amphase:0.66 ]", "[ 35/16 → 9/4 | note:e s:sawtooth am:4 tremolophase:0.66 ]",
"[ 9/4 → 37/16 | note:f s:sawtooth am:4 amphase:0.66 ]", "[ 9/4 → 37/16 | note:f s:sawtooth am:4 tremolophase:0.66 ]",
"[ 37/16 → 19/8 | note:a s:sawtooth am:4 amphase:0.66 ]", "[ 37/16 → 19/8 | note:a s:sawtooth am:4 tremolophase:0.66 ]",
"[ 19/8 → 39/16 | note:c s:sawtooth am:4 amphase:0.66 ]", "[ 19/8 → 39/16 | note:c s:sawtooth am:4 tremolophase:0.66 ]",
"[ 39/16 → 5/2 | note:e s:sawtooth am:4 amphase:0.66 ]", "[ 39/16 → 5/2 | note:e s:sawtooth am:4 tremolophase:0.66 ]",
"[ 5/2 → 41/16 | note:f s:sawtooth am:4 amphase:0.66 ]", "[ 5/2 → 41/16 | note:f s:sawtooth am:4 tremolophase:0.66 ]",
"[ 41/16 → 21/8 | note:a s:sawtooth am:4 amphase:0.66 ]", "[ 41/16 → 21/8 | note:a s:sawtooth am:4 tremolophase:0.66 ]",
"[ 21/8 → 43/16 | note:c s:sawtooth am:4 amphase:0.66 ]", "[ 21/8 → 43/16 | note:c s:sawtooth am:4 tremolophase:0.66 ]",
"[ 43/16 → 11/4 | note:e s:sawtooth am:4 amphase:0.66 ]", "[ 43/16 → 11/4 | note:e s:sawtooth am:4 tremolophase:0.66 ]",
"[ 11/4 → 45/16 | note:f s:sawtooth am:4 amphase:0.66 ]", "[ 11/4 → 45/16 | note:f s:sawtooth am:4 tremolophase:0.66 ]",
"[ 45/16 → 23/8 | note:a s:sawtooth am:4 amphase:0.66 ]", "[ 45/16 → 23/8 | note:a s:sawtooth am:4 tremolophase:0.66 ]",
"[ 23/8 → 47/16 | note:c s:sawtooth am:4 amphase:0.66 ]", "[ 23/8 → 47/16 | note:c s:sawtooth am:4 tremolophase:0.66 ]",
"[ 47/16 → 3/1 | note:e s:sawtooth am:4 amphase:0.66 ]", "[ 47/16 → 3/1 | note:e s:sawtooth am:4 tremolophase:0.66 ]",
"[ 3/1 → 49/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 3/1 → 49/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 49/16 → 25/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 49/16 → 25/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 25/8 → 51/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 25/8 → 51/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 51/16 → 13/4 | note:e s:sawtooth am:4 amphase:0 ]", "[ 51/16 → 13/4 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 13/4 → 53/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 13/4 → 53/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 53/16 → 27/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 53/16 → 27/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 27/8 → 55/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 27/8 → 55/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 55/16 → 7/2 | note:e s:sawtooth am:4 amphase:0 ]", "[ 55/16 → 7/2 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 7/2 → 57/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 7/2 → 57/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 57/16 → 29/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 57/16 → 29/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 29/8 → 59/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 29/8 → 59/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 59/16 → 15/4 | note:e s:sawtooth am:4 amphase:0 ]", "[ 59/16 → 15/4 | note:e s:sawtooth am:4 tremolophase:0 ]",
"[ 15/4 → 61/16 | note:f s:sawtooth am:4 amphase:0 ]", "[ 15/4 → 61/16 | note:f s:sawtooth am:4 tremolophase:0 ]",
"[ 61/16 → 31/8 | note:a s:sawtooth am:4 amphase:0 ]", "[ 61/16 → 31/8 | note:a s:sawtooth am:4 tremolophase:0 ]",
"[ 31/8 → 63/16 | note:c s:sawtooth am:4 amphase:0 ]", "[ 31/8 → 63/16 | note:c s:sawtooth am:4 tremolophase:0 ]",
"[ 63/16 → 4/1 | note:e s:sawtooth am:4 amphase:0 ]", "[ 63/16 → 4/1 | note:e s:sawtooth am:4 tremolophase:0 ]",
] ]
`; `;
exports[`runs examples > example "amshape" example index 0 1`] = ` exports[`runs examples > example "tremoloshape" example index 0 1`] = `
[ [
"[ 0/1 → 1/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 0/1 → 1/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 1/16 → 1/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 1/16 → 1/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 1/8 → 3/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 1/8 → 3/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 3/16 → 1/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 3/16 → 1/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 1/4 → 5/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 1/4 → 5/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 5/16 → 3/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 5/16 → 3/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 3/8 → 7/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 3/8 → 7/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 7/16 → 1/2 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 7/16 → 1/2 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 1/2 → 9/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 1/2 → 9/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 9/16 → 5/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 9/16 → 5/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 5/8 → 11/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 5/8 → 11/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 11/16 → 3/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 11/16 → 3/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 3/4 → 13/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 3/4 → 13/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 13/16 → 7/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 13/16 → 7/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 7/8 → 15/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 7/8 → 15/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 15/16 → 1/1 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 15/16 → 1/1 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 1/1 → 17/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 1/1 → 17/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 17/16 → 9/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 17/16 → 9/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 9/8 → 19/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 9/8 → 19/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 19/16 → 5/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 19/16 → 5/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 5/4 → 21/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 5/4 → 21/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 21/16 → 11/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 21/16 → 11/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 11/8 → 23/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 11/8 → 23/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 23/16 → 3/2 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 23/16 → 3/2 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 3/2 → 25/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 3/2 → 25/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 25/16 → 13/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 25/16 → 13/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 13/8 → 27/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 13/8 → 27/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 27/16 → 7/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 27/16 → 7/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 7/4 → 29/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 7/4 → 29/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 29/16 → 15/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 29/16 → 15/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 15/8 → 31/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 15/8 → 31/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 31/16 → 2/1 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 31/16 → 2/1 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 2/1 → 33/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 2/1 → 33/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 33/16 → 17/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 33/16 → 17/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 17/8 → 35/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 17/8 → 35/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 35/16 → 9/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 35/16 → 9/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 9/4 → 37/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 9/4 → 37/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 37/16 → 19/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 37/16 → 19/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 19/8 → 39/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 19/8 → 39/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 39/16 → 5/2 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 39/16 → 5/2 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 5/2 → 41/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 5/2 → 41/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 41/16 → 21/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 41/16 → 21/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 21/8 → 43/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 21/8 → 43/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 43/16 → 11/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 43/16 → 11/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 11/4 → 45/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 11/4 → 45/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 45/16 → 23/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 45/16 → 23/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 23/8 → 47/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 23/8 → 47/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 47/16 → 3/1 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 47/16 → 3/1 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 3/1 → 49/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 3/1 → 49/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 49/16 → 25/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 49/16 → 25/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 25/8 → 51/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 25/8 → 51/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 51/16 → 13/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 51/16 → 13/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 13/4 → 53/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 13/4 → 53/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 53/16 → 27/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 53/16 → 27/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 27/8 → 55/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 27/8 → 55/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 55/16 → 7/2 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 55/16 → 7/2 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 7/2 → 57/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 7/2 → 57/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 57/16 → 29/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 57/16 → 29/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 29/8 → 59/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 29/8 → 59/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 59/16 → 15/4 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 59/16 → 15/4 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
"[ 15/4 → 61/16 | note:f am:4 amshape:ramp s:sawtooth ]", "[ 15/4 → 61/16 | note:f am:4 tremoloshape:ramp s:sawtooth ]",
"[ 61/16 → 31/8 | note:g am:4 amshape:ramp s:sawtooth ]", "[ 61/16 → 31/8 | note:g am:4 tremoloshape:ramp s:sawtooth ]",
"[ 31/8 → 63/16 | note:c am:4 amshape:ramp s:sawtooth ]", "[ 31/8 → 63/16 | note:c am:4 tremoloshape:ramp s:sawtooth ]",
"[ 63/16 → 4/1 | note:d am:4 amshape:ramp s:sawtooth ]", "[ 63/16 → 4/1 | note:d am:4 tremoloshape:ramp s:sawtooth ]",
] ]
`; `;
exports[`runs examples > example "amskew" example index 0 1`] = ` exports[`runs examples > example "tremoloskew" example index 0 1`] = `
[ [
"[ 0/1 → 1/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 0/1 → 1/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 1/16 → 1/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 1/16 → 1/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 1/8 → 3/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 1/8 → 3/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 3/16 → 1/4 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 3/16 → 1/4 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 1/4 → 5/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 1/4 → 5/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 5/16 → 3/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 5/16 → 3/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 3/8 → 7/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 3/8 → 7/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 7/16 → 1/2 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 7/16 → 1/2 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 1/2 → 9/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 1/2 → 9/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 9/16 → 5/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 9/16 → 5/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 5/8 → 11/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 5/8 → 11/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 11/16 → 3/4 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 11/16 → 3/4 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 3/4 → 13/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 3/4 → 13/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 13/16 → 7/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 13/16 → 7/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 7/8 → 15/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 7/8 → 15/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 15/16 → 1/1 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 15/16 → 1/1 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 1/1 → 17/16 | note:f am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 1/1 → 17/16 | note:f am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 17/16 → 9/8 | note:a am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 17/16 → 9/8 | note:a am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 9/8 → 19/16 | note:c am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 9/8 → 19/16 | note:c am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 19/16 → 5/4 | note:e am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 19/16 → 5/4 | note:e am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 5/4 → 21/16 | note:f am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 5/4 → 21/16 | note:f am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 21/16 → 11/8 | note:a am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 21/16 → 11/8 | note:a am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 11/8 → 23/16 | note:c am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 11/8 → 23/16 | note:c am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 23/16 → 3/2 | note:e am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 23/16 → 3/2 | note:e am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 3/2 → 25/16 | note:f am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 3/2 → 25/16 | note:f am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 25/16 → 13/8 | note:a am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 25/16 → 13/8 | note:a am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 13/8 → 27/16 | note:c am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 13/8 → 27/16 | note:c am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 27/16 → 7/4 | note:e am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 27/16 → 7/4 | note:e am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 7/4 → 29/16 | note:f am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 7/4 → 29/16 | note:f am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 29/16 → 15/8 | note:a am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 29/16 → 15/8 | note:a am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 15/8 → 31/16 | note:c am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 15/8 → 31/16 | note:c am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 31/16 → 2/1 | note:e am:5 amskew:0.5 amdepth:0.5 attack:0.01 release:0.03 ]", "[ 31/16 → 2/1 | note:e am:5 tremoloskew:0.5 tremolodepth:0.5 attack:0.01 release:0.03 ]",
"[ 2/1 → 33/16 | note:f am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 2/1 → 33/16 | note:f am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 33/16 → 17/8 | note:a am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 33/16 → 17/8 | note:a am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 17/8 → 35/16 | note:c am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 17/8 → 35/16 | note:c am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 35/16 → 9/4 | note:e am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 35/16 → 9/4 | note:e am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 9/4 → 37/16 | note:f am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 9/4 → 37/16 | note:f am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 37/16 → 19/8 | note:a am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 37/16 → 19/8 | note:a am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 19/8 → 39/16 | note:c am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 19/8 → 39/16 | note:c am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 39/16 → 5/2 | note:e am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 39/16 → 5/2 | note:e am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 5/2 → 41/16 | note:f am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 5/2 → 41/16 | note:f am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 41/16 → 21/8 | note:a am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 41/16 → 21/8 | note:a am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 21/8 → 43/16 | note:c am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 21/8 → 43/16 | note:c am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 43/16 → 11/4 | note:e am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 43/16 → 11/4 | note:e am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 11/4 → 45/16 | note:f am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 11/4 → 45/16 | note:f am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 45/16 → 23/8 | note:a am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 45/16 → 23/8 | note:a am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 23/8 → 47/16 | note:c am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 23/8 → 47/16 | note:c am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 47/16 → 3/1 | note:e am:5 amskew:0.5 amdepth:2 attack:0.01 release:0.03 ]", "[ 47/16 → 3/1 | note:e am:5 tremoloskew:0.5 tremolodepth:2 attack:0.01 release:0.03 ]",
"[ 3/1 → 49/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 3/1 → 49/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 49/16 → 25/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 49/16 → 25/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 25/8 → 51/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 25/8 → 51/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 51/16 → 13/4 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 51/16 → 13/4 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 13/4 → 53/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 13/4 → 53/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 53/16 → 27/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 53/16 → 27/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 27/8 → 55/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 27/8 → 55/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 55/16 → 7/2 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 55/16 → 7/2 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 7/2 → 57/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 7/2 → 57/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 57/16 → 29/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 57/16 → 29/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 29/8 → 59/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 29/8 → 59/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 59/16 → 15/4 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 59/16 → 15/4 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 15/4 → 61/16 | note:f am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 15/4 → 61/16 | note:f am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 61/16 → 31/8 | note:a am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 61/16 → 31/8 | note:a am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 31/8 → 63/16 | note:c am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 31/8 → 63/16 | note:c am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
"[ 63/16 → 4/1 | note:e am:5 amskew:0.5 amdepth:1 attack:0.01 release:0.03 ]", "[ 63/16 → 4/1 | note:e am:5 tremoloskew:0.5 tremolodepth:1 attack:0.01 release:0.03 ]",
] ]
`; `;
exports[`runs examples > example "amsync" example index 0 1`] = ` exports[`runs examples > example "tremolosync" example index 0 1`] = `
[ [
"[ 0/1 → 1/1 | s:supersaw amsync:0.25 amskew:0 amdepth:2 ]", "[ 0/1 → 1/1 | s:supersaw tremolosync:0.25 tremoloskew:0 tremolodepth:2 ]",
"[ 1/1 → 2/1 | s:supersaw amsync:0.25 amskew:0.5 amdepth:2 ]", "[ 1/1 → 2/1 | s:supersaw tremolosync:0.25 tremoloskew:0.5 tremolodepth:2 ]",
"[ 2/1 → 3/1 | s:supersaw amsync:0.25 amskew:1 amdepth:2 ]", "[ 2/1 → 3/1 | s:supersaw tremolosync:0.25 tremoloskew:1 tremolodepth:2 ]",
"[ 3/1 → 4/1 | s:supersaw amsync:0.25 amskew:0 amdepth:2 ]", "[ 3/1 → 4/1 | s:supersaw tremolosync:0.25 tremoloskew:0 tremolodepth:2 ]",
] ]
`; `;

View file

@ -65,25 +65,25 @@ Amplitude modulation changes the amplitude (gain) periodically over time.
<JsDoc client:idle name="am" h={0} /> <JsDoc client:idle name="am" h={0} />
## amsync ## tremolosync
<JsDoc client:idle name="amsync" h={0} /> <JsDoc client:idle name="tremolosync" h={0} />
## amdepth ## tremolodepth
<JsDoc client:idle name="amdepth" h={0} /> <JsDoc client:idle name="tremolodepth" h={0} />
## amskew ## tremoloskew
<JsDoc client:idle name="amskew" h={0} /> <JsDoc client:idle name="tremoloskew" h={0} />
## amphase ## tremolophase
<JsDoc client:idle name="amphase" h={0} /> <JsDoc client:idle name="tremolophase" h={0} />
## amshape ## tremoloshape
<JsDoc client:idle name="amshape" h={0} /> <JsDoc client:idle name="tremoloshape" h={0} />
# Amplitude Envelope # Amplitude Envelope