C# 如何在不同的基本dB级别下增加相同数量的卷输出

C# 如何在不同的基本dB级别下增加相同数量的卷输出,c#,volume,decibel,C#,Volume,Decibel,假设我有一个10分贝的基数,然后我把这个值增加到16分贝,有6分贝的差异,所以我的音量变了,但是现在我想把相同的音量增加到不同的基数,比如说,我现在有50分贝,我想增加我以前增加的音量,当然,我最终得到的不是56dB,我知道这是一个对数方程。 我的问题是,是否有一个公式可以计算出,根据之前的体积变化量,我必须在任何时候增加多少体积 注: 1) 我的音量控制从0变为1 2) 我不只是增加音量,而忘记了其他部分,因为我需要在播放时动态地改变声音的音量听起来像是在寻找“百分比变化” ((y2-y1)/

假设我有一个10分贝的基数,然后我把这个值增加到16分贝,有6分贝的差异,所以我的音量变了,但是现在我想把相同的音量增加到不同的基数,比如说,我现在有50分贝,我想增加我以前增加的音量,当然,我最终得到的不是56dB,我知道这是一个对数方程。 我的问题是,是否有一个公式可以计算出,根据之前的体积变化量,我必须在任何时候增加多少体积

注: 1) 我的音量控制从0变为1
2) 我不只是增加音量,而忘记了其他部分,因为我需要在播放时动态地改变声音的音量

听起来像是在寻找“百分比变化”

((y2-y1)/y1)=百分比变化

((16-10)/10)=0.6

A开始:10dB

A终点:16分贝

增量:6dB

A百分比变化=0.6

B开始:50dB

B结束:((A结束-A开始)/A开始)*B开始)+B开始

((16-10)/10)*50)+50=80


在你的例子中,50分贝应该增加到80分贝。

你也可以这样计算:B Finish=((B Start/A Start)*(A Finish-A Start))+B Start你是对的!它解决了我的问题,我不得不忘记对数方程,因为dBs已经准备好使用它了。非常感谢。