【问题标题】:WebRTC in iPhone (gas-preprocessor issues)iPhone 中的 WebRTC(气体预处理器问题)
【发布时间】:2012-09-28 23:36:35
【问题描述】:

我正在尝试为 iPhone 编译最新的 WebRTC 版本。我不需要编译整个解决方案,我只需要编译VAD模块。

为此,我创建了一个 Xcode 项目并尝试编译必要的源代码,但 *.s 文件及其汇编程序存在问题。

就像在 FFMPEG 库中一样,我知道我必须将汇编代码“翻译”为 iPhone 的 gcc 可以理解的汇编代码,但我不知道如何手动执行此操作。

我尝试创建一个配置文件并在其中设置“as=gas-preprocessor.pl”(就像在 FFMPEG 中一样),但不起作用。

有什么想法吗?如何手动运行 gas-preprocessor.pl?

谢谢。

【问题讨论】:

    标签: iphone assembly compilation gnu-assembler webrtc


    【解决方案1】:

    我刚刚在 iOS 上完成它并且已经构建了 NS/VAD/AECM 和 AGC 的独立静态库,这里有一些提示给你,希望你成功:

    1.源文件列表

    对于独立的 VAD 构建,您应该确保您的项目具有所有这些文件(不需要 .s 文件),并且我没有在此处列出 header files,您将收到一些 header file can not be found 错误,只是修复它和事情会完成。)

    webrtc_vad.c
    vad_core.c
    vad_filterbank.c
    vad_gmm.c
    vad_sp.c
    real_fft.c
    division_operations.c
    complex_bit_reverse.c
    cross_correlation.c
    complex_fft.c
    downsample_fast.c
    vector_scaling_operations.c
    get_scaling_square.c
    energy.c
    min_max_operations.c
    spl_init.c
    

    2。添加一个名为 WEBRTC_MAC

    的宏

    我不确定为什么 Xcode 环境不提供这个宏,但应该定义它以确保启用WEBRTC_POSIX。要定义此宏,请将其添加到新的头文件中或仅在 webrtc-header-files 中定义。

    3.关注these steps 在 iOS 上构建和设置 WebRTC-VAD 模块的静态库

    notice,不要使用 LLVM 2.0 编译 VAD 模块(使用 GCC 或 LLVM GCC)。 cus' 在编译一些 webrtc 变量声明时,它可能会给您带来很多错误。

    4.使用 libwebrtc_vad.a

    如果你走到这一步,事情就很容易了,只需包含webrtc_vad.h 并使用此模块提供的 API。就我而言,vad 工作正常。

    希望我能帮上忙。

    【讨论】:

      【解决方案2】:

      尝试检查此链接https://groups.google.com/forum/?fromgroups=#!topic/discuss-webrtc/VJg-fk2-i_0 我相信您必须正确设置内联汇编。我也对此感兴趣,所以如果您想切换电子邮件或其他内容,请告诉我。

      【讨论】:

        猜你喜欢
        • 2011-02-16
        • 1970-01-01
        • 2019-07-12
        • 2013-02-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多