【问题标题】:How to build the .s (asm) file in Android.mk file如何在 Android.mk 文件中构建 .s (asm) 文件
【发布时间】:2014-04-13 05:44:33
【问题描述】:

我正在将自定义编解码器集成到 android 源代码中的 libstagefright。我成功完成了任何解释 Custom Wrapper Codec Integration into Android 但我发现我的自定义编解码器中有.s 文件。

我正在关注LOCAL_CFLAGS := -DOSCL_EXPORT_REF= -DOSCL_IMPORT_REF=,它没有使用.s 文件来构建。

我找到了几个解决方案,但这些不是我的答案 链接是

请帮我解决这个问题

提前致谢。

【问题讨论】:

    标签: android android-ndk android-mediaplayer codec stagefright


    【解决方案1】:

    请尝试使用这种方法来包含.s 文件。有一个备用C 实现很重要,我假设您确实有一个。在您的编解码器的 Android.mk 文件中,

    ifeq ($(TARGET_ARCH),arm)
    LOCAL_SRC_FILES += \
        src/asm/file1.s \
        src/asm/file2.s \
        src/asm/file3.s \
        src/asm/file4.s
    else
    LOCAL_SRC_FILES += \
        src/file1.cpp \
        src/file2.cpp \
        src/file3.cpp \
        src/file4.cpp
    endif
    

    例如,您可以参考MP3 解码器的构建方式,如Android.mk 文件中所示。

    【讨论】:

    • 感谢您的回复。我已经用我的 make 文件尝试了你的程序,并且能够从我的解码器构建 .s 文件。另外,我想告诉你,我们正在尝试将我们的自定义解码器添加到 Android。我目前面临一个关于源文件和头文件的问题,如 softavc、softmpeg4 和其他类似文件。我不明白这些文件的作用。
    • 我检查了这些文件并意识到这些文件调用了运行特定格式(如 avc 或 mpeg4)所需的函数。我的问题是,我需要在这些文件中添加我的解码器函数调用,还是需要在 android 源代码的其他地方调用它们。我已阅读您之前关于 omx 组件集成的答案。根据您的详细信息,我已在 omxcodec.cpp 和您提到的其他集成文件中添加了我的自定义解码器格式。
    • 我想要做的是将我当前的解码器合并到 android IL,以便播放器识别我的格式并访问我的代码并在很棒的播放器中播放。如果您能帮助我将我的解码器集成到 android 平台,我将非常感谢您。
    • 感谢您的回复。我想澄清一些关于硬件加速部分的事情,硬件加速是否包括 arm neon & x86 或 opencl & cuda。我的代码由霓虹灯和 x86 组成。你能指导我哪个是硬件/软件吗?
    • @sayedjuned.. 澄清一下。 libstagefright.so 是一个包含整个框架的框架库,而不是编解码器库。如果您希望将编解码器集成为SoftOMXComponent,请您提出一个新问题。我将整合所有需要的点并做出同样的回应。如果当前回复已回答您的问题,请接受当前回复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-26
    • 1970-01-01
    • 2011-11-30
    • 1970-01-01
    • 2013-08-23
    • 1970-01-01
    • 2013-06-06
    相关资源
    最近更新 更多