我想使用apple的加速来有效削减音频信号。如果信号大于1或小于-1,我想使它等于1或-1。 vDSP_vmaxmg
看起来几乎就是我正在寻找的东西,但并不完全。文档说这样做:
输出矢量C的每个元素是来自输入矢量A和B的相应值的大小。
所以看起来vDSP_vmaxmg
的输出总是输入的绝对值,总是正的。如果我想保留信号输出的绝对值,但是限制幅度,加速框架能帮助我吗?
答案 0 :(得分:4)
您想要vDSP_vclip( )
:
#include <Accelerate/Accelerate.h>
...
float min = -1.0f;
float max = 1.0f;
vDSP_vclip(inputBuffer, inputStride, &min, &max,
outputBuffer, outputStride, length);