Rename group -> tags

This commit is contained in:
Václav Volhejn 2025-10-11 14:11:50 +02:00
parent a4d7803d43
commit 5032b4e966
7 changed files with 368 additions and 368 deletions

View file

@ -13,10 +13,10 @@ function defineTags(dictionary) {
}, },
}); });
dictionary.defineTag('group', { dictionary.defineTag('tags', {
mustHaveValue: true, mustHaveValue: true,
onTagged: function (doclet, tag) { onTagged: function (doclet, tag) {
doclet.group = tag.value; doclet.tags = tag.value.split(/[ ,]+/);
}, },
}); });
} }

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -24,7 +24,7 @@ export const signal = (func) => {
* A sawtooth signal between 0 and 1. * A sawtooth signal between 0 and 1.
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* note("<c3 [eb3,g3] g2 [g3,bb3]>*8") * note("<c3 [eb3,g3] g2 [g3,bb3]>*8")
* .clip(saw.slow(2)) * .clip(saw.slow(2))
@ -39,7 +39,7 @@ export const saw = signal((t) => t % 1);
* A sawtooth signal between -1 and 1 (like `saw`, but bipolar). * A sawtooth signal between -1 and 1 (like `saw`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const saw2 = saw.toBipolar(); export const saw2 = saw.toBipolar();
@ -47,7 +47,7 @@ export const saw2 = saw.toBipolar();
* A sawtooth signal between 1 and 0 (like `saw`, but flipped). * A sawtooth signal between 1 and 0 (like `saw`, but flipped).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* note("<c3 [eb3,g3] g2 [g3,bb3]>*8") * note("<c3 [eb3,g3] g2 [g3,bb3]>*8")
* .clip(isaw.slow(2)) * .clip(isaw.slow(2))
@ -62,7 +62,7 @@ export const isaw = signal((t) => 1 - (t % 1));
* A sawtooth signal between 1 and -1 (like `saw2`, but flipped). * A sawtooth signal between 1 and -1 (like `saw2`, but flipped).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const isaw2 = isaw.toBipolar(); export const isaw2 = isaw.toBipolar();
@ -70,14 +70,14 @@ export const isaw2 = isaw.toBipolar();
* A sine signal between -1 and 1 (like `sine`, but bipolar). * A sine signal between -1 and 1 (like `sine`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const sine2 = signal((t) => Math.sin(Math.PI * 2 * t)); export const sine2 = signal((t) => Math.sin(Math.PI * 2 * t));
/** /**
* A sine signal between 0 and 1. * A sine signal between 0 and 1.
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* n(sine.segment(16).range(0,15)) * n(sine.segment(16).range(0,15))
* .scale("C:minor") * .scale("C:minor")
@ -89,7 +89,7 @@ export const sine = sine2.fromBipolar();
* A cosine signal between 0 and 1. * A cosine signal between 0 and 1.
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* n(stack(sine,cosine).segment(16).range(0,15)) * n(stack(sine,cosine).segment(16).range(0,15))
* .scale("C:minor") * .scale("C:minor")
@ -101,14 +101,14 @@ export const cosine = sine._early(Fraction(1).div(4));
* A cosine signal between -1 and 1 (like `cosine`, but bipolar). * A cosine signal between -1 and 1 (like `cosine`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const cosine2 = sine2._early(Fraction(1).div(4)); export const cosine2 = sine2._early(Fraction(1).div(4));
/** /**
* A square signal between 0 and 1. * A square signal between 0 and 1.
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* n(square.segment(4).range(0,7)).scale("C:minor") * n(square.segment(4).range(0,7)).scale("C:minor")
* *
@ -119,7 +119,7 @@ export const square = signal((t) => Math.floor((t * 2) % 2));
* A square signal between -1 and 1 (like `square`, but bipolar). * A square signal between -1 and 1 (like `square`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const square2 = square.toBipolar(); export const square2 = square.toBipolar();
@ -127,7 +127,7 @@ export const square2 = square.toBipolar();
* A triangle signal between 0 and 1. * A triangle signal between 0 and 1.
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* n(tri.segment(8).range(0,7)).scale("C:minor") * n(tri.segment(8).range(0,7)).scale("C:minor")
* *
@ -138,7 +138,7 @@ export const tri = fastcat(saw, isaw);
* A triangle signal between -1 and 1 (like `tri`, but bipolar). * A triangle signal between -1 and 1 (like `tri`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const tri2 = fastcat(saw2, isaw2); export const tri2 = fastcat(saw2, isaw2);
@ -146,7 +146,7 @@ export const tri2 = fastcat(saw2, isaw2);
* An inverted triangle signal between 1 and 0 (like `tri`, but flipped). * An inverted triangle signal between 1 and 0 (like `tri`, but flipped).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
* @example * @example
* n(itri.segment(8).range(0,7)).scale("C:minor") * n(itri.segment(8).range(0,7)).scale("C:minor")
* *
@ -157,7 +157,7 @@ export const itri = fastcat(isaw, saw);
* An inverted triangle signal between -1 and 1 (like `itri`, but bipolar). * An inverted triangle signal between -1 and 1 (like `itri`, but bipolar).
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const itri2 = fastcat(isaw2, saw2); export const itri2 = fastcat(isaw2, saw2);
@ -165,7 +165,7 @@ export const itri2 = fastcat(isaw2, saw2);
* A signal representing the cycle time. * A signal representing the cycle time.
* *
* @return {Pattern} * @return {Pattern}
* @group generators * @tags generators
*/ */
export const time = signal(id); export const time = signal(id);
@ -173,7 +173,7 @@ export const time = signal(id);
* The mouse's x position value ranges from 0 to 1. * The mouse's x position value ranges from 0 to 1.
* @name mousex * @name mousex
* @return {Pattern} * @return {Pattern}
* @group external_io * @tags external_io
* @example * @example
* n(mousex.segment(4).range(0,7)).scale("C:minor") * n(mousex.segment(4).range(0,7)).scale("C:minor")
* *
@ -183,7 +183,7 @@ export const time = signal(id);
* The mouse's y position value ranges from 0 to 1. * The mouse's y position value ranges from 0 to 1.
* @name mousey * @name mousey
* @return {Pattern} * @return {Pattern}
* @group external_io * @tags external_io
* @example * @example
* n(mousey.segment(4).range(0,7)).scale("C:minor") * n(mousey.segment(4).range(0,7)).scale("C:minor")
* *
@ -238,7 +238,7 @@ const timeToRands = (t, n) => timeToRandsPrime(timeToIntSeed(t), n);
/** /**
* A discrete pattern of numbers from 0 to n-1 * A discrete pattern of numbers from 0 to n-1
* @group generators * @tags generators
* @example * @example
* n(run(4)).scale("C4:pentatonic") * n(run(4)).scale("C4:pentatonic")
* // n("0 1 2 3").scale("C4:pentatonic") * // n("0 1 2 3").scale("C4:pentatonic")
@ -249,7 +249,7 @@ export const run = (n) => saw.range(0, n).round().segment(n);
* Creates a pattern from a binary number. * Creates a pattern from a binary number.
* *
* @name binary * @name binary
* @group generators * @tags generators
* @param {number} n - input number to convert to binary * @param {number} n - input number to convert to binary
* @example * @example
* "hh".s().struct(binary(5)) * "hh".s().struct(binary(5))
@ -264,7 +264,7 @@ export const binary = (n) => {
* Creates a pattern from a binary number, padded to n bits long. * Creates a pattern from a binary number, padded to n bits long.
* *
* @name binaryN * @name binaryN
* @group generators * @tags generators
* @param {number} n - input number to convert to binary * @param {number} n - input number to convert to binary
* @param {number} nBits - pattern length, defaults to 16 * @param {number} nBits - pattern length, defaults to 16
* @example * @example
@ -300,7 +300,7 @@ const _rearrangeWith = (ipat, n, pat) => {
* Slices a pattern into the given number of parts, then plays those parts in random order. * Slices a pattern into the given number of parts, then plays those parts in random order.
* Each part will be played exactly once per cycle. * Each part will be played exactly once per cycle.
* @name shuffle * @name shuffle
* @group transforms * @tags transforms
* @example * @example
* note("c d e f").sound("piano").shuffle(4) * note("c d e f").sound("piano").shuffle(4)
* @example * @example
@ -314,7 +314,7 @@ export const shuffle = register('shuffle', (n, pat) => {
* Slices a pattern into the given number of parts, then plays those parts at random. Similar to `shuffle`, * Slices a pattern into the given number of parts, then plays those parts at random. Similar to `shuffle`,
* but parts might be played more than once, or not at all, per cycle. * but parts might be played more than once, or not at all, per cycle.
* @name scramble * @name scramble
* @group transforms * @tags transforms
* @example * @example
* note("c d e f").sound("piano").scramble(4) * note("c d e f").sound("piano").scramble(4)
* @example * @example
@ -328,7 +328,7 @@ export const scramble = register('scramble', (n, pat) => {
* A continuous pattern of random numbers, between 0 and 1. * A continuous pattern of random numbers, between 0 and 1.
* *
* @name rand * @name rand
* @group generators * @tags generators
* @example * @example
* // randomly change the cutoff * // randomly change the cutoff
* s("bd*4,hh*8").cutoff(rand.range(500,8000)) * s("bd*4,hh*8").cutoff(rand.range(500,8000))
@ -346,7 +346,7 @@ export const _brandBy = (p) => rand.fmap((x) => x < p);
* A continuous pattern of 0 or 1 (binary random), with a probability for the value being 1 * A continuous pattern of 0 or 1 (binary random), with a probability for the value being 1
* *
* @name brandBy * @name brandBy
* @group generators * @tags generators
* @param {number} probability - a number between 0 and 1 * @param {number} probability - a number between 0 and 1
* @example * @example
* s("hh*10").pan(brandBy(0.2)) * s("hh*10").pan(brandBy(0.2))
@ -357,7 +357,7 @@ export const brandBy = (pPat) => reify(pPat).fmap(_brandBy).innerJoin();
* A continuous pattern of 0 or 1 (binary random) * A continuous pattern of 0 or 1 (binary random)
* *
* @name brand * @name brand
* @group generators * @tags generators
* @example * @example
* s("hh*10").pan(brand) * s("hh*10").pan(brand)
*/ */
@ -369,7 +369,7 @@ export const _irand = (i) => rand.fmap((x) => Math.trunc(x * i));
* A continuous pattern of random integers, between 0 and n-1. * A continuous pattern of random integers, between 0 and n-1.
* *
* @name irand * @name irand
* @group generators * @tags generators
* @param {number} n max value (exclusive) * @param {number} n max value (exclusive)
* @example * @example
* // randomly select scale notes from 0 - 7 (= C to C) * // randomly select scale notes from 0 - 7 (= C to C)
@ -392,7 +392,7 @@ export const __chooseWith = (pat, xs) => {
/** /**
* Choose from the list of values (or patterns of values) using the given * Choose from the list of values (or patterns of values) using the given
* pattern of numbers, which should be in the range of 0..1 * pattern of numbers, which should be in the range of 0..1
* @group transforms * @tags transforms
* @param {Pattern} pat * @param {Pattern} pat
* @param {*} xs * @param {*} xs
* @returns {Pattern} * @returns {Pattern}
@ -406,7 +406,7 @@ export const chooseWith = (pat, xs) => {
/** /**
* As with {chooseWith}, but the structure comes from the chosen values, rather * As with {chooseWith}, but the structure comes from the chosen values, rather
* than the pattern you're using to choose with. * than the pattern you're using to choose with.
* @group transforms * @tags transforms
* @param {Pattern} pat * @param {Pattern} pat
* @param {*} xs * @param {*} xs
* @returns {Pattern} * @returns {Pattern}
@ -417,7 +417,7 @@ export const chooseInWith = (pat, xs) => {
/** /**
* Chooses randomly from the given list of elements. * Chooses randomly from the given list of elements.
* @group transforms * @tags transforms
* @param {...any} xs values / patterns to choose from. * @param {...any} xs values / patterns to choose from.
* @returns {Pattern} - a continuous pattern. * @returns {Pattern} - a continuous pattern.
* @example * @example
@ -433,7 +433,7 @@ export const chooseOut = choose;
* Chooses from the given list of values (or patterns of values), according * Chooses from the given list of values (or patterns of values), according
* to the pattern that the method is called on. The pattern should be in * to the pattern that the method is called on. The pattern should be in
* the range 0 .. 1. * the range 0 .. 1.
* @group transforms * @tags transforms
* @param {...any} xs * @param {...any} xs
* @returns {Pattern} * @returns {Pattern}
*/ */
@ -444,7 +444,7 @@ Pattern.prototype.choose = function (...xs) {
/** /**
* As with choose, but the pattern that this method is called on should be * As with choose, but the pattern that this method is called on should be
* in the range -1 .. 1 * in the range -1 .. 1
* @group transforms * @tags transforms
* @param {...any} xs * @param {...any} xs
* @returns {Pattern} * @returns {Pattern}
*/ */
@ -454,7 +454,7 @@ Pattern.prototype.choose2 = function (...xs) {
/** /**
* Picks one of the elements at random each cycle. * Picks one of the elements at random each cycle.
* @group transforms * @tags transforms
* @synonyms randcat * @synonyms randcat
* @returns {Pattern} * @returns {Pattern}
* @example * @example
@ -497,7 +497,7 @@ const wchooseWith = (...args) => _wchooseWith(...args).outerJoin();
/** /**
* Chooses randomly from the given list of elements by giving a probability to each element * Chooses randomly from the given list of elements by giving a probability to each element
* @group transforms * @tags transforms
* @param {...any} pairs arrays of value and weight * @param {...any} pairs arrays of value and weight
* @returns {Pattern} - a continuous pattern. * @returns {Pattern} - a continuous pattern.
* @example * @example
@ -507,7 +507,7 @@ export const wchoose = (...pairs) => wchooseWith(rand, ...pairs);
/** /**
* Picks one of the elements at random each cycle by giving a probability to each element * Picks one of the elements at random each cycle by giving a probability to each element
* @group transforms * @tags transforms
* @synonyms wrandcat * @synonyms wrandcat
* @returns {Pattern} * @returns {Pattern}
* @example * @example
@ -555,7 +555,7 @@ export const berlinWith = (tpat) => {
/** /**
* Generates a continuous pattern of [perlin noise](https://en.wikipedia.org/wiki/Perlin_noise), in the range 0..1. * Generates a continuous pattern of [perlin noise](https://en.wikipedia.org/wiki/Perlin_noise), in the range 0..1.
* *
* @group generators * @tags generators
* @name perlin * @name perlin
* @example * @example
* // randomly change the cutoff * // randomly change the cutoff
@ -568,7 +568,7 @@ export const perlin = perlinWith(time.fmap((v) => Number(v)));
* Generates a continuous pattern of [berlin noise](conceived by Jame Coyne and Jade Rowland as a joke but turned out to be surprisingly cool and useful, * Generates a continuous pattern of [berlin noise](conceived by Jame Coyne and Jade Rowland as a joke but turned out to be surprisingly cool and useful,
* like perlin noise but with sawtooth waves), in the range 0..1. * like perlin noise but with sawtooth waves), in the range 0..1.
* *
* @group generators * @tags generators
* @name berlin * @name berlin
* @example * @example
* // ascending arpeggios * // ascending arpeggios
@ -589,7 +589,7 @@ export const degradeByWith = register(
* 0 = 0% chance of removal * 0 = 0% chance of removal
* 1 = 100% chance of removal * 1 = 100% chance of removal
* *
* @group transforms * @tags transforms
* @name degradeBy * @name degradeBy
* @memberof Pattern * @memberof Pattern
* @param {number} amount - a number between 0 and 1 * @param {number} amount - a number between 0 and 1
@ -615,7 +615,7 @@ export const degradeBy = register(
* *
* Randomly removes 50% of events from the pattern. Shorthand for `.degradeBy(0.5)` * Randomly removes 50% of events from the pattern. Shorthand for `.degradeBy(0.5)`
* *
* @group transforms * @tags transforms
* @name degrade * @name degrade
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -632,7 +632,7 @@ export const degrade = register('degrade', (pat) => pat._degradeBy(0.5), true, t
* 1 = 0% chance of removal * 1 = 0% chance of removal
* Events that would be removed by degradeBy are let through by undegradeBy and vice versa (see second example). * Events that would be removed by degradeBy are let through by undegradeBy and vice versa (see second example).
* *
* @group transforms * @tags transforms
* @name undegradeBy * @name undegradeBy
* @memberof Pattern * @memberof Pattern
* @param {number} amount - a number between 0 and 1 * @param {number} amount - a number between 0 and 1
@ -661,7 +661,7 @@ export const undegradeBy = register(
* Inverse of `degrade`: Randomly removes 50% of events from the pattern. Shorthand for `.undegradeBy(0.5)` * Inverse of `degrade`: Randomly removes 50% of events from the pattern. Shorthand for `.undegradeBy(0.5)`
* Events that would be removed by degrade are let through by undegrade and vice versa (see second example). * Events that would be removed by degrade are let through by undegrade and vice versa (see second example).
* *
* @group transforms * @tags transforms
* @name undegrade * @name undegrade
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -680,7 +680,7 @@ export const undegrade = register('undegrade', (pat) => pat._undegradeBy(0.5), t
* Randomly applies the given function by the given probability. * Randomly applies the given function by the given probability.
* Similar to `someCyclesBy` * Similar to `someCyclesBy`
* *
* @group transforms * @tags transforms
* @name sometimesBy * @name sometimesBy
* @memberof Pattern * @memberof Pattern
* @param {number | Pattern} probability - a number between 0 and 1 * @param {number | Pattern} probability - a number between 0 and 1
@ -700,7 +700,7 @@ export const sometimesBy = register('sometimesBy', function (patx, func, pat) {
* *
* Applies the given function with a 50% chance * Applies the given function with a 50% chance
* *
* @group transforms * @tags transforms
* @name sometimes * @name sometimes
* @memberof Pattern * @memberof Pattern
* @param {function} function - the transformation to apply * @param {function} function - the transformation to apply
@ -722,7 +722,7 @@ export const sometimes = register('sometimes', function (func, pat) {
* @param {number | Pattern} probability - a number between 0 and 1 * @param {number | Pattern} probability - a number between 0 and 1
* @param {function} function - the transformation to apply * @param {function} function - the transformation to apply
* @returns Pattern * @returns Pattern
* @group transforms * @tags transforms
* @example * @example
* s("bd,hh*8").someCyclesBy(.3, x=>x.speed("0.5")) * s("bd,hh*8").someCyclesBy(.3, x=>x.speed("0.5"))
*/ */
@ -745,7 +745,7 @@ export const someCyclesBy = register('someCyclesBy', function (patx, func, pat)
* @name someCycles * @name someCycles
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
* @group transforms * @tags transforms
* @example * @example
* s("bd,hh*8").someCycles(x=>x.speed("0.5")) * s("bd,hh*8").someCycles(x=>x.speed("0.5"))
*/ */
@ -760,7 +760,7 @@ export const someCycles = register('someCycles', function (func, pat) {
* @name often * @name often
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
* @group transforms * @tags transforms
* @example * @example
* s("hh*8").often(x=>x.speed("0.5")) * s("hh*8").often(x=>x.speed("0.5"))
*/ */
@ -775,7 +775,7 @@ export const often = register('often', function (func, pat) {
* @name rarely * @name rarely
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
* @group transforms * @tags transforms
* @example * @example
* s("hh*8").rarely(x=>x.speed("0.5")) * s("hh*8").rarely(x=>x.speed("0.5"))
*/ */
@ -787,7 +787,7 @@ export const rarely = register('rarely', function (func, pat) {
* *
* Shorthand for `.sometimesBy(0.1, fn)` * Shorthand for `.sometimesBy(0.1, fn)`
* *
* @group transforms * @tags transforms
* @name almostNever * @name almostNever
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -802,7 +802,7 @@ export const almostNever = register('almostNever', function (func, pat) {
* *
* Shorthand for `.sometimesBy(0.9, fn)` * Shorthand for `.sometimesBy(0.9, fn)`
* *
* @group transforms * @tags transforms
* @name almostAlways * @name almostAlways
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -817,7 +817,7 @@ export const almostAlways = register('almostAlways', function (func, pat) {
* *
* Shorthand for `.sometimesBy(0, fn)` (never calls fn) * Shorthand for `.sometimesBy(0, fn)` (never calls fn)
* *
* @group transforms * @tags transforms
* @name never * @name never
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -832,7 +832,7 @@ export const never = register('never', function (_, pat) {
* *
* Shorthand for `.sometimesBy(1, fn)` (always calls fn) * Shorthand for `.sometimesBy(1, fn)` (always calls fn)
* *
* @group transforms * @tags transforms
* @name always * @name always
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -861,7 +861,7 @@ export function _keyDown(keyname) {
* Do something on a keypress, or array of keypresses * Do something on a keypress, or array of keypresses
* [Key name reference](https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values) * [Key name reference](https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values)
* *
* @group external_io * @tags external_io
* @name whenKey * @name whenKey
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern
@ -878,7 +878,7 @@ export const whenKey = register('whenKey', function (input, func, pat) {
* returns true when a key or array of keys is held * returns true when a key or array of keys is held
* [Key name reference](https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values) * [Key name reference](https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values)
* *
* @group external_io * @tags external_io
* @name keyDown * @name keyDown
* @memberof Pattern * @memberof Pattern
* @returns Pattern * @returns Pattern

View file

@ -7,7 +7,7 @@ import { signal } from '../core/signal.mjs';
* @name accelerationX * @name accelerationX
* @return {Pattern} * @return {Pattern}
* @synonyms accX * @synonyms accX
* @group external_io * @tags external_io
* @example * @example
* n(accelerationX.segment(4).range(0,7)).scale("C:minor") * n(accelerationX.segment(4).range(0,7)).scale("C:minor")
* *
@ -18,7 +18,7 @@ import { signal } from '../core/signal.mjs';
* @name accelerationY * @name accelerationY
* @return {Pattern} * @return {Pattern}
* @synonyms accY * @synonyms accY
* @group external_io * @tags external_io
* @example * @example
* n(accelerationY.segment(4).range(0,7)).scale("C:minor") * n(accelerationY.segment(4).range(0,7)).scale("C:minor")
* *
@ -29,7 +29,7 @@ import { signal } from '../core/signal.mjs';
* @name accelerationZ * @name accelerationZ
* @return {Pattern} * @return {Pattern}
* @synonyms accZ * @synonyms accZ
* @group external_io * @tags external_io
* @example * @example
* n(accelerationZ.segment(4).range(0,7)).scale("C:minor") * n(accelerationZ.segment(4).range(0,7)).scale("C:minor")
* *
@ -40,7 +40,7 @@ import { signal } from '../core/signal.mjs';
* @name gravityX * @name gravityX
* @return {Pattern} * @return {Pattern}
* @synonyms gravX * @synonyms gravX
* @group external_io * @tags external_io
* @example * @example
* n(gravityX.segment(4).range(0,7)).scale("C:minor") * n(gravityX.segment(4).range(0,7)).scale("C:minor")
* *
@ -51,7 +51,7 @@ import { signal } from '../core/signal.mjs';
* @name gravityY * @name gravityY
* @return {Pattern} * @return {Pattern}
* @synonyms gravY * @synonyms gravY
* @group external_io * @tags external_io
* @example * @example
* n(gravityY.segment(4).range(0,7)).scale("C:minor") * n(gravityY.segment(4).range(0,7)).scale("C:minor")
* *
@ -62,7 +62,7 @@ import { signal } from '../core/signal.mjs';
* @name gravityZ * @name gravityZ
* @return {Pattern} * @return {Pattern}
* @synonyms gravZ * @synonyms gravZ
* @group external_io * @tags external_io
* @example * @example
* n(gravityZ.segment(4).range(0,7)).scale("C:minor") * n(gravityZ.segment(4).range(0,7)).scale("C:minor")
* *
@ -73,7 +73,7 @@ import { signal } from '../core/signal.mjs';
* @name rotationAlpha * @name rotationAlpha
* @return {Pattern} * @return {Pattern}
* @synonyms rotA, rotZ, rotationZ * @synonyms rotA, rotZ, rotationZ
* @group external_io * @tags external_io
* @example * @example
* n(rotationAlpha.segment(4).range(0,7)).scale("C:minor") * n(rotationAlpha.segment(4).range(0,7)).scale("C:minor")
* *
@ -84,7 +84,7 @@ import { signal } from '../core/signal.mjs';
* @name rotationBeta * @name rotationBeta
* @return {Pattern} * @return {Pattern}
* @synonyms rotB, rotX, rotationX * @synonyms rotB, rotX, rotationX
* @group external_io * @tags external_io
* @example * @example
* n(rotationBeta.segment(4).range(0,7)).scale("C:minor") * n(rotationBeta.segment(4).range(0,7)).scale("C:minor")
* *
@ -95,7 +95,7 @@ import { signal } from '../core/signal.mjs';
* @name rotationGamma * @name rotationGamma
* @return {Pattern} * @return {Pattern}
* @synonyms rotG, rotY, rotationY * @synonyms rotG, rotY, rotationY
* @group external_io * @tags external_io
* @example * @example
* n(rotationGamma.segment(4).range(0,7)).scale("C:minor") * n(rotationGamma.segment(4).range(0,7)).scale("C:minor")
* *
@ -106,7 +106,7 @@ import { signal } from '../core/signal.mjs';
* @name orientationAlpha * @name orientationAlpha
* @return {Pattern} * @return {Pattern}
* @synonyms oriA, oriZ, orientationZ * @synonyms oriA, oriZ, orientationZ
* @group external_io * @tags external_io
* @example * @example
* n(orientationAlpha.segment(4).range(0,7)).scale("C:minor") * n(orientationAlpha.segment(4).range(0,7)).scale("C:minor")
* *
@ -117,7 +117,7 @@ import { signal } from '../core/signal.mjs';
* @name orientationBeta * @name orientationBeta
* @return {Pattern} * @return {Pattern}
* @synonyms oriB, oriX, orientationX * @synonyms oriB, oriX, orientationX
* @group external_io * @tags external_io
* @example * @example
* n(orientationBeta.segment(4).range(0,7)).scale("C:minor") * n(orientationBeta.segment(4).range(0,7)).scale("C:minor")
* *
@ -128,7 +128,7 @@ import { signal } from '../core/signal.mjs';
* @name orientationGamma * @name orientationGamma
* @return {Pattern} * @return {Pattern}
* @synonyms oriG, oriY, orientationY * @synonyms oriG, oriY, orientationY
* @group external_io * @tags external_io
* @example * @example
* n(orientationGamma.segment(4).range(0,7)).scale("C:minor") * n(orientationGamma.segment(4).range(0,7)).scale("C:minor")
* *
@ -139,7 +139,7 @@ import { signal } from '../core/signal.mjs';
* @name absoluteOrientationAlpha * @name absoluteOrientationAlpha
* @return {Pattern} * @return {Pattern}
* @synonyms absOriA, absOriZ, absoluteOrientationZ * @synonyms absOriA, absOriZ, absoluteOrientationZ
* @group external_io * @tags external_io
* @example * @example
* n(absoluteOrientationAlpha.segment(4).range(0,7)).scale("C:minor") * n(absoluteOrientationAlpha.segment(4).range(0,7)).scale("C:minor")
* *
@ -150,7 +150,7 @@ import { signal } from '../core/signal.mjs';
* @name absoluteOrientationBeta * @name absoluteOrientationBeta
* @return {Pattern} * @return {Pattern}
* @synonyms absOriB, absOriX, absoluteOrientationX * @synonyms absOriB, absOriX, absoluteOrientationX
* @group external_io * @tags external_io
* @example * @example
* n(absoluteOrientationBeta.segment(4).range(0,7)).scale("C:minor") * n(absoluteOrientationBeta.segment(4).range(0,7)).scale("C:minor")
* *
@ -161,7 +161,7 @@ import { signal } from '../core/signal.mjs';
* @name absoluteOrientationGamma * @name absoluteOrientationGamma
* @return {Pattern} * @return {Pattern}
* @synonyms absOriG, absOriY, absoluteOrientationY * @synonyms absOriG, absOriY, absoluteOrientationY
* @group external_io * @tags external_io
* @example * @example
* n(absoluteOrientationGamma.segment(4).range(0,7)).scale("C:minor") * n(absoluteOrientationGamma.segment(4).range(0,7)).scale("C:minor")
* *

View file

@ -80,7 +80,7 @@ reverbGen.generateGraph = function (data, width, height, min, max) {
@param {number} lpFreqEndAt @param {number} lpFreqEndAt
@param {!function(!AudioBuffer)} callback May be called @param {!function(!AudioBuffer)} callback May be called
immediately within the current execution context, or later. immediately within the current execution context, or later.
@group effects @tags effects
*/ */
var applyGradualLowpass = function (input, lpFreqStart, lpFreqEnd, lpFreqEndAt, callback) { var applyGradualLowpass = function (input, lpFreqStart, lpFreqEnd, lpFreqEndAt, callback) {
if (lpFreqStart == 0) { if (lpFreqStart == 0) {

View file

@ -18,7 +18,7 @@ function applyGainCurve(val) {
* @param {number} a - Signal A (can be a single value or an array value in buffer processing). * @param {number} a - Signal A (can be a single value or an array value in buffer processing).
* @param {number} b - Signal B (can be a single value or an array value in buffer processing). * @param {number} b - Signal B (can be a single value or an array value in buffer processing).
* @param {number} m - Crossfade parameter (0.0 = all A, 1.0 = all B, 0.5 = equal mix). * @param {number} m - Crossfade parameter (0.0 = all A, 1.0 = all B, 0.5 = equal mix).
* @group effects * @tags effects
* @returns {number} Crossfaded output value. * @returns {number} Crossfaded output value.
*/ */
function crossfade(a, b, m) { function crossfade(a, b, m) {