add fastpath for using the eq as a pure gain control

This commit is contained in:
ed 2021-11-15 23:19:43 +01:00
parent dd9b93970e
commit e72c2a6982

View file

@ -1261,12 +1261,14 @@ var audio_eq = (function () {
return;
}
var max = 0;
for (var a = 0; a < r.gains.length; a++)
if (max < r.gains[a])
max = r.gains[a];
var min, max;
min = max = r.gains[0];
for (var a = 1; a < r.gains.length; a++) {
min = Math.min(min, r.gains[a]);
max = Math.max(max, r.gains[a]);
}
var gains = []
var gains = [];
for (var a = 0; a < r.gains.length; a++)
gains.push(r.gains[a] - max);
@ -1275,7 +1277,7 @@ var audio_eq = (function () {
gains.push(t);
gains.unshift(gains[0]);
for (var a = 0; a < cfg.length; a++) {
for (var a = 0; a < cfg.length && min != max; a++) {
var fi = actx.createBiquadFilter();
fi.frequency.value = cfg[a][0];
fi.gain.value = cfg[a][2] * gains[a];