diff --git a/src/main/base/store.ts b/src/main/base/store.ts index 6741395c..e78c98bb 100644 --- a/src/main/base/store.ts +++ b/src/main/base/store.ts @@ -123,6 +123,8 @@ export class Store { "quality": "HIGH", "seamless_audio": true, "normalization": false, + "dBSPL": false, + "dBSPLcalibration": 90, "maikiwiAudio": { "ciderPPE": false, "ciderPPE_value": "MAIKIWI", diff --git a/src/main/plugins/raop.ts b/src/main/plugins/raop.ts index a4d70aba..e99c3de7 100644 --- a/src/main/plugins/raop.ts +++ b/src/main/plugins/raop.ts @@ -181,7 +181,7 @@ export default class RAOP { this.portairplay = ipport; this.device = this.airtunes.add(ipv4, { port: ipport, - volume: 60, + volume: 50, password: sepassword, txt: txt }); diff --git a/src/renderer/main/vueapp.js b/src/renderer/main/vueapp.js index 0356313f..d7ab7365 100644 --- a/src/renderer/main/vueapp.js +++ b/src/renderer/main/vueapp.js @@ -284,6 +284,9 @@ const app = new Vue({ } } }, + formatVolumeTooltip() { + return this.cfg.audio.dBSPL ? (Number(this.cfg.audio.dBSPLcalibration) + (Math.log10(this.mk.volume) * 20)).toFixed(2) + ' dB SPL' : (Math.log10(this.mk.volume) * 20).toFixed(2) + ' dBFS' + }, mainMenuVisibility(val) { if (val) { (this.mk.isAuthorized) ? this.chrome.menuOpened = !this.chrome.menuOpened : false; diff --git a/src/renderer/views/app/chrome-bottom.ejs b/src/renderer/views/app/chrome-bottom.ejs index 4e88e841..e27a6e13 100644 --- a/src/renderer/views/app/chrome-bottom.ejs +++ b/src/renderer/views/app/chrome-bottom.ejs @@ -101,7 +101,7 @@ :class="{'active': this.cfg.audio.volume == 0}"> + v-b-tooltip.hover :title="formatVolumeTooltip()">