Ios 苹果加速框架——在不损失绝对值的情况下限制大小

Ios 苹果加速框架——在不损失绝对值的情况下限制大小,ios,accelerate-framework,vdsp,Ios,Accelerate Framework,Vdsp,我想使用苹果公司的accelerate对音频信号进行有效的剪辑。如果信号大于1或小于-1,我想使它等于1或-1vDSP_vmaxmg看起来几乎就是我要找的,但不完全是。文件上说它做到了这一点: 输出向量C的每个元素是来自输入向量A和B的相应值的大小中的较大者 因此,vDSP_vmaxmg的输出看起来总是输入的绝对值,总是正值。如果我想保留信号输出的绝对值,但限制幅度,加速框架能帮我吗?你想vDSP\u vclip(): #包括 ... 浮动最小值=-1.0f; 浮动最大值=1.0f; vDSP_

我想使用苹果公司的accelerate对音频信号进行有效的剪辑。如果信号大于1或小于-1,我想使它等于1或-1
vDSP_vmaxmg
看起来几乎就是我要找的,但不完全是。文件上说它做到了这一点:

输出向量C的每个元素是来自输入向量A和B的相应值的大小中的较大者

因此,
vDSP_vmaxmg
的输出看起来总是输入的绝对值,总是正值。如果我想保留信号输出的绝对值,但限制幅度,加速框架能帮我吗?

你想
vDSP\u vclip()

#包括
...
浮动最小值=-1.0f;
浮动最大值=1.0f;
vDSP_vclip(输入缓冲区、输入跨距、最小值和最大值、,
outputBuffer、outputStride、长度);
您需要
vDSP\u vclip()

#包括
...
浮动最小值=-1.0f;
浮动最大值=1.0f;
vDSP_vclip(输入缓冲区、输入跨距、最小值和最大值、,
outputBuffer、outputStride、长度);

Duh。就在我面前。谢谢嗯。就在我面前。谢谢
#include <Accelerate/Accelerate.h>

...

float min = -1.0f;
float max =  1.0f;
vDSP_vclip(inputBuffer, inputStride, &min, &max,
           outputBuffer, outputStride, length);