问题标签 [accelerate-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - 是否有用于 1D 矢量重采样的 vDSP 功能?
我希望能够使用矢量作为包络,将 fft 均衡应用于相当大的声音块,具有不同的大小。
为了能够将频域 bin 乘以包络,包络需要具有与 fft 数据相同的分辨率,这将随着声音块的大小而变化。
所以,我需要一个函数来重新采样我的包络向量。您知道 vDSP 是否为此目的提供功能吗?我来回浏览了参考资料,但一无所获。这并不意味着那里什么都没有 - 在搜索 vDSP 参考时很容易错过一些东西......
并不是我自己无法实现某些东西,但如果有一个 vDSP 功能,它可能会比我想出的任何东西都要快得多。这是相关的,因为该项目也针对 iOS 设备。
而且没有必要重新发明轮子:)
谢谢!!
objective-c - 在 iPhone 上设置 fft 的加速器框架
在我阅读后,我已经设置了一个设置加速器的功能:
带有 Accelerate 框架 vDSP 的 iPhone FFT
和苹果文档。
我这样做了:
问题 :
- 我的应用程序在这两条线之一上总是崩溃且没有错误(BAD ACCESS):
originalReal[i] = (float) (i + 1); // 或者
vDSP_ctoz((COMPLEX *) originalReal,2,&A,1,nOver2);
我想我没有为 log2n 设置一个好的值?(10 得到 1024 窗口?)
我如何获得垃圾箱的实际大小?我的实际fft?我在这里写的一样吗?
我在哪里输入我的数据缓冲区数组(在我的代码中的确切位置?而不是 originalReal?)
多谢。
ios - Objective-C 峰值检测加速框架
我在这里不是数学大师,所以我想问任何熟悉数字信号处理的人,检测实时峰值的最佳方法是什么。我每秒得到大约 30 帧/值,我尝试实现斜率算法来检测峰值,它工作正常,大约 80% 的情况,但它真的不够好:(。
从我搜索的内容来看,应该使用快速傅立叶变换,但我不知道如何开始使用它,也许我错过了在这种情况下应该如何使用 FFT 的一般想法。
在 iOS 中,我们有这个惊人的 Accelerate 框架,它应该可以帮助我做 FFT 的事情,但只要我不明白它对我来说几乎没有用处。
谁能通过将我指向正确的方向来以某种方式启发我:-)?
非常感谢,新年快乐!
ios - 计算正弦扫描频率响应的问题
我目前正在尝试计算 iphone 扬声器/麦克风往返的频率响应。我在扬声器上播放正弦扫描,通过麦克风录制并尝试从中获得频率响应。最终目标是能够将 FR 乘以任何给定的声音,使其听起来像 iphone 的扬声器/麦克风。
到目前为止我的代码:
到目前为止,这有效,当我将 FR 与初始文件扫描相乘时,它听起来像麦克风扫描。
我的问题: 这仅适用于生成 FR 的确切文件(扫描)。一旦我使用 FR 修改其他声音,例如音乐,只会出现噪音。
我像这样使用FR(在频域中,交错的,不复杂的,甚至相同的长度):
我在扬声器上播放的文件的正弦扫描:
我记录的正弦扫描(可见衰减的低频):
我的文件正弦扫描在频域中与在代码中生成的 FR 相乘:
我的目标: 在我的理解中,频率响应是关于每个频率的信息,它被系统衰减或放大了多少(在我的示例中,它无法再现低频)。为了获得这种信息,我生成了一个包含每个所需频率(正弦扫描)的声音,播放它并通过划分记录扫描/文件扫描(代码中的划分)来分析每个频率是如何被修改的。
通过将此频域中的 FR 乘以任何声音,应该修改频率幅度以模仿我系统上的播放,对吗?
谢谢!
更新: 最后,故障是缺少复杂的算术,正弦扫描和粉红噪声作为恢复脉冲响应的脉冲效果很好。
要获得工作代码,只需将记录的扫描 fft 数据除以初始扫描 fft 数据即可。
objective-c - Autocepstrum 加速框架
如何使用加速框架进行自倒谱(倒谱 + 自相关)分析?有没有示例代码或项目?
ios - 需要解释 vDSP_zcoher()
我目前正在处理原始音频数据并比较我遇到的两条信号vDSP_zcoher()我对此有几个问题:
- 为什么输出是一个复杂的数组而不是真实的。例如,我期望一个真正的数组,就像相关性的输出一样。更新:文档中似乎是错误的,D 是真实的。
- 参数 A、B 和 C 是否在累积使用vDSP_zaspec (A,B) 和vDSP_zcspec (C) 创建的自频谱和交叉频谱?
- 我是否正确,结果应该表明信号有多相似?
该功能的一般解释也很受欢迎!
提前致谢。
ios - 加速框架ios:最快的pythagoren计算
所以我有 2 个矩阵:每个都是 100x100。
我正在寻找计算第三个矩阵,这样:M3[i]=sqrt(M1[i]^2 + M2[i]^2)。
我显然可以做 ForLoops,但我确信有更快的东西。
我深入研究了加速框架并迷失在 Linpack 世界中
任何帮助让我走上正轨......
谢谢
ios5 - 什么取代了 iOS 5 已弃用的加速度计:didAccelerate?
嗯......我落后于时代并试图将一些旧代码移植到新应用程序中,并且加速器委托已被弃用。必须有替代品。请指出我的文档并让我开始。
objective-c - 加速框架倒谱峰值查找
我正在尝试使用加速框架找到倒谱分析的峰值。我总是在帧的结尾或开头得到峰值。我正在分析它实时从麦克风获取音频。我的代码有什么问题?我的代码如下:
}
ios - 使用 vDSP 复制阵列内容
我正在使用加速框架来优化我的 DSP 代码。有好几次我想将一个数组(或数组的一部分)的内容复制到另一个数组。
我似乎找不到合适的函数来执行此操作,因此我一直在做一些愚蠢的事情,即将数组乘以 1(或加 0)并以这种方式获取副本。
必须有更好的方法来做到这一点!?谢谢!