mirror of
https://github.com/eliasstepanik/strudel-docker.git
synced 2026-01-26 04:58:27 +00:00
patternify filter
This commit is contained in:
parent
c2feb6e214
commit
1ead12a2a3
@ -1,4 +1,4 @@
|
|||||||
import { Pattern, getFrequency } from '@strudel.cycles/core';
|
import { Pattern, getFrequency, patternify2 } from '@strudel.cycles/core';
|
||||||
import { Tone } from '@strudel.cycles/tone';
|
import { Tone } from '@strudel.cycles/tone';
|
||||||
|
|
||||||
// let audioContext;
|
// let audioContext;
|
||||||
@ -53,17 +53,20 @@ Pattern.prototype.adsr = function (a = 0.01, d = 0.05, s = 1, r = 0.01) {
|
|||||||
return envelope;
|
return envelope;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
Pattern.prototype.filter = function (type = 'lowshelf', frequency = 1000, gain = 25) {
|
Pattern.prototype._filter = function (type = 'lowpass', frequency = 1000) {
|
||||||
return this.withAudioNode((t, e, node) => {
|
return this.withAudioNode((t, e, node) => {
|
||||||
const filter = getAudioContext().createBiquadFilter();
|
const filter = getAudioContext().createBiquadFilter();
|
||||||
filter.type = type;
|
filter.type = type;
|
||||||
filter.frequency.value = frequency;
|
filter.frequency.value = frequency;
|
||||||
filter.gain.value = gain;
|
|
||||||
node?.connect(filter);
|
node?.connect(filter);
|
||||||
return filter;
|
return filter;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Pattern.prototype.filter = function (type, frequency) {
|
||||||
|
return patternify2(Pattern.prototype._filter)(reify(type), reify(frequency), this);
|
||||||
|
};
|
||||||
|
|
||||||
Pattern.prototype.out = function () {
|
Pattern.prototype.out = function () {
|
||||||
const master = getAudioContext().createGain();
|
const master = getAudioContext().createGain();
|
||||||
master.gain.value = 0.1;
|
master.gain.value = 0.1;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user