AudioUnitSampleType类型的示例中的值范围是多少?

时间:2012-08-22 14:25:05

标签: iphone ios core-audio sample audiounit

AudioUnitSampleType是SInt32。当我将其记录到控制台时,我的读数大致介于-22000和22000之间。

有人可以解释这些值代表什么吗?他们如何描述波形?我想因为它们是正的和负的,轴是波形的中心。

如何将值转换为分贝,使0 dB最大?

1 个答案:

答案 0 :(得分:1)

虽然样本类型是32位int,但是您收到的值通常适合16位int(即32767 ..- 32767)。 32767(或浮点1.0)对应0dB。

将样本转换为浮点值后,以分贝为单位的功率如下所示:

double sampleValue = (double)intSampleValue / 32767.0;
double db = 20.0 * log10(value);

我已经将上述计算完成为双精度以避免溢出。