jumbotron audio lab

This commit is contained in:
Maikiwi 2022-03-20 18:16:17 -07:00
parent 37bad16d7f
commit 1663d8ff9c
4 changed files with 121 additions and 106 deletions

View file

@ -1,103 +1,83 @@
<script type="text/x-template" id="audiolabs-page">
<div class="content-inner settings-page">
<div class="md-option-container">
<div class="md-option-header">
<span>{{$root.getLz('settings.option.audio.audioLab')}}</span>
</div>
<div class="settings-option-body">
<div class="md-option-line" v-show="!app.cfg.advanced.AudioContext">
<div class="md-option-segment">
{{$root.getLz('settings.warn.audioLab.withoutAF')}}
<div>
<b-jumbotron :header="$root.getLz('settings.warn.audioLab.withoutAF')" v-show="app.cfg.advanced.AudioContext === false">
<div class="md-option-segment md-option-segment_auto">
<b-row>
<button class="md-btn" style="margin-top: 5px; align-self: center;" onclick="app.appRoute('settings')">
{{$root.getLz('term.settings')}}
</button>
</b-row>
</div>
<button class="md-btn" style="margin-top: 5px;" onclick="app.appRoute('settings')">
{{$root.getLz('term.settings')}}
</button>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.audio.maikiwiAudio.ciderPPE" v-on:change="CiderAudio.hierarchical_loading();" switch/>
</div>
</b-jumbotron>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext && app.cfg.audio.maikiwiAudio.ciderPPE === true">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.maikiwiAudio.ciderPPE_value"
v-on:change="CiderAudio.hierarchical_loading()">
<option value="NATURAL">Natural</option>
<option value="STANDARD">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard')}}</option>
<option value="AGGRESSIVE">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive')}}</option>
</select>
</div>
<div>
<b-jumbotron :header="$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE')"
:lead="$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPE.description')">
<p>{{$root.getLz('term.creditDesignedBy').replace("${authorUsername}", "Maikiwi")}}</p>
<div class="md-option-segment md-option-segment_auto">
<b-row>
<input type="checkbox" style="align-self: center;" v-model="app.cfg.audio.maikiwiAudio.ciderPPE" v-on:change="CiderAudio.hierarchical_loading();" switch/>
<div class="md-option-segment md-option-segment_auto" v-show="app.cfg.audio.maikiwiAudio.ciderPPE === true">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.maikiwiAudio.ciderPPE_value"
v-on:change="CiderAudio.hierarchical_loading()">
<option value="NATURAL">Natural</option>
<option value="STANDARD">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard')}}</option>
<option value="AGGRESSIVE">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive')}}</option>
</select>
</div>
</b-row>
</div>
</b-jumbotron>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmth')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmth.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.audio.maikiwiAudio.analogWarmth" v-on:change="CiderAudio.hierarchical_loading();" switch/>
</div>
<div>
<b-jumbotron :header="$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmth')"
:lead="$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmth.description')">
<p>{{$root.getLz('term.creditDesignedBy').replace("${authorUsername}", "Maikiwi")}}</p>
<div class="md-option-segment md-option-segment_auto">
<b-row>
<input type="checkbox" style="align-self: center;" v-model="app.cfg.audio.maikiwiAudio.analogWarmth" v-on:change="CiderAudio.hierarchical_loading();" switch/>
<div class="md-option-segment md-option-segment_auto" v-show="app.cfg.audio.maikiwiAudio.analogWarmth === true">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.maikiwiAudio.analogWarmth_value"
v-on:change="ChangeanalogWarmth()">
<option value="SMOOTH">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth')}}</option>
<option value="WARM">{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm')}}</option>
</select>
</div>
</b-row>
</div>
</b-jumbotron>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext === true && app.cfg.audio.maikiwiAudio.analogWarmth === true">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<button class="md-btn" :disabled="app.cfg.audio.maikiwiAudio.analogWarmth_value === 1.25" v-model="app.cfg.audio.maikiwiAudio.analogWarmth_value" v-on:click="ChangeanalogWarmth(1.25)">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth')}}
</button>
<button class="md-btn" :disabled="app.cfg.audio.maikiwiAudio.analogWarmth_value === 1.75" v-model="app.cfg.audio.maikiwiAudio.analogWarmth_value" v-on:click="ChangeanalogWarmth(1.75)">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm')}}
</button>
</div>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext === true">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioSpatialization')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.audio.spatial" :disabled="app.cfg.audio.maikiwiAudio.spatial === true" v-on:change="toggleSpatial" switch/>
</div>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext === true">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.description')}}</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="toggleMaikiwiSpatial" switch/>
</div>
</div>
<div class="md-option-line" v-show="app.cfg.audio.maikiwiAudio.spatial === true && app.cfg.audio.spatial === true">
<div class="md-option-segment">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile')}}
<br>
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.maikiwiAudio.spatialProfile"
v-on:change="toggleMaikiwiSpatial">
<option value="420signature-B">Signature (Focused)</option>
<option value="420signature">Signature (Classic)</option>
<option value="audiophile">Expansive</option>
<option value="standard">Minimal</option>
</select>
<div>
<b-jumbotron :header="$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioSpatialization')"
:lead="$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description')">
<div class="md-option-segment md-option-segment_auto">
<b-row>
<input type="checkbox" style="align-self: center;" v-model="app.cfg.audio.spatial" :disabled="app.cfg.audio.maikiwiAudio.spatial === true" v-on:change="toggleSpatial" switch/>
</b-row>
</div>
</b-jumbotron>
</div>
<div>
<b-jumbotron :header="$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization')"
:lead="$root.getLz('settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.description')">
<p>{{$root.getLz('term.creditDesignedBy').replace("${authorUsername}", "Maikiwi")}}</p>
<div class="md-option-segment md-option-segment_auto">
<b-row>
<input type="checkbox" style="align-self: center;" v-model="app.cfg.audio.maikiwiAudio.spatial" :disabled="app.cfg.audio.spatial === false" v-on:change="toggleMaikiwiSpatial" switch/>
<div class="md-option-segment md-option-segment_auto" v-show="app.cfg.audio.maikiwiAudio.spatial === true && app.cfg.audio.spatial === true">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.maikiwiAudio.spatialProfile"
v-on:change="toggleMaikiwiSpatial">
<option value="420signature-B">Signature (Focused)</option>
<option value="420signature">Signature (Classic)</option>
<option value="audiophile">Expansive</option>
<option value="standard">Minimal</option>
</select>
</div>
</b-row>
</div>
</b-jumbotron>
</div>
<div style="opacity: 0.5; pointer-events: none">
<div class="md-option-header">
@ -192,12 +172,22 @@
CiderAudio.hierarchical_loading();
}
},
ChangeanalogWarmth: function (multiplier) {
app.cfg.audio.maikiwiAudio.analogWarmth_value = multiplier
ChangeanalogWarmth: function () {
let WARMTH_GAIN = [-4.81, 0.74, 0.55, -0.84, -1.52, 0.84, 0.66, -0.29, 0.29, 0.94, 1.67, 1.62, -0.53, -0.81, -4.98, 1.43, 0.86, 1.13, -1.06, -0.95, -1.13, 1.78, -3.86];
for (let i = 0; i < 23; i++) {
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * multiplier;
}
switch (app.cfg.audio.maikiwiAudio.analogWarmth_value) {
case "SMOOTH":
for (let i = 0; i < 23; i++) {
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.25;
}
break;
case "WARM":
for (let i = 0; i < 23; i++) {
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.75;
}
break;
}
},
}})
</script>