ijkplayer 支持srt协议 rtmp协议编译步骤

写在前面 ffafaf这个编译真的太垃圾了 一堆毛病 感受下webrtc 傻瓜式编译

环境首先必须ndk 是android-ndk-r15c 或者 android-ndk-r14b 

ubuntu 系统随便22或者20,18都行 有个非常重要的点python必须是2.7 不然你会看到一大堆报错

高版本的ubuntu默认都是python3了 所以你得查看下python版本配置python 为python2 怎么搞百度 不贴了

配置下android ndk android_NDK版本到环境变量 我这是.bash_profile 弄完后source ~/.bash_profile一下  (他这个脚本写的很垃圾一定要用ANDROID_NDK ANDROID_SDK脚本才能认出来)

然后就是参照befovy这份开源代码来的 下ffmpeg libsrt openssl 并且编译ijkplayer 增加 SRT 协议指南与踩坑 - 掘金

首先按官方步骤 装yasm git 有一点他没写那就是要装 pkg-config 不然后面编译会报错

yasm,git,pkg-config首先

brew install git
brew install yasm# add these lines to your ~/.bash_profile or ~/.profile
# export ANDROID_SDK=
# export ANDROID_NDK=

下代码  搞完后 这里会编译运行

compile-ffmpeg这里生成的还是ffmepg的库可以后期自己替换官方高版本的ffmpeg

compile-ijk.sh 打包生成的ffmpeg以及ijkmedia里面的关于ffplay 跟ijksdl的内容生成三个so库

ijkffmpeg.so ijkffplay.so ijksdl.so 这里还需要拷贝到c++_shared.so到项目中总共四个库

git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android 
cd ijkplayer-android git checkout -B latest k0.8.8 
./init-android.sh //这里下ffmepg源码 版本号4.0./init/init-android-openssl.sh //这里下openssl源码./init/init-android-libsrt.sh // 这里下libsrt源码版本号1.4.1cd android/contrib 
./compile-openssl.sh arm64 
./compile-libsrt.sh arm64./compile-ffmpeg.sh arm64cd .. 
./compile-ijk.sh arm64

修改的点在git上链接

然后放在android studio debug的时候注意点

首先这里configuration一定要选上ijkmedia的目录不然进不了c 的debug

项目的目录结构是

具体的修改 这里改了官方的用 android.mk来编译c++ 用的cmake 可以看项目源码

https://github.com/heylee-svg/fork_ijkplayer

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部