GSYVideoPlayer支持AMR解码

环境:
ijkplayer 0.8.8
GSYPlayer 2020.06.26
NDK r14b
MBP2017

要重编so。拉取最新的ijkplayer仓库,检出最新分支或者用master分支也行。

git checkout -B k0.8.8

其实最新的提交就是0.8.8,ijkplayer已经2年没有更新了。

添加路径到~/.bash_profile

export ANDROID_SDK=<your sdk path>
export ANDROID_NDK=<your ndk path>

使变更生效

source ~/.bash_profile

修改 module-lite.sh,添加

# 支持rtsp流
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=rtp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=tcp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtsp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=sdp"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtp"

# 支持AMR
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=amrnb"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=amrwb"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=amr"

下载ffmpeg,超级慢,要开全局FQ

./init-android-openssl.sh
./init-android.sh

到android/contrib

./compile-ffmpeg.sh armv7a

到android目录

./compile-ijk.sh armv7a

如果要编译全架构,则把上两行命令的armv7a改成all。

生成的so在android/ijkplayer/ijkplayer-armv7a/src/main/libs/armeabi-v7a

测试一下,成功播放AMR音频。

源码地址

ijkplayer: 非官方镜像
https://gitee.com/obarong/ijkplayer

sdk28分支。

参考

GSYVideoPlayer/BUILD_SO.md at master · CarGuo/GSYVideoPlayer
https://github.com/CarGuo/GSYVideoPlayer/blob/master/doc/BUILD_SO.md

IJKPlayer支持amr - 简书
https://www.jianshu.com/p/9611050108cf

Android Mac下编译bilibili IjkPlayer实现播放rtsp直播视频源_crazyZhangxl的博客-CSDN博客_android ijkplayer rtsp
https://blog.csdn.net/crazyZhangxl/article/details/83341203

posted @ 2020-07-31 14:21  奥巴荣  阅读(540)  评论(0编辑  收藏  举报