ios - 苹果加速框架——限制幅度而不损失绝对值

标签 ios accelerate-framework vdsp

我想使用苹果的加速功能来有效地剪辑音频信号。如果信号大于 1 或小于 -1,我想让它等于 1 或 -1。 vDSP_vmaxmg 看起来几乎就是我正在寻找的东西,但又不完全是。文档说它是这样做的:

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

所以看起来vDSP_vmaxmg的输出将始终是输入的绝对值,并且始终为正。如果我想保留信号输出的绝对值,但限制幅度,加速框架可以帮助我吗?

最佳答案

您想要vDSP_vclip( ):

#include <Accelerate/Accelerate.h>

...

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

关于ios - 苹果加速框架——限制幅度而不损失绝对值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12265039/

相关文章:

macos - Numpy EIG 在 Mac OS X 10.6 上比 MATLAB EIG 慢大约 4 倍。我究竟做错了什么?

iphone - 如何检查 vDSP 函数是否在 neon 上运行标量或 SIMD

ios - 如何使用 iOS Accelerate 框架正确填充 2D 数组以进行 FFT

arrays - 为什么数组声明的顺序对性能影响这么大?

numpy - 使用不同 BLAS 实现的 NumPy 的性能

ios - 间歇性 NSArray 索引异常

ios - 从 JSON 获取字典

javascript - 向知道电话号码的特定设备发送推送通知,parse.com

ios - 将文档文件保存在 plist 文件中

accelerate-framework - 使用 vDSP_biquad 作为单极滤波器