给定DB FS时如何计算DB SPL

时间:2019-05-16 03:34:50

标签: javascript html web-audio web-audio-api

我正在使用网络音频api创建音量推子,该音量推子的增益为+ 12db。到目前为止,我已经计算出峰值仪表的dbFS值。

在给定dbSPL的情况下,如何得出dbFS值?据我了解,daw中的音量推子使用dbSPL,而峰值表使用dbFS。必须以某种方式进行转换。如何实现转换?

我到目前为止有什么:

//create random amplitude values ranging 0 to 1
let amplitudes = Array.from({ length: 16 }, (_,i) => Math.random() * 1);

//calculate average amplitude
let average = amplitudes.reduce((a, b) => a + b) / 16;

// derive dbFS of given average amplitude value
let dbFS = 20 * Math.log10(average)

//update input element value
peakMeter.value = dbFS;

现在我想对音量推子做同样的事情

let dbSPL = //?????

fader.value = spl

//Translate dbSPL back to dbFS then update gain value
audioNode.gain.value = // ???

任何反馈都是有帮助的。

0 个答案:

没有答案