我需要建立一个声级条。随着声音的上升,声音的水平上升。
它有点像一个可视化工具,但就像一个酒吧。像这样 :

https://itunes.apple.com/tr/app/disco-lightning/id893088657?mt=8

您可以在上面的链接中看到级别栏。

我希望我可以问正确的问题。谢谢

最佳答案

显示声音强度的最有效方法是计算RMS。
获取一部分样本(例如4096个样本)并计算它们的RMS。 RMS计算为RMS = sqrt(1 / N *(X1 ^ 2 + X2 ^ 2 + X3 ^ 3 ...... Xn ^ 2)),其中N是样本数,X是样本值。计算RMS之后,您可以将值归一化并绘制一个矩形。
不要尝试计算平均值而不是RMS。由于样本值为负,因此平均值将始终接近零。如果计算时间有问题,您可以求取样本绝对值的平均值,但是该值与RMS(对于正弦波)相差10%,因此您可以将其乘以1.11,以获得接近RMS的值。最后,即使您不乘以1.11,也没人会注意到相差10%...

09-07 11:29