美文网首页
libyuv编译动态库

libyuv编译动态库

作者: yin_xin | 来源:发表于2021-03-16 22:35 被阅读0次

在android平台上对camera采集到的yuv数据进行旋转、缩放、转化等操作可以使用到google开源的libyuv开源库。


编译环境

  • Mac os
  • ndk-r21b

下载源码

前往google仓库下载yuv压缩包。
https://chromium.googlesource.com/external/libyuv/+/refs/heads/master

点击下载

修改Android.mk

  1. 将下载好的代码解压后,源码根目录重命名为jni
  2. 修改Android.mk文件,找到下面相关部分
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include

#修改输出库文件名字
LOCAL_MODULE := libyuv_static
LOCAL_MODULE_TAGS := optional

#修改生成库文件类型
include $(BUILD_STATIC_LIBRARY)

修改后

LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include

#生成so的名字为libyuv_test
LOCAL_MODULE := libyuv_test
LOCAL_MODULE_TAGS := optional

#生成动态库
include $(BUILD_SHARED_LIBRARY)

修改Application.mk

该文件如果没有需要自己创建。
Application.mk

APP_ABI := armeabi-v7a arm64-v8a x86 x86_64
APP_PLATFORM := android-11

编译

  1. 在终端cd到源码jni目录
  2. 调用ndk-build工具直接
cd 你的jni目录
你使用的ndk目录/ndk-build

生成文件

可以看到在jni平级的目录生成了obj,libs目录,可以看到libs目录下生成了对应平台的.so文件

编译结果

相关文章

  • libyuv编译动态库

    在android平台上对camera采集到的yuv数据进行旋转、缩放、转化等操作可以使用到google开源的lib...

  • libyuv 库编译

    libyuv 是谷歌开源的对 YUV 数据进行缩放、旋转和转换的跨平台库,可在 Windows、Linux、Mac...

  • c++编译跨平台动态库

    window编译动态库 linux编译动态库 makefile文件

  • 编译libyuv

    1.编译libyuv 百度云盘下载libyuv 链接:https://pan.baidu.com/s/1GTmS0...

  • android JNI 报错:error: undefined

    编译报错 报错原因:jnigraphics库没有动态链接 解决 Cmake编译解决添加动态链接库 jnigraph...

  • 5月6日:gcc编译选项

    一、GCC 动态库处理 ldd XX ###编译通过,但运行时发现不了动态库 image.png编译时...

  • Android FFmpeg so库编译 支持Https

    概要 编译armv7架构的openssl、ffmpeg的a、so库,目前openssl只编译了静态库,编译动态库,...

  • 静态库

    静态库 静态库动态库简介 .a 静态库:被编译好的二进制文件 静态库:.a, .framework 动态库: .d...

  • libyuv的编译

    【1】windos下编译libyuv 官网下载源代码 https://github.com/lemenkov/li...

  • iOS开发-动态库加载(实时模块更新)

    动态库和静态库 静态库和动态库是相对编译期和运行期:静态库在程序编译时会被链接到目标代码中,程序运行时将不再需要改...

网友评论

      本文标题:libyuv编译动态库

      本文链接:https://www.haomeiwen.com/subject/xxjjcltx.html