编译android平台libyuv库(使用ndk)
环境准备
1.使用ubuntu系统
2.ndk的版本为25.1.8937393
下载源码
git clone https://github.com/lemenkov/libyuv
将inlude 和source文件夹以及Android.mk文件,复制到新建文件夹yuvdemo下的jni中,并在jni文件夹打开终端。
修改Android.mk文件,去掉jpeg和测试部分的代码
# This is the Android makefile for libyuv for NDK.
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_CPP_EXTENSION := .ccLOCAL_SRC_FILES := \source/compare.cc \source/compare_common.cc \source/compare_gcc.cc \source/compare_msa.cc \source/compare_neon.cc \source/compare_neon64.cc \source/compare_win.cc \source/convert.cc \source/convert_argb.cc \source/convert_from.cc \source/convert_from_argb.cc \source/convert_to_argb.cc \source/convert_to_i420.cc \source/cpu_id.cc \source/planar_functions.cc \source/rotate.cc \source/rotate_any.cc \source/rotate_argb.cc \source/rotate_common.cc \source/rotate_gcc.cc \source/rotate_msa.cc \source/rotate_neon.cc \source/rotate_neon64.cc \source/rotate_win.cc \source/row_any.cc \source/row_common.cc \source/row_gcc.cc \source/row_msa.cc \source/row_neon.cc \source/row_neon64.cc \source/row_win.cc \source/scale.cc \source/scale_any.cc \source/scale_argb.cc \source/scale_common.cc \source/scale_gcc.cc \source/scale_msa.cc \source/scale_neon.cc \source/scale_neon64.cc \source/scale_rgb.cc \source/scale_uv.cc \source/scale_win.cc \source/video_common.cccommon_CFLAGS := -Wall -fexceptionsLOCAL_CFLAGS += $(common_CFLAGS)
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/includeLOCAL_MODULE := libyuv_static
LOCAL_MODULE_TAGS := optionalinclude $(BUILD_STATIC_LIBRARY)include $(CLEAR_VARS)LOCAL_WHOLE_STATIC_LIBRARIES := libyuv_static
LOCAL_MODULE := libyuvinclude $(BUILD_SHARED_LIBRARY)
编译代码
最终生成so文件
编译android平台libyuv库(使用ndk)相关推荐
- java jni librtmp_编译Android平台libRTMP库
操作系统: Mac OSX NDK: android-ndk-r10e-darwin-x86_64 编译目标: librtmp.a librtmp.so 简介 Android 官方提供了三种编译方式, ...
- 【Android 逆向】代码调试器开发 ( 使用 NDK 中的 ndk-build + Android.mk 编译 Android 平台的代码调试器可执行应用 )
文章目录 一.Android 平台代码调试器代码 二.Android.mk 构建脚本内容 三.Application.mk 构建脚本内容 四.正式编译 五.博客资源 一.Android 平台代码调试器 ...
- 使用NDK20编译Android平台的ffmpeg
使用NDK编译Android平台的ffmpeg 编译环境 安装 编译 避坑 如何添加h264支持 编译环境 注意选择Linux版本的包下载 Ubuntu 16 下载 ndk20 下载 ffmpeg4. ...
- ffmpeg编译android平台-(ubuntu+ndkr16b+ffmpeg3.4.12)
一.环境配置 1.下载NDK,NDK老版本 1.1. ubuntu下载 wget https://dl.google.com/android/repository/android-ndk-r16b-l ...
- 基于NDK编译Android平台的FFmpeg动态库
需求 FFmpeg在Linux平台(如Ubuntu)上的支持已经比较完善了,如前述文章介绍 http://blog.csdn.net/ericbar/article/details/73702061, ...
- Unbuntu环境编译 Android平台可用ffmpeg(带三方库fdk-aac和lame)
零.准备 编译环境:Ubuntu16.0.4 NDK版本:android-ndk-r21c-linux-x86_64 ffmpeg版本:4.4.1 fdk-aac: fdk-aac-2.0.2 lam ...
- debian android编译,android 平台运行debian
一 概述 比较火的树莓派运行的是定制版debian--raspbian,其实在android也可以手机平台上搭建一个debian环境,同时可以进行自由切换.利用制作debian rootfs的工具de ...
- cmake编译android平台的libPoco
1.下载源代码,解压到POCO-1.7.8-ALL 2.从$ANDROID_NDK\cmake下复制android.toolchain.cmake AndroidNdkGdb.cmake Androi ...
- librtmp开源库与android平台编译记录
一.编写目的 为了记录编译librtmp开源库过程遇到的问题,帮助后来人提供参考,希望本文能为大家提供参考. 二.简介(官方介绍) The Real-Time Messaging Protocol ( ...
最新文章
- InetAddress 解析
- 【编译原理】文法分类
- jboss8日志级别设置_罐中研讨会:设置JBoss BRMS全日研讨会
- 常用函数总结——sprintf
- dbgrid 获取前台页面参数
- 容器编排技术 -- Kubernetes 中查看Pods和Nodes
- .NET中的内存管理,GC机制,内存释放过程
- Netty工作笔记0053---Netty核心模块梳理
- SCPPO(二十五):从导数据看如何将一天过出多天的效果
- Udemy上Gephi教程笔记2
- windows下调用外部exe程序 SHELLEXECUTEINFO
- MATLAB实现彩色图像灰度化
- (转)yolov3运行及保存检测视频(包括摄像头)
- 如何用python进行相关性分析_Python 数据相关性分析
- 春运又双叒来啦!阿里出手帮你抢票
- 胡耀文教你:裂变8级、转化率32%、K值7.4的老带新式分销全复盘
- 模板的选择和结合部位可塑性处理对GPCRs虚拟筛选性能影响
- 洛谷【p1007】独木桥
- 中国移动位置服务基地能力开放平台
- Android-0. Android studio在导航栏增加自己的功能图标(如小扳手)
热门文章
- Elasticsearch:时间点 API
- Docker容器修改配置文件
- pandas.Series.plot的简单参数使用说明
- android数字转汉字,【原创】最精简的中文数字和阿拉伯数字互相转换函数
- 网络切片使能千行百业,助5G无所不能,5G网络切片“切”的是什么?
- WPF快速入门2—布局WrapPanel,DockPanel,StackPanel,Canvas
- 如何使用 开源硬件Banana PI BPI-R2‘s GPIO-s
- fstream —文件读写操作
- mysql workbench 1046,错误1046未选择数据库,如何解决?
- 频数直方图的步骤_《频数直方图》PPT课件