我正在构建某种音频推子效果。
我正在使用 vDSP_vdbcon 将音量缓冲区转换为分贝,在 db-space 中应用一些修改,并希望使用加速框架将分贝缓冲区转换为音量。
谢谢!
我正在构建某种音频推子效果。
我正在使用 vDSP_vdbcon 将音量缓冲区转换为分贝,在 db-space 中应用一些修改,并希望使用加速框架将分贝缓冲区转换为音量。
谢谢!
这是我为每个元素使用的分贝值介于 -40 和 0 之间的内容。它给出了非常好的结果。
float decibelsToMag(float decibels){
return pow (10, (0.05 * decibels));
}
我不知道 pow 函数的 Accelerate 矢量等效项。但这里有一个半矢量化的版本。
void decibelsToMags(float *decibels, float *mag, int count){
float mul = 0.05;
vDSP_vsmul(decibels, 1, &mul, mag, 1, count);
for (int i = 0; i < count; i++) {
mag[i] = pow(10,mag[i]);
}
}
如果您能找出循环的 vDSP 版本,请回复。