mirror of
https://codeberg.org/uzu/strudel
synced 2026-07-23 13:42:56 -04:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 44886ad90b | |||
| 48bc3fca13 | |||
| 057bb42438 | |||
| 1f7343f43d |
@@ -80,7 +80,7 @@ export const { s, sound } = registerControl(['s', 'n', 'gain'], 'sound');
|
|||||||
* @synonyms z
|
* @synonyms z
|
||||||
* @param {number | Pattern}
|
* @param {number | Pattern}
|
||||||
* @example
|
* @example
|
||||||
* n(run(8)).scale("D:pentatonic").s("supersaw").x(".01 .75").release(0.5)
|
* n(run(8)).scale("D:pentatonic").s("supersaw").z(".01 .75").release(0.5)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export const { z1, z } = registerControl(['z1', 'z2', 'z3', 'z4'], 'z');
|
export const { z1, z } = registerControl(['z1', 'z2', 'z3', 'z4'], 'z');
|
||||||
@@ -91,7 +91,7 @@ export const { z1, z } = registerControl(['z1', 'z2', 'z3', 'z4'], 'z');
|
|||||||
* @name z2
|
* @name z2
|
||||||
* @param {number | Pattern}
|
* @param {number | Pattern}
|
||||||
* @example
|
* @example
|
||||||
* n(run(8)).scale("D:pentatonic").s("supersaw").x2("2 .7").release(0.5)
|
* n(run(8)).scale("D:pentatonic").s("supersaw").z2("2 .7").release(0.5)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export const { z2 } = registerControl('z2');
|
export const { z2 } = registerControl('z2');
|
||||||
@@ -102,19 +102,19 @@ export const { z2 } = registerControl('z2');
|
|||||||
* @name z3
|
* @name z3
|
||||||
* @param {number | Pattern}
|
* @param {number | Pattern}
|
||||||
* @example
|
* @example
|
||||||
* n(run(8)).scale("D:pentatonic").s("supersaw").x3(".1 .75").release(0.5)
|
* n(run(8)).scale("D:pentatonic").s("supersaw").z3(".1 .75").release(0.5)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export const { z4 } = registerControl('z3');
|
export const { z3 } = registerControl('z3');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* generic macro param for a sound synth
|
* generic macro param for a sound synth
|
||||||
*
|
*
|
||||||
* @name x4
|
* @name z4
|
||||||
* @param {number | Pattern}
|
* @param {number | Pattern}
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export const { x4 } = registerControl('z4');
|
export const { z4 } = registerControl('z4');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Define a custom webaudio node to use as a sound source.
|
* Define a custom webaudio node to use as a sound source.
|
||||||
|
|||||||
@@ -73,8 +73,8 @@ export function registerSynthSounds() {
|
|||||||
'supersaw',
|
'supersaw',
|
||||||
(begin, value, onended) => {
|
(begin, value, onended) => {
|
||||||
const ac = getAudioContext();
|
const ac = getAudioContext();
|
||||||
const {z1, z2, z3} = value;
|
const { z1, z2, z3 } = value;
|
||||||
let { duration, n, unison = z2 ?? 5, spread = z3 ?? 0.6, detune, } = value;
|
let { duration, n, unison = z2 == null ? 5 : Math.round(z2 * 10), spread = z3 ?? 0.6, detune } = value;
|
||||||
detune = detune ?? n ?? z1 ?? 0.18;
|
detune = detune ?? n ?? z1 ?? 0.18;
|
||||||
const frequency = getFrequencyFromValue(value);
|
const frequency = getFrequencyFromValue(value);
|
||||||
|
|
||||||
|
|||||||
@@ -8597,6 +8597,117 @@ exports[`runs examples > example "xfade" example index 0 1`] = `
|
|||||||
]
|
]
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
exports[`runs examples > example "z1" example index 0 1`] = `
|
||||||
|
[
|
||||||
|
"[ 0/1 → 1/8 | note:D3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 1/8 → 1/4 | note:E3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 1/4 → 3/8 | note:F#3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 3/8 → 1/2 | note:A3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 1/2 → 5/8 | note:B3 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 5/8 → 3/4 | note:D4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 3/4 → 7/8 | note:E4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 7/8 → 1/1 | note:F#4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 1/1 → 9/8 | note:D3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 9/8 → 5/4 | note:E3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 5/4 → 11/8 | note:F#3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 11/8 → 3/2 | note:A3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 3/2 → 13/8 | note:B3 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 13/8 → 7/4 | note:D4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 7/4 → 15/8 | note:E4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 15/8 → 2/1 | note:F#4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 2/1 → 17/8 | note:D3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 17/8 → 9/4 | note:E3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 9/4 → 19/8 | note:F#3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 19/8 → 5/2 | note:A3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 5/2 → 21/8 | note:B3 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 21/8 → 11/4 | note:D4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 11/4 → 23/8 | note:E4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 23/8 → 3/1 | note:F#4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 3/1 → 25/8 | note:D3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 25/8 → 13/4 | note:E3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 13/4 → 27/8 | note:F#3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 27/8 → 7/2 | note:A3 s:supersaw z1:0.01 release:0.5 ]",
|
||||||
|
"[ 7/2 → 29/8 | note:B3 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 29/8 → 15/4 | note:D4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 15/4 → 31/8 | note:E4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
"[ 31/8 → 4/1 | note:F#4 s:supersaw z1:0.75 release:0.5 ]",
|
||||||
|
]
|
||||||
|
`;
|
||||||
|
|
||||||
|
exports[`runs examples > example "z2" example index 0 1`] = `
|
||||||
|
[
|
||||||
|
"[ 0/1 → 1/8 | note:D3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 1/8 → 1/4 | note:E3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 1/4 → 3/8 | note:F#3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 3/8 → 1/2 | note:A3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 1/2 → 5/8 | note:B3 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 5/8 → 3/4 | note:D4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 3/4 → 7/8 | note:E4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 7/8 → 1/1 | note:F#4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 1/1 → 9/8 | note:D3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 9/8 → 5/4 | note:E3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 5/4 → 11/8 | note:F#3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 11/8 → 3/2 | note:A3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 3/2 → 13/8 | note:B3 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 13/8 → 7/4 | note:D4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 7/4 → 15/8 | note:E4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 15/8 → 2/1 | note:F#4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 2/1 → 17/8 | note:D3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 17/8 → 9/4 | note:E3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 9/4 → 19/8 | note:F#3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 19/8 → 5/2 | note:A3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 5/2 → 21/8 | note:B3 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 21/8 → 11/4 | note:D4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 11/4 → 23/8 | note:E4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 23/8 → 3/1 | note:F#4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 3/1 → 25/8 | note:D3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 25/8 → 13/4 | note:E3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 13/4 → 27/8 | note:F#3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 27/8 → 7/2 | note:A3 s:supersaw z2:2 release:0.5 ]",
|
||||||
|
"[ 7/2 → 29/8 | note:B3 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 29/8 → 15/4 | note:D4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 15/4 → 31/8 | note:E4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
"[ 31/8 → 4/1 | note:F#4 s:supersaw z2:0.7 release:0.5 ]",
|
||||||
|
]
|
||||||
|
`;
|
||||||
|
|
||||||
|
exports[`runs examples > example "z3" example index 0 1`] = `
|
||||||
|
[
|
||||||
|
"[ 0/1 → 1/8 | note:D3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 1/8 → 1/4 | note:E3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 1/4 → 3/8 | note:F#3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 3/8 → 1/2 | note:A3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 1/2 → 5/8 | note:B3 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 5/8 → 3/4 | note:D4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 3/4 → 7/8 | note:E4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 7/8 → 1/1 | note:F#4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 1/1 → 9/8 | note:D3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 9/8 → 5/4 | note:E3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 5/4 → 11/8 | note:F#3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 11/8 → 3/2 | note:A3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 3/2 → 13/8 | note:B3 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 13/8 → 7/4 | note:D4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 7/4 → 15/8 | note:E4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 15/8 → 2/1 | note:F#4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 2/1 → 17/8 | note:D3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 17/8 → 9/4 | note:E3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 9/4 → 19/8 | note:F#3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 19/8 → 5/2 | note:A3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 5/2 → 21/8 | note:B3 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 21/8 → 11/4 | note:D4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 11/4 → 23/8 | note:E4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 23/8 → 3/1 | note:F#4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 3/1 → 25/8 | note:D3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 25/8 → 13/4 | note:E3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 13/4 → 27/8 | note:F#3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 27/8 → 7/2 | note:A3 s:supersaw z3:0.1 release:0.5 ]",
|
||||||
|
"[ 7/2 → 29/8 | note:B3 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 29/8 → 15/4 | note:D4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 15/4 → 31/8 | note:E4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
"[ 31/8 → 4/1 | note:F#4 s:supersaw z3:0.75 release:0.5 ]",
|
||||||
|
]
|
||||||
|
`;
|
||||||
|
|
||||||
exports[`runs examples > example "zoom" example index 0 1`] = `
|
exports[`runs examples > example "zoom" example index 0 1`] = `
|
||||||
[
|
[
|
||||||
"[ 0/1 → 1/6 | s:hh ]",
|
"[ 0/1 → 1/6 | s:hh ]",
|
||||||
|
|||||||
Reference in New Issue
Block a user