zlmedaikit android编译
Posted CHHC1880
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zlmedaikit android编译相关的知识,希望对你有一定的参考价值。
Windows 10 64bit
android Studio:Android Studio Electric Eel | 2022.1.1 Patch 2
NDK: android-ndk-r25c
1. 安装jdk
2. 打开http://ping.chinaz.com网站,输入dl.google.com地址,开始ping监测,选择一个时间最短的大陆IP地址,然后在本机PING 一下这个IP,如果能ping通,那么将hosts文件里加入ip dl.google.com
C:\\Windows\\System32\\drivers\\etc\\hosts
203.208.41.65 dl.google.com
3. 安装android studio,安装过程不使用代理
4. 下载zlm源码(https://github.com/ivanzz1001/ZLMediaKit),并用android studio打开ZLMediaKit/Android
5. SDK Manage自动下载NDK
6. File->Project Structure,Android/Sdk,Android/NDK
Android NDK location无法选中修改配置问题:
local.properties(SDK Location)文件添加
ndk.dir=D\\:\\\\Program_Files\\\\Android\\\\Sdk\\\\ndk\\\\25.2.9519653
ZLMediaKit源码修改:
build.gradle(Model :app)
ndk
abiFilters "armeabi-v7a","x86", "arm64-v8a" //, "armeabi-v7a"
zlm配置文件
E:\\ZLMediaKit\\Android\\app\\src\\main\\cpp\\native-lib.cpp
修改播放地址
E:\\ZLMediaKit\\Android\\app\\src\\main\\java\\com\\zlmediakit\\demo\\MainActivity.java
启动ZLM,使用ffmepg推流(ffmpeg.exe -re -stream_loop -1 -i test.mp4 -c copy -f flv rtmp://192.168.1.4/live/0)
拉流测试:
将android摄像头相机流推流至zlmediakit,并调用zlm api接口实现拉流代理
参考资料:
https://blog.csdn.net/qq_35350654/article/details/128421401
https://blog.51cto.com/u_15764654/5635839
Android源码编译是干啥
参考技术A 编译Android系统。 参考技术B 编译内核lichee文件夹下,有build.sh的脚本,主要内容是对kernel内核的编译,out目录下会产生已选择相应的img,之后在android编译的时候则会直接从中拷贝进行编译。
编译android
编译之前,会执行source build/envsetup.sh和lunch命令,其中lunch会跟一个参数表示产品的型号和eng,userdebug之类。
之后运行extract-bsp,extract-bsp是一个脚本函数,在device/softwinner/common/vendorsetup.sh 他也是在lunch的时候被执行的,也就是说如果先不执行lunch ,extract-bsp是无效的。这个脚本的主要作用是将lichee编译的结果输出到device/softwinner/vendor目录下
打包IMG
上面的extract-esp执行完之后,则可以运行make -jn(n根据电脑的配置选择,我用的是16),第一次编译的过程非常久,大概1-2个小时左右。编译结束后,会在out文件夹下生成很多的img文件这也是为我们的打包做准备。
最后执行pack命令,进行打包,运行结束之后,最后会在lichee/tools/pack目录下,一般格式是sun8xxx_android_yourname_uart0.img(其中yourname是自己取的名字)。
生成的img文件就可以进行固件的烧录了,烧录的方式由硬件商提供,在此不再描述。
以上是关于zlmedaikit android编译的主要内容,如果未能解决你的问题,请参考以下文章
我的 Android 小部件被杀死,“不再需要 bellander.andro ....”
AnroidStudio编译错误:import android.support.v7.app.AppCompatActivity
Android应用开发编译框架流程与IDE及Gradle概要
Android Gradle 插件BuildType 编译类型配置 ⑧ ( versionNameSuffix 配置 | zipAlignEnabled 配置 | initWith 方法 )