【问题标题】:How to integrate FFTW3 into an iPhone app?如何将 FFTW3 集成到 iPhone 应用程序中?
【发布时间】:2010-06-14 15:06:19
【问题描述】:

我正在尝试将 FFTW3(一个用 C 语言编写的 GNU FFT 库,http://www.fftw.org/)集成到 iPhone 应用程序中。我下载了源代码,发现有数百个 .h 和 .c 文件以及许多我无法识别的其他文件。我不是 linux 专家,所以我不太了解 .configure 文件和其他类似文件是如何工作的。而且由于没有filename.xcodeproj这样的文件,所以需要自己设置XCode项目。

我想知道的是: 如何在 XCode 中获取文件并正确编译它们?有什么经验或技巧吗?

【问题讨论】:

    标签: iphone xcode signal-processing fft fftw


    【解决方案1】:

    请注意,如果您在应用程序中包含此库的 GPL 版本,则需要在 GPL 许可下提供您自己的应用程序的源代码。看来您可以从 MIT 购买许可证,以将此库合并到非免费应用程序中。

    如果您愿意为您的应用程序等待 iPhone OS 4,您将能够使用Accelerate framework(链接指向 Mac 实现,但与 iPhone 大体相同)。在这个框架的 vDSP 部分中是 FFT 操作。根据 Apple 的说法,它们在 iPhone 上比 FFTW 库高出 5 倍。

    【讨论】:

    • 看起来 Accelerate 框架在这种情况下更好。我会花一些时间来学习它。谢谢你的回答。
    【解决方案2】:

    我建议你看看kissfft。它比 FFTW 小得多,拥有 BSD 许可证,并且能够执行定点 FFT(AFAIK,iphone 缺少浮点单元)。

    【讨论】:

    • 其实iPhone有一个向量浮点单元,所以定点运算在设备上并没有那么大的优势。
    【解决方案3】:

    我在这里提供了一个用于将 fftw3 编译成静态库以用于 iOS 项目的脚本:fftw3 static library for iOS

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-27
      • 2011-03-09
      • 2012-02-04
      • 2012-02-04
      • 2011-04-12
      • 2010-09-23
      相关资源
      最近更新 更多