Open linuxliu opened 4 years ago
@linuxliu 如果链接静态库需要编译加入
--pkg-config-flags=--static
@linuxliu 请问你使用的ndk和srt是什么版本, 我用r10e的编译srt v1.4.1会报错,ijkplayer-android-svn/android/contrib/srt-armv7a/srtcore/utilities.h:278:32: error: 'le32toh' was not declared in this scope
求一份完整编译脚本。。
@linuxliu 大佬,能出一份用最新NDK(31.0.0)编译的指南么
可以查看一下我的博客:https://www.jianshu.com/p/7fad9a1a64f4 对着一步一步编译就好。
首先更换ffmpeg的版本为ff4.0--ixxxxxx
例如: ff4.0--ijk0.8.25--20200221--001 1.修改 init-android.sh 中的 IJK_FFMPEG_COMMIT=ff4.0--ijk0.8.25--20200221--001
2.然后编译openssl, libsrt需要libssl 的支持
4.修改android/contrib/tools/do-compile-srt.sh 参考对openssl的支持增加对srt的支持 `#with srt if [ -f "${FF_DEP_SRT_LIB}/libsrt.a" ]; then echo "srt detected" FF_CFG_FLAGS="$FF_CFG_FLAGS --enable-libsrt"
fi 注意要将srt的配置放在openssl之前,因为srt也依赖openssl 正常编译就行了,如果ffmpeg报未找到libsrt的错误,是因为是根据pkg_config去找的,简单更改就是去掉对应ffmpeg中configure 对libsrt的检测 如果编译完成发现不能和str-live-server 通信,是因为ff4.0--ijk0.8.25--20200221--001 libavformat/libsrt.c版本较老,对应很多字段不支持,将ffmpeg4.2.2中对应的文件拷贝过去即可 `