This commit is contained in:
Maikiwi 2022-08-04 01:23:41 -07:00
parent 556527c78c
commit 3b82fba553
3 changed files with 52 additions and 53 deletions

View file

@ -28,7 +28,7 @@ const CiderAudioRenderer = {
atmosphereRealizer1: null, atmosphereRealizer1: null,
opportunisticCorrection: null opportunisticCorrection: null
} }
} catch (e) { } } catch (e) { }
}, },
init: function () { init: function () {
CiderAudioRenderer.context = new OfflineAudioContext({ CiderAudioRenderer.context = new OfflineAudioContext({
@ -36,6 +36,9 @@ const CiderAudioRenderer = {
length: 96000 * 8, length: 96000 * 8,
sampleRate: 96000, sampleRate: 96000,
}) })
CiderAudioRenderer.audioNodes.gainNode = CiderAudioRenderer.context.createGain(); CiderAudioRenderer.audioNodes.gainNode.gain.value = 1;
CiderAudioRenderer.audioNodes.intelliGainComp = CiderAudioRenderer.context.createGain(); CiderAudioRenderer.audioNodes.intelliGainComp.gain.value = 1;
CiderAudioRenderer.audioNodes.intelliGainComp.connect(CiderAudioRenderer.audioNodes.gainNode);
CiderAudioRenderer.hierarchical_loading(); CiderAudioRenderer.hierarchical_loading();
}, },
optimizerProfile: [ optimizerProfile: [
@ -215,7 +218,7 @@ const CiderAudioRenderer = {
// Always destination // Always destination
CiderAudioRenderer.audioNodes.spatialNode.connect(CiderAudioRenderer.context.destination) CiderAudioRenderer.audioNodes.spatialNode.connect(CiderAudioRenderer.context.destination)
}, },
spatialOff: function () { spatialOff: function () {
CiderAudioRenderer.hierarchical_loading(); CiderAudioRenderer.hierarchical_loading();
@ -302,7 +305,7 @@ const CiderAudioRenderer = {
let atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles.find(function (profile) { let atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles.find(function (profile) {
return profile.id === app.cfg.audio.maikiwiAudio.atmosphereRealizer2_value; return profile.id === app.cfg.audio.maikiwiAudio.atmosphereRealizer2_value;
}); });
if (atmosphereRealizerProfile === undefined) { if (atmosphereRealizerProfile === undefined) {
atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles[0]; atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles[0];
} }
@ -351,7 +354,7 @@ const CiderAudioRenderer = {
console.debug("[Cider][Audio] atmosphereRealizer2_n6 -> llpw"); console.debug("[Cider][Audio] atmosphereRealizer2_n6 -> llpw");
} catch (e) { } } catch (e) { }
break; break;
case 'n0': case 'n0':
try { CiderAudioRenderer.audioNodes.atmosphereRealizer2.connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] atmosphereRealizer2_n6 -> destination");} catch (e) { } try { CiderAudioRenderer.audioNodes.atmosphereRealizer2.connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] atmosphereRealizer2_n6 -> destination");} catch (e) { }
break; break;
@ -360,14 +363,14 @@ const CiderAudioRenderer = {
} }
}, },
atmosphereRealizer1_n5: function (status, destination) { atmosphereRealizer1_n5: function (status, destination) {
if (status === true) { if (status === true) {
CiderAudioRenderer.audioNodes.atmosphereRealizer1 = CiderAudioRenderer.context.createConvolver(); CiderAudioRenderer.audioNodes.atmosphereRealizer1 = CiderAudioRenderer.context.createConvolver();
CiderAudioRenderer.audioNodes.atmosphereRealizer1.normalize = false; CiderAudioRenderer.audioNodes.atmosphereRealizer1.normalize = false;
let atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles.find(function (profile) { let atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles.find(function (profile) {
return profile.id === app.cfg.audio.maikiwiAudio.atmosphereRealizer1_value; return profile.id === app.cfg.audio.maikiwiAudio.atmosphereRealizer1_value;
}); });
if (atmosphereRealizerProfile === undefined) { if (atmosphereRealizerProfile === undefined) {
atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles[0]; atmosphereRealizerProfile = CiderAudioRenderer.atmosphereRealizerProfiles[0];
} }
@ -415,11 +418,11 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(CiderAudioRenderer.audioNodes.llpw[0]); CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(CiderAudioRenderer.audioNodes.llpw[0]);
console.debug("[Cider][Audio] atmosphereRealizer1_n5 -> llpw"); console.debug("[Cider][Audio] atmosphereRealizer1_n5 -> llpw");
} catch (e) { } } catch (e) { }
break; break;
case 'n0': case 'n0':
try { CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] atmosphereRealizer1_n5 -> destination");} catch (e) { } try { CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] atmosphereRealizer1_n5 -> destination");} catch (e) { }
break; break;
} }
@ -432,7 +435,7 @@ const CiderAudioRenderer = {
let opportunisticCorrectionProfile = CiderAudioRenderer.opportunisticCorrectionProfiles.find(function (profile) { let opportunisticCorrectionProfile = CiderAudioRenderer.opportunisticCorrectionProfiles.find(function (profile) {
return profile.id === app.cfg.audio.maikiwiAudio.opportunisticCorrection_state; return profile.id === app.cfg.audio.maikiwiAudio.opportunisticCorrection_state;
}); });
if (opportunisticCorrectionProfile === undefined) { if (opportunisticCorrectionProfile === undefined) {
opportunisticCorrectionProfile = CiderAudioRenderer.opportunisticCorrectionProfiles[0]; opportunisticCorrectionProfile = CiderAudioRenderer.opportunisticCorrectionProfiles[0];
} }
@ -458,7 +461,7 @@ const CiderAudioRenderer = {
} catch (e) { } } catch (e) { }
break; break;
case 'n4': case 'n4':
try { CiderAudioRenderer.audioNodes.opportunisticCorrection.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]); try { CiderAudioRenderer.audioNodes.opportunisticCorrection.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]);
console.debug("[Cider][Audio] opportunisticCorrection_n2 -> vibrantbassNode");} catch (e) { } console.debug("[Cider][Audio] opportunisticCorrection_n2 -> vibrantbassNode");} catch (e) { }
break; break;
case 'n3': case 'n3':
@ -495,10 +498,10 @@ const CiderAudioRenderer = {
switch (app.cfg.audio.maikiwiAudio.ciderPPE_value) { switch (app.cfg.audio.maikiwiAudio.ciderPPE_value) {
case "MAIKIWI": case "MAIKIWI":
try { try {
switch (localStorage.getItem("playingBitrate")) { switch (localStorage.getItem("playingBitrate")) {
case "64": case "64":
CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver(); CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver();
CiderAudioRenderer.audioNodes.llpw[0].normalize = false; CiderAudioRenderer.audioNodes.llpw[0].normalize = false;
fetch('./cideraudio/impulses/CAP_64.wav').then(async (impulseData) => { fetch('./cideraudio/impulses/CAP_64.wav').then(async (impulseData) => {
@ -506,7 +509,7 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse); CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse);
}); });
console.debug("[Cider][Audio] CAP Adaptive - 64kbps"); console.debug("[Cider][Audio] CAP Adaptive - 64kbps");
break; break;
case "256": case "256":
CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver(); CiderAudioRenderer.audioNodes.llpw[0].normalize = false; CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver(); CiderAudioRenderer.audioNodes.llpw[0].normalize = false;
@ -517,7 +520,7 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse); CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse);
}); });
console.debug("[Cider][Audio] CAP Adaptive - 256kbps"); console.debug("[Cider][Audio] CAP Adaptive - 256kbps");
break; break;
default: default:
CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createGain(); CiderAudioRenderer.audioNodes.llpw[0].gain.value = 1 CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createGain(); CiderAudioRenderer.audioNodes.llpw[0].gain.value = 1
@ -536,7 +539,7 @@ const CiderAudioRenderer = {
}); });
console.debug("[Cider][Audio] CAP Adaptive - (Error Fallback) 256kbps"); console.debug("[Cider][Audio] CAP Adaptive - (Error Fallback) 256kbps");
} }
break; break;
case "MAIKIWI_LEGACY": case "MAIKIWI_LEGACY":
CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver(); CiderAudioRenderer.audioNodes.llpw[0] = CiderAudioRenderer.context.createConvolver();
@ -564,13 +567,13 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.llpw[i].type = 'peaking'; // 'peaking'; CiderAudioRenderer.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
CiderAudioRenderer.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i]; CiderAudioRenderer.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i];
CiderAudioRenderer.audioNodes.llpw[i].Q.value = LLPW_Q[i]; CiderAudioRenderer.audioNodes.llpw[i].Q.value = LLPW_Q[i];
CiderAudioRenderer.audioNodes.llpw[i].gain.value = LLPW_GAIN[i]; CiderAudioRenderer.audioNodes.llpw[i].gain.value = LLPW_GAIN[i];
} }
for (let i = 1; i < LLPW_FREQUENCIES.length; i ++) { for (let i = 1; i < LLPW_FREQUENCIES.length; i ++) {
CiderAudioRenderer.audioNodes.llpw[i-1].connect(CiderAudioRenderer.audioNodes.llpw[i]); CiderAudioRenderer.audioNodes.llpw[i-1].connect(CiderAudioRenderer.audioNodes.llpw[i]);
} }
console.debug("[Cider][Audio] CAP - Legacy Mode"); console.debug("[Cider][Audio] CAP - Legacy Mode");
break; break;
default: default:
@ -582,7 +585,7 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse); CiderAudioRenderer.audioNodes.llpw[0].buffer = await CiderAudioRenderer.context.decodeAudioData(bufferedImpulse);
}); });
app.cfg.audio.maikiwiAudio.ciderPPE_value = "MAIKIWI"; app.cfg.audio.maikiwiAudio.ciderPPE_value = "MAIKIWI";
console.debug("[Cider][Audio] CAP - Maikiwi Adaptive Mode (Defaulted from broki config)"); console.debug("[Cider][Audio] CAP - Maikiwi Adaptive Mode (Defaulted from broki config)");
break; break;
} }
@ -604,7 +607,7 @@ const CiderAudioRenderer = {
} catch (e) { } } catch (e) { }
break; break;
case 'n4': case 'n4':
try { CiderAudioRenderer.audioNodes.llpw.at(-1).connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]); try { CiderAudioRenderer.audioNodes.llpw.at(-1).connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]);
console.debug("[Cider][Audio] llpw_n1 -> vibrantbassNode");} catch (e) { } console.debug("[Cider][Audio] llpw_n1 -> vibrantbassNode");} catch (e) { }
break; break;
case 'n3': case 'n3':
@ -652,7 +655,7 @@ const CiderAudioRenderer = {
case "spatial": case "spatial":
try { CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).connect(CiderAudioRenderer.audioNodes.spatialNode); console.debug("[Cider][Audio] vibrantbass_n4 -> Spatial");} catch (e) { } try { CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).connect(CiderAudioRenderer.audioNodes.spatialNode); console.debug("[Cider][Audio] vibrantbass_n4 -> Spatial");} catch (e) { }
break; break;
case "n6": case "n6":
try { try {
CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).connect(CiderAudioRenderer.audioNodes.atmosphereRealizer2); CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).connect(CiderAudioRenderer.audioNodes.atmosphereRealizer2);
@ -695,17 +698,13 @@ const CiderAudioRenderer = {
} }
} }
}, },
hierarchical_optimizer: function () { hierarchical_optimizer: function () {
CiderAudioRenderer.intelliGainComp_n0_0() // Calculate headroom for upcoming convolver CiderAudioRenderer.intelliGainComp_n0_0() // Calculate headroom for upcoming convolver
const normValue = CiderAudioRenderer.audioNodes.gainNode.gain.value; // Store this temporarily so we can restore later
CiderAudioRenderer.audioNodes.gainNode.gain.value = 1;
// Render and return convolved buffer // Render and return convolved buffer
let optimizerProfile = CiderAudioRenderer.optimizerProfile.find(function (profile) { let optimizerProfile = CiderAudioRenderer.optimizerProfile.find(function (profile) {
return profile.id === 'dirac32_96'; // Hard code for now return profile.id === 'dirac32_96'; // Hard code for now
}); });
return fetch(optimizerProfile.file) return fetch(optimizerProfile.file)
.then(async (response) => await response.arrayBuffer()) .then(async (response) => await response.arrayBuffer())
@ -719,25 +718,25 @@ const CiderAudioRenderer = {
switch (lastNode) { switch (lastNode) {
case 'spatial': case 'spatial':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.spatialNode); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.spatialNode);
break; break;
case 'n6': case 'n6':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer2); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer2);
break; break;
case 'n5': case 'n5':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer1); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer1);
break; break;
case 'n4': case 'n4':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]);
break; break;
case 'n3': case 'n3':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.audioBands[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.audioBands[0]);
break; break;
case 'n2': case 'n2':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.opportunisticCorrection); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.opportunisticCorrection);
break; break;
case 'n1': case 'n1':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.llpw[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.llpw[0]);
break; break;
} }
@ -752,7 +751,7 @@ const CiderAudioRenderer = {
break; break;
case 'n5': case 'n5':
CiderAudioRenderer.audioNodes.atmosphereRealizer1.disconnect(); CiderAudioRenderer.audioNodes.atmosphereRealizer1.disconnect();
CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(renderer.destination); CiderAudioRenderer.audioNodes.atmosphereRealizer1.connect(renderer.destination);
break; break;
case 'n4': case 'n4':
CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).disconnect(); CiderAudioRenderer.audioNodes.vibrantbassNode.at(-1).disconnect();
@ -796,11 +795,11 @@ const CiderAudioRenderer = {
const configMap = new Map([ const configMap = new Map([
['spatial', app.cfg.audio.maikiwiAudio.spatial === true], ['spatial', app.cfg.audio.maikiwiAudio.spatial === true],
['n6', app.cfg.audio.maikiwiAudio.atmosphereRealizer2 === true], ['n6', app.cfg.audio.maikiwiAudio.atmosphereRealizer2 === true],
['n5', app.cfg.audio.maikiwiAudio.atmosphereRealizer1 === true], ['n5', app.cfg.audio.maikiwiAudio.atmosphereRealizer1 === true],
['n4', app.cfg.audio.equalizer.vibrantBass != 0], ['n4', app.cfg.audio.equalizer.vibrantBass != 0],
['n3', Math.max(...app.cfg.audio.equalizer.gain) != 0], ['n3', Math.max(...app.cfg.audio.equalizer.gain) != 0],
['n2', app.cfg.audio.maikiwiAudio.opportunisticCorrection_state !== "OFF"], ['n2', app.cfg.audio.maikiwiAudio.opportunisticCorrection_state !== "OFF"],
['n1', app.cfg.audio.maikiwiAudio.ciderPPE === true] ['n1', app.cfg.audio.maikiwiAudio.ciderPPE === true]
]); ]);
@ -810,7 +809,7 @@ const CiderAudioRenderer = {
if (value === true) { if (value === true) {
if (index === 0) {firstNode = tier} if (index === 0) {firstNode = tier}
switch (tier) { switch (tier) {
case 'spatial': case 'spatial':
CiderAudioRenderer.spatial_ninf(); CiderAudioRenderer.spatial_ninf();
lastNode = 'spatial'; lastNode = 'spatial';
break; break;
@ -818,7 +817,7 @@ const CiderAudioRenderer = {
app.cfg.audio.normalization = true; app.cfg.audio.normalization = true;
CiderAudioRenderer.atmosphereRealizer2_n6(true, lastNode); CiderAudioRenderer.atmosphereRealizer2_n6(true, lastNode);
lastNode = 'n6'; lastNode = 'n6';
break; break;
case 'n5': case 'n5':
app.cfg.audio.normalization = true; app.cfg.audio.normalization = true;
CiderAudioRenderer.atmosphereRealizer1_n5(true, lastNode); CiderAudioRenderer.atmosphereRealizer1_n5(true, lastNode);
@ -827,7 +826,7 @@ const CiderAudioRenderer = {
case 'n4': case 'n4':
CiderAudioRenderer.vibrantbass_n4(true, lastNode); CiderAudioRenderer.vibrantbass_n4(true, lastNode);
lastNode = 'n4'; lastNode = 'n4';
break; break;
case 'n3': case 'n3':
CiderAudioRenderer.equalizer(true, lastNode); CiderAudioRenderer.equalizer(true, lastNode);
lastNode = 'n3'; lastNode = 'n3';
@ -840,7 +839,7 @@ const CiderAudioRenderer = {
app.cfg.audio.normalization = true; app.cfg.audio.normalization = true;
CiderAudioRenderer.llpw_n1(true, lastNode); CiderAudioRenderer.llpw_n1(true, lastNode);
lastNode = 'n1'; lastNode = 'n1';
break; break;
} }
} }
} }
@ -848,7 +847,7 @@ const CiderAudioRenderer = {
app.cfg.audio.maikiwiAudio.lastNode = lastNode; app.cfg.audio.maikiwiAudio.firstNode = firstNode; // Sync last node & first app.cfg.audio.maikiwiAudio.lastNode = lastNode; app.cfg.audio.maikiwiAudio.firstNode = firstNode; // Sync last node & first
switch (lastNode) { switch (lastNode) {
case 'spatial': case 'spatial':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.spatialNode); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.spatialNode);
console.debug("[Cider][Audio] gainNode -> Spatial"); console.debug("[Cider][Audio] gainNode -> Spatial");
break; break;
@ -858,16 +857,16 @@ const CiderAudioRenderer = {
break; break;
case 'n5': case 'n5':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer1); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.atmosphereRealizer1);
console.debug("[Cider][Audio] gainNode -> atmosphereRealizer1"); console.debug("[Cider][Audio] gainNode -> atmosphereRealizer1");
break; break;
case 'n4': case 'n4':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.vibrantbassNode[0]);
console.debug("[Cider][Audio] gainNode -> vibrantbass"); console.debug("[Cider][Audio] gainNode -> vibrantbass");
break; break;
case 'n3': case 'n3':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.audioBands[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.audioBands[0]);
console.debug("[Cider][Audio] gainNode -> audioBands"); console.debug("[Cider][Audio] gainNode -> audioBands");
break; break;
case 'n2': case 'n2':
try { try {
@ -879,7 +878,7 @@ const CiderAudioRenderer = {
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.llpw[0]); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.audioNodes.llpw[0]);
console.debug("[Cider][Audio] gainNode -> llpw"); console.debug("[Cider][Audio] gainNode -> llpw");
break; break;
case 'n0': case 'n0':
CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.context.destination); CiderAudioRenderer.audioNodes.gainNode.connect(CiderAudioRenderer.context.destination);
console.debug("[Cider][Audio] gainNode -> destination"); console.debug("[Cider][Audio] gainNode -> destination");
break; break;
@ -912,7 +911,7 @@ const CiderAudioRenderer = {
} }
switch (destination) { switch (destination) {
case 'spatial': case 'spatial':
CiderAudioRenderer.audioNodes.audioBands.at(-1).connect(CiderAudioRenderer.audioNodes.spatialNode); CiderAudioRenderer.audioNodes.audioBands.at(-1).connect(CiderAudioRenderer.audioNodes.spatialNode);
console.debug("[Cider][Audio] Equalizer -> Spatial"); console.debug("[Cider][Audio] Equalizer -> Spatial");
break; break;
@ -954,10 +953,10 @@ const CiderAudioRenderer = {
break; break;
case 'n0': case 'n0':
try { CiderAudioRenderer.audioNodes.audioBands.at(-1).connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] Equalizer -> destination");} catch (e) { } try { CiderAudioRenderer.audioNodes.audioBands.at(-1).connect(CiderAudioRenderer.context.destination); console.debug("[Cider][Audio] Equalizer -> destination");} catch (e) { }
break; break;
} }
} }
} }
} }
export { CiderAudioRenderer } export { CiderAudioRenderer }

View file

@ -15,6 +15,7 @@ import { sidebarLibraryItem } from "./components/sidebar-library-item.js";
window.app = app; window.app = app;
window.MusicKitTools = MusicKitTools; window.MusicKitTools = MusicKitTools;
window.CiderAudio = CiderAudio; window.CiderAudio = CiderAudio;
window.CiderAudioRenderer = CiderAudioRenderer;
window.CiderCache = CiderCache; window.CiderCache = CiderCache;
window.CiderFrontAPI = CiderFrontAPI; window.CiderFrontAPI = CiderFrontAPI;
window.wsapi = wsapi; window.wsapi = wsapi;

View file

@ -174,8 +174,7 @@
methods: { methods: {
CiderOptimizer: function () { CiderOptimizer: function () {
if (app.cfg.audio.maikiwiAudio.staticOptimizer.state === true) { if (app.cfg.audio.maikiwiAudio.staticOptimizer.state === true) {
app.cfg.audio.maikiwiAudio.staticOptimizer.lock = false; CiderAudio.hierarchical_optimizer();
CiderAudio.hierarchical_loading()
} }
else { else {
app.cfg.audio.maikiwiAudio.staticOptimizer.lock = false; app.cfg.audio.maikiwiAudio.staticOptimizer.lock = false;