【问题标题】:iPhone4s, iPhone 5 max FFTs per second using vDSP使用 vDSP 的 iPhone4s、iPhone 5 每秒最大 FFT 数
【发布时间】:2012-11-12 08:34:47
【问题描述】:

我和我的团队正计划为 iOS 构建一个外部配件,用于采样 256KHZ 的超声波。这很多,我想知道 iOS vDSP 是否可以以 256,000 个样本/秒的速度进行从时域到频域的转换,或者我们需要为 FFT 提供基于硬件的解决方案。

来自 Apple 的示例项目(例如 aurioTouch)非常有用,但我找不到比专业音频采样频率更多的采样率。我需要帮助确定以下内容:

  1. vDSP FFT 能否处理 256,000 个样本/秒?如果没有,除了在硬件中进行转换之外,还有其他创造性的方法可以做到这一点吗?

我发现与此相关的最接近的讨论是

How many FFTs per second can I do on my smartphone? (for performing voice recognition)

【问题讨论】:

  • 您需要指定 os 的 FFT 大小。 FFT 为 O(n log n),因此 n 可以对整体吞吐量产生显着影响。此外,您应该指定是否计划重叠 FFT。
  • 感谢您的回复。目前,我们不确定 n 的最佳值是多少。 n 将是 256 帧。是的,计划是重叠 FFT。
  • 几千个 256 元素的 FFT 是相当微不足道的计算量。现代智能手机是真正的计算机,可以轻松处理。

标签: iphone ios fft vdsp


【解决方案1】:

256 kHz 数据速率比普通 44100 音频快不到 6 倍。并且使用 vDSP/Accelerate 框架的实时音频数据的浮点 FFT 仅在最近的 iOS 设备上使用 1 个 CPU 的 1% 或更少。

【讨论】:

    【解决方案2】:

    FFT 计算时间将是可用时间的一小部分。

    资料来源:我编写了 vDSP FFT。

    【讨论】:

      【解决方案3】:

      为什么不看看设备如何处理上采样信号,从 aurioTouch 开始。

      如果您需要更快,您应该测量基于整数的 FFT 实现的速度。

      【讨论】:

      • 我们从未考虑过基于整数的 FFT。感谢您的建议,将考虑它。
      • 由于 NEON 指令,最近的 iOS 设备可以像缩放整数一样快或更快地执行浮点 FFT。
      猜你喜欢
      • 2011-09-15
      • 2017-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-18
      • 2017-08-22
      • 1970-01-01
      相关资源
      最近更新 更多