refactored specialty settings and switch for two spatialization
This commit is contained in:
parent
c6fe53999f
commit
51df57d555
6 changed files with 172 additions and 111 deletions
|
@ -27,17 +27,26 @@ export class Store {
|
||||||
},
|
},
|
||||||
"audio": {
|
"audio": {
|
||||||
"volume": 1,
|
"volume": 1,
|
||||||
"volumeStep": 0.02,
|
"volumeStep": 0.1,
|
||||||
"maxVolume": 1,
|
"maxVolume": 1,
|
||||||
"lastVolume": 1,
|
"lastVolume": 1,
|
||||||
"muted": false,
|
"muted": false,
|
||||||
"quality": "HIGH",
|
"quality": "HIGH",
|
||||||
"seamless_audio": true,
|
"seamless_audio": true,
|
||||||
"normalization": false,
|
"normalization": false,
|
||||||
"ciderPPE": false,
|
"maikiwiAudio": {
|
||||||
"ciderPPE_value": 0.5,
|
"ciderPPE": false,
|
||||||
"analogWarmth": false,
|
"ciderPPE_value": 0.5,
|
||||||
"analogWarmth_value": 1.25,
|
"analogWarmth": false,
|
||||||
|
"analogWarmth_value": 1.25,
|
||||||
|
"spatial": false,
|
||||||
|
"vibrantBass": { // Hard coded into the app. Don't include any of this config into exporting presets in store.ts
|
||||||
|
'multiplier': 0,
|
||||||
|
'frequencies': [17.182, 42.169, 53.763, 112.69, 119.65, 264.59, 336.57, 400.65, 505.48, 612.7, 838.7, 1155.3, 1175.6, 3406.8, 5158.6, 5968.1, 6999.9, 7468.6, 8862.9, 9666, 10109],
|
||||||
|
'Q': [2.5, 0.388, 5, 5, 2.5, 7.071, 14.14, 10, 7.071, 14.14, 8.409, 0.372, 7.071, 10, 16.82, 7.071, 28.28, 20, 8.409, 40, 40],
|
||||||
|
'gain': [-0.34, 2.49, 0.23, -0.49, 0.23, -0.12, 0.32, -0.29, 0.33, 0.19, -0.18, -1.27, -0.11, 0.25, -0.18, -0.53, 0.34, 1.32, 1.78, 0.41, -0.28]
|
||||||
|
}
|
||||||
|
},
|
||||||
"spatial": false,
|
"spatial": false,
|
||||||
"spatial_properties": {
|
"spatial_properties": {
|
||||||
"presets": [],
|
"presets": [],
|
||||||
|
@ -68,12 +77,6 @@ export class Store {
|
||||||
'presets': [],
|
'presets': [],
|
||||||
'userGenerated': false
|
'userGenerated': false
|
||||||
},
|
},
|
||||||
"vibrantBass": { // Hard coded into the app. Don't include any of this config into exporting presets in store.ts
|
|
||||||
'multiplier': 0,
|
|
||||||
'frequencies': [17.182, 42.169, 53.763, 112.69, 119.65, 264.59, 336.57, 400.65, 505.48, 612.7, 838.7, 1155.3, 1175.6, 3406.8, 5158.6, 5968.1, 6999.9, 7468.6, 8862.9, 9666, 10109],
|
|
||||||
'Q': [2.5, 0.388, 5, 5, 2.5, 7.071, 14.14, 10, 7.071, 14.14, 8.409, 0.372, 7.071, 10, 16.82, 7.071, 28.28, 20, 8.409, 40, 40],
|
|
||||||
'gain': [-0.34, 2.49, 0.23, -0.49, 0.23, -0.12, 0.32, -0.29, 0.33, 0.19, -0.18, -1.27, -0.11, 0.25, -0.18, -0.53, 0.34, 1.32, 1.78, 0.41, -0.28]
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"visual": {
|
"visual": {
|
||||||
"theme": "",
|
"theme": "",
|
||||||
|
|
|
@ -81,27 +81,7 @@ var CiderAudio = {
|
||||||
},
|
},
|
||||||
|
|
||||||
spatialOn: function (){
|
spatialOn: function (){
|
||||||
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
|
|
||||||
/**
|
|
||||||
CiderAudio.audioNodes.spatialNode = new ResonanceAudio(CiderAudio.context);
|
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.context.destination);
|
|
||||||
let roomDimensions = {
|
|
||||||
width: 32,
|
|
||||||
height: 12,
|
|
||||||
depth: 32,
|
|
||||||
};
|
|
||||||
let roomMaterials = {
|
|
||||||
// Room wall materials
|
|
||||||
left: 'metal',
|
|
||||||
right: 'metal',
|
|
||||||
front: 'brick-bare',
|
|
||||||
back: 'brick-bare',
|
|
||||||
down: 'acoustic-ceiling-tiles',
|
|
||||||
up: 'acoustic-ceiling-tiles',
|
|
||||||
};
|
|
||||||
CiderAudio.audioNodes.spatialNode.setRoomProperties(roomDimensions, roomMaterials);*/
|
|
||||||
|
|
||||||
CiderAudio.audioNodes.spatialNode = CiderAudio.context.createConvolver();
|
CiderAudio.audioNodes.spatialNode = CiderAudio.context.createConvolver();
|
||||||
|
|
||||||
fetch('./audio/CiderSpatial_Conv.wav').then(async (impulseData) => {
|
fetch('./audio/CiderSpatial_Conv.wav').then(async (impulseData) => {
|
||||||
|
@ -111,6 +91,29 @@ var CiderAudio = {
|
||||||
});
|
});
|
||||||
CiderAudio.audioNodes.spatialNode.normalize = true;
|
CiderAudio.audioNodes.spatialNode.normalize = true;
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.context.destination);
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.context.destination);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
try{
|
||||||
|
CiderAudio.audioNodes.gainNode.disconnect(CiderAudio.context.destination);} catch(e){}
|
||||||
|
CiderAudio.audioNodes.spatialNode = new ResonanceAudio(CiderAudio.context);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.context.destination);
|
||||||
|
let roomDimensions = {
|
||||||
|
width: 32,
|
||||||
|
height: 12,
|
||||||
|
depth: 32,
|
||||||
|
};
|
||||||
|
let roomMaterials = {
|
||||||
|
// Room wall materials
|
||||||
|
left: 'metal',
|
||||||
|
right: 'metal',
|
||||||
|
front: 'brick-bare',
|
||||||
|
back: 'brick-bare',
|
||||||
|
down: 'acoustic-ceiling-tiles',
|
||||||
|
up: 'acoustic-ceiling-tiles',
|
||||||
|
};
|
||||||
|
CiderAudio.audioNodes.spatialNode.setRoomProperties(roomDimensions, roomMaterials);
|
||||||
|
CiderAudio.audioNodes.spatialInput = CiderAudio.audioNodes.spatialNode.createSource();
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);}
|
||||||
},
|
},
|
||||||
spatialOff: function (){
|
spatialOff: function (){
|
||||||
CiderAudio.hierarchical_loading();
|
CiderAudio.hierarchical_loading();
|
||||||
|
@ -143,7 +146,7 @@ var CiderAudio = {
|
||||||
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i];
|
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i];
|
||||||
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
||||||
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * app.cfg.audio.analogWarmth_value;
|
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * app.cfg.audio.maikiwiAudio.analogWarmth_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 1; i < WARMTH_FREQUENCIES.length; i ++) {
|
for (i = 1; i < WARMTH_FREQUENCIES.length; i ++) {
|
||||||
|
@ -180,7 +183,7 @@ var CiderAudio = {
|
||||||
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i];
|
CiderAudio.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i];
|
||||||
CiderAudio.audioNodes.llpw[i].Q.value = LLPW_Q[i];
|
CiderAudio.audioNodes.llpw[i].Q.value = LLPW_Q[i];
|
||||||
CiderAudio.audioNodes.llpw[i].gain.value = LLPW_GAIN[i] * app.cfg.audio.ciderPPE_value;
|
CiderAudio.audioNodes.llpw[i].gain.value = LLPW_GAIN[i] * app.cfg.audio.maikiwiAudio.ciderPPE_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 1; i < LLPW_FREQUENCIES.length; i ++) {
|
for (i = 1; i < LLPW_FREQUENCIES.length; i ++) {
|
||||||
|
@ -202,9 +205,9 @@ var CiderAudio = {
|
||||||
},
|
},
|
||||||
vibrantbass_h2_1: function (status){
|
vibrantbass_h2_1: function (status){
|
||||||
if (status === true) {
|
if (status === true) {
|
||||||
let VIBRANTBASSBANDS = app.cfg.audio.vibrantBass.frequencies;
|
let VIBRANTBASSBANDS = app.cfg.audio.maikiwiAudio.vibrantBass.frequencies;
|
||||||
let VIBRANTBASSGAIN = app.cfg.audio.vibrantBass.gain;
|
let VIBRANTBASSGAIN = app.cfg.audio.maikiwiAudio.vibrantBass.gain;
|
||||||
let VIBRANTBASSQ = app.cfg.audio.vibrantBass.Q;
|
let VIBRANTBASSQ = app.cfg.audio.maikiwiAudio.vibrantBass.Q;
|
||||||
CiderAudio.audioNodes.vibrantbassNode = []
|
CiderAudio.audioNodes.vibrantbassNode = []
|
||||||
|
|
||||||
for (i = 0; i < VIBRANTBASSBANDS.length; i++) {
|
for (i = 0; i < VIBRANTBASSBANDS.length; i++) {
|
||||||
|
@ -212,7 +215,7 @@ var CiderAudio = {
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.vibrantbassNode[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].frequency.value = VIBRANTBASSBANDS[i];
|
CiderAudio.audioNodes.vibrantbassNode[i].frequency.value = VIBRANTBASSBANDS[i];
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].Q.value = VIBRANTBASSQ[i];
|
CiderAudio.audioNodes.vibrantbassNode[i].Q.value = VIBRANTBASSQ[i];
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = VIBRANTBASSGAIN[i] * app.cfg.audio.vibrantBass.multiplier;
|
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = VIBRANTBASSGAIN[i] * app.cfg.audio.maikiwiAudio.vibrantBass.multiplier;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 1; i < VIBRANTBASSBANDS.length; i ++) {
|
for (i = 1; i < VIBRANTBASSBANDS.length; i ++) {
|
||||||
|
@ -224,6 +227,7 @@ var CiderAudio = {
|
||||||
|
|
||||||
},
|
},
|
||||||
hierarchical_unloading: function (){
|
hierarchical_unloading: function (){
|
||||||
|
try {CiderAudio.audioNodes.spatialNode.output.disconnect();} catch(e){}
|
||||||
try {CiderAudio.audioNodes.spatialNode.disconnect();} catch(e){}
|
try {CiderAudio.audioNodes.spatialNode.disconnect();} catch(e){}
|
||||||
try {CiderAudio.audioNodes.gainNode.disconnect();} catch(e){}
|
try {CiderAudio.audioNodes.gainNode.disconnect();} catch(e){}
|
||||||
try {for (var i of CiderAudio.audioNodes.analogWarmth){i.disconnect();} CiderAudio.audioNodes.analogWarmth = []} catch(e){}
|
try {for (var i of CiderAudio.audioNodes.analogWarmth){i.disconnect();} CiderAudio.audioNodes.analogWarmth = []} catch(e){}
|
||||||
|
@ -237,35 +241,51 @@ var CiderAudio = {
|
||||||
CiderAudio.hierarchical_unloading();
|
CiderAudio.hierarchical_unloading();
|
||||||
|
|
||||||
// Vibrant Bass, CAP, Analog Warmth, Spatial
|
// Vibrant Bass, CAP, Analog Warmth, Spatial
|
||||||
if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.llpw_h2_2(true, 2);
|
CiderAudio.llpw_h2_2(true, 2);
|
||||||
CiderAudio.analogWarmth_h2_3(true, 3);
|
CiderAudio.analogWarmth_h2_3(true, 3);
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
console.log('[Cider][Audio] Vibrant Bass, CAP, Analog Warmth, Spatial')
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
||||||
|
console.log('[Cider][Audio] Vibrant Bass, CAP, Analog Warmth, Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
||||||
|
console.log('[Cider][Audio] Vibrant Bass, CAP, Analog Warmth, Spatial')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Vibrant Bass, CAP, Spatial
|
// Vibrant Bass, CAP, Spatial
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.llpw_h2_2(true, 2);
|
CiderAudio.llpw_h2_2(true, 2);
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.llpw[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
console.log('[Cider][Audio] Vibrant Bass, CAP, Spatial')
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.llpw[0]);
|
||||||
|
console.log('[Cider][Audio] Vibrant Bass, CAP, Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.llpw[0]);
|
||||||
|
console.log('[Cider][Audio] Vibrant Bass, CAP, Spatial')
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
// Vibrant Bass, CAP, Analog Warmth
|
// Vibrant Bass, CAP, Analog Warmth
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.llpw_h2_2(true, 2);
|
CiderAudio.llpw_h2_2(true, 2);
|
||||||
|
@ -274,33 +294,46 @@ var CiderAudio = {
|
||||||
console.log('[Cider][Audio] Vibrant Bass, CAP, Analog Warmth')
|
console.log('[Cider][Audio] Vibrant Bass, CAP, Analog Warmth')
|
||||||
}
|
}
|
||||||
// CAP, Spatial
|
// CAP, Spatial
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
|
|
||||||
CiderAudio.llpw_h2_2(true, 1);
|
CiderAudio.llpw_h2_2(true, 1);
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.llpw[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
console.log('[Cider][Audio] CAP, Spatial')
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.llpw[0]);
|
||||||
|
console.log('[Cider][Audio] Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.llpw[0]);
|
||||||
|
console.log('[Cider][Audio] CAP, Spatial')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Analog Warmth, Spatial
|
// Analog Warmth, Spatial
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
|
|
||||||
CCiderAudio.analogWarmth_h2_3(true, 1);
|
CiderAudio.analogWarmth_h2_3(true, 1);
|
||||||
//CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
||||||
console.log('[Cider][Audio] Analog Warmth, Spatial')
|
console.log('[Cider][Audio] Analog Warmth, Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
||||||
|
console.log('[Cider][Audio] Analog Warmth, Spatial')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// CAP, Analog Warmth
|
// CAP, Analog Warmth
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
|
|
||||||
CiderAudio.llpw_h2_2(true, 1);
|
CiderAudio.llpw_h2_2(true, 1);
|
||||||
CiderAudio.analogWarmth_h2_3(true, 3);
|
CiderAudio.analogWarmth_h2_3(true, 3);
|
||||||
|
@ -308,10 +341,10 @@ var CiderAudio = {
|
||||||
console.log('[Cider][Audio] CAP and Analog Warmth')
|
console.log('[Cider][Audio] CAP and Analog Warmth')
|
||||||
}
|
}
|
||||||
// Vibrant Bass, Analog Warmth
|
// Vibrant Bass, Analog Warmth
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.analogWarmth_h2_3(true, 2);
|
CiderAudio.analogWarmth_h2_3(true, 2);
|
||||||
|
@ -320,10 +353,10 @@ var CiderAudio = {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Vibrant Bass, CAP
|
// Vibrant Bass, CAP
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.llpw_h2_2(true, 2);
|
CiderAudio.llpw_h2_2(true, 2);
|
||||||
|
@ -331,53 +364,66 @@ var CiderAudio = {
|
||||||
console.log('[Cider][Audio] Vibrant Bass, CAP')
|
console.log('[Cider][Audio] Vibrant Bass, CAP')
|
||||||
}
|
}
|
||||||
// Vibrant Bass, Spatial
|
// Vibrant Bass, Spatial
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
|
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
//CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.vibrantbassNode[0]);
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.vibrantbassNode[0]);
|
||||||
console.log('[Cider][Audio] Vibrant Bass, Spatial')
|
console.log('[Cider][Audio] Vibrant Bass, Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.vibrantbassNode[0]);
|
||||||
|
console.log('[Cider][Audio] Vibrant Bass, Spatial')
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
// Vibrant Bass
|
// Vibrant Bass
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier !== 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier !== 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
CiderAudio.vibrantbass_h2_1(true)
|
CiderAudio.vibrantbass_h2_1(true)
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.vibrantbassNode[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.vibrantbassNode[0]);
|
||||||
console.log('[Cider][Audio] Vibrant Bass')
|
console.log('[Cider][Audio] Vibrant Bass')
|
||||||
}
|
}
|
||||||
// CAP
|
// CAP
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === true &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === true &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === false) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === false) {
|
||||||
CiderAudio.llpw_h2_2(true, 1);
|
CiderAudio.llpw_h2_2(true, 1);
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.llpw[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.llpw[0]);
|
||||||
console.log('[Cider][Audio] CAP')
|
console.log('[Cider][Audio] CAP')
|
||||||
}
|
}
|
||||||
// Analog Warmth
|
// Analog Warmth
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === false &&
|
app.cfg.audio.maikiwiAudio.spatial === false &&
|
||||||
app.cfg.audio.analogWarmth === true) {
|
app.cfg.audio.maikiwiAudio.analogWarmth === true) {
|
||||||
CiderAudio.analogWarmth_h2_3(true, 1);
|
CiderAudio.analogWarmth_h2_3(true, 1);
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.analogWarmth[0]);
|
||||||
console.log('[Cider][Audio] Analog Warmth')
|
console.log('[Cider][Audio] Analog Warmth')
|
||||||
}
|
}
|
||||||
// Spatial
|
// Spatial
|
||||||
else if (app.cfg.audio.vibrantBass.multiplier === 0 &&
|
else if (app.cfg.audio.maikiwiAudio.vibrantBass.multiplier === 0 &&
|
||||||
app.cfg.advanced.ciderPPE === false &&
|
app.cfg.audio.maikiwiAudio.ciderPPE === false &&
|
||||||
app.cfg.audio.spatial === true &&
|
app.cfg.audio.spatial === true &&
|
||||||
app.cfg.audio.analogWarmth === false){
|
app.cfg.audio.maikiwiAudio.analogWarmth === false){
|
||||||
//CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
if (app.cfg.audio.maikiwiAudio.spatial === true) {
|
||||||
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialNode);
|
||||||
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
CiderAudio.audioNodes.spatialNode.connect(CiderAudio.audioNodes.audioBands[0]);
|
||||||
console.log('[Cider][Audio] Spatial')
|
console.log('[Cider][Audio] Maikiwi Spatial')
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
CiderAudio.audioNodes.gainNode.connect(CiderAudio.audioNodes.spatialInput.input);
|
||||||
|
CiderAudio.audioNodes.spatialNode.output.connect(CiderAudio.audioNodes.audioBands[0]);
|
||||||
|
console.log('[Cider][Audio] Spatial')
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
// Nothing
|
// Nothing
|
||||||
|
|
|
@ -57,7 +57,7 @@
|
||||||
v-if="mk.nowPlayingItem['attributes']['contentRating'] == 'explicit'"
|
v-if="mk.nowPlayingItem['attributes']['contentRating'] == 'explicit'"
|
||||||
style="display: inline-block"></div>
|
style="display: inline-block"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="audio-type ppe-icon" v-if="cfg.advanced.ciderPPE === true"></div>
|
<div class="audio-type ppe-icon" v-if="cfg.audio.maikiwiAudio.ciderPPE === true"></div>
|
||||||
<div class="song-artist-album">
|
<div class="song-artist-album">
|
||||||
<div class="song-artist-album-content"
|
<div class="song-artist-album-content"
|
||||||
:class="[isElementOverflowing('#app-main > .app-chrome .app-chrome-item > .app-playback-controls > div >.song-artist-album > .song-artist-album-content') ? 'marquee' : '']"
|
:class="[isElementOverflowing('#app-main > .app-chrome .app-chrome-item > .app-playback-controls > div >.song-artist-album > .song-artist-album-content') ? 'marquee' : '']"
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
app.modals.audioSettings = false
|
app.modals.audioSettings = false
|
||||||
},
|
},
|
||||||
openSpatialAudio() {
|
openSpatialAudio() {
|
||||||
if(app.cfg.audio.spatial) {
|
if(app.cfg.audio.spatial === true && app.cfg.audio.maikiwiAudio.spatial === false) {
|
||||||
app.modals.spatialProperties = true
|
app.modals.spatialProperties = true
|
||||||
app.modals.audioSettings = false
|
app.modals.audioSettings = false
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -303,11 +303,11 @@
|
||||||
app.resetState()
|
app.resetState()
|
||||||
},
|
},
|
||||||
changeVibrantBass() {
|
changeVibrantBass() {
|
||||||
app.cfg.audio.vibrantBass.multiplier = app.cfg.audio.equalizer.vibrantBass / 10
|
app.cfg.audio.maikiwiAudio.vibrantBass.multiplier = app.cfg.audio.equalizer.vibrantBass / 10
|
||||||
CiderAudio.hierarchical_loading();
|
CiderAudio.hierarchical_loading();
|
||||||
if (app.cfg.audio.equalizer.vibrantBass != 0) {
|
if (app.cfg.audio.equalizer.vibrantBass != 0) {
|
||||||
for (var i = 0; i < 21; i++) {
|
for (var i = 0; i < 21; i++) {
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = app.cfg.audio.vibrantBass.gain[i] * (app.cfg.audio.equalizer.vibrantBass / 10);
|
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = app.cfg.audio.maikiwiAudio.vibrantBass.gain[i] * (app.cfg.audio.equalizer.vibrantBass / 10);
|
||||||
}}
|
}}
|
||||||
},
|
},
|
||||||
changeMix() {
|
changeMix() {
|
||||||
|
|
|
@ -78,10 +78,10 @@
|
||||||
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE.description')}}</small>
|
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE.description')}}</small>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-segment md-option-segment_auto">
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
<input type="checkbox" v-model="app.cfg.advanced.ciderPPE" v-on:change="CiderAudio.hierarchical_loading();" switch/>
|
<input type="checkbox" v-model="app.cfg.audio.maikiwiAudio.ciderPPE" v-on:change="CiderAudio.hierarchical_loading();" switch/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext && app.cfg.advanced.ciderPPE === true">
|
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext && app.cfg.audio.maikiwiAudio.ciderPPE === true">
|
||||||
<div class="md-option-segment">
|
<div class="md-option-segment">
|
||||||
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength')}}
|
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength')}}
|
||||||
<br>
|
<br>
|
||||||
|
@ -103,10 +103,10 @@
|
||||||
<small>Simulates the analog warmth modelled after the Korg Nutube 6P1</small>
|
<small>Simulates the analog warmth modelled after the Korg Nutube 6P1</small>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-segment md-option-segment_auto">
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
<input type="checkbox" v-model="app.cfg.audio.analogWarmth" v-on:change="CiderAudio.hierarchical_loading();" switch/>
|
<input type="checkbox" v-model="app.cfg.audio.maikiwiAudio.analogWarmth" v-on:change="CiderAudio.hierarchical_loading();" switch/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext && app.cfg.audio.analogWarmth === true">
|
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext && app.cfg.audio.maikiwiAudio.analogWarmth === true">
|
||||||
<div class="md-option-segment">
|
<div class="md-option-segment">
|
||||||
Analog Warmth Intensity
|
Analog Warmth Intensity
|
||||||
<br>
|
<br>
|
||||||
|
@ -152,6 +152,16 @@
|
||||||
<input type="checkbox" v-model="app.cfg.audio.spatial" v-on:change="toggleSpatial" switch/>
|
<input type="checkbox" v-model="app.cfg.audio.spatial" v-on:change="toggleSpatial" switch/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
|
||||||
|
<div class="md-option-segment">
|
||||||
|
Cider Tuned Spatialization
|
||||||
|
<br>
|
||||||
|
<small>Pre-tuned Spatializing Effect by the Cider Dev Team, disables the customizable settings of Audio Spatialization.</small>
|
||||||
|
</div>
|
||||||
|
<div class="md-option-segment md-option-segment_auto">
|
||||||
|
<input type="checkbox" v-model="app.cfg.audio.maikiwiAudio.spatial" :disabled="app.cfg.audio.spatial === false" v-on:change="toggleSpatial" switch/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-option-header">
|
<div class="md-option-header">
|
||||||
<span>{{$root.getLz('settings.header.visual')}}</span>
|
<span>{{$root.getLz('settings.header.visual')}}</span>
|
||||||
|
@ -874,7 +884,7 @@
|
||||||
CiderAudio.hierarchical_loading();
|
CiderAudio.hierarchical_loading();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
app.cfg.advanced.ciderPPE = false;
|
app.cfg.audio.maikiwiAudio.ciderPPE = false;
|
||||||
CiderAudio.off();
|
CiderAudio.off();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -887,10 +897,12 @@
|
||||||
},
|
},
|
||||||
toggleSpatial: function () {
|
toggleSpatial: function () {
|
||||||
if (app.cfg.audio.spatial) {
|
if (app.cfg.audio.spatial) {
|
||||||
if (app.cfg.advanced.ciderPPE === true) {
|
if (app.cfg.audio.maikiwiAudio.ciderPPE === true && app.cfg.audio.maikiwiAudio.spatial === false) {
|
||||||
CiderAudio.spatialOff()
|
CiderAudio.spatialOff()
|
||||||
app.cfg.audio.spatial = false;
|
app.cfg.audio.spatial = false;
|
||||||
notyf.error(app.getLz('settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility'))
|
notyf.error(app.getLz('settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility'))
|
||||||
|
try {
|
||||||
|
CiderAudio.hierarchical_loading();} catch(e) {}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
CiderAudio.spatialOn()
|
CiderAudio.spatialOn()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue