在Mac下编译ijkplayer可以播放直播流中nellymoser音频格式

      做音视频的朋友一般应该都知道ijkplayer这个播放器,之前做开发一般是直接使用别人直接封装好的播放器如jiaoziplayer,vitamio等,但是最近碰到了一个难题,我们直播中的直播流中音频格式不支持,音频格式不是标准的AAC格式而是nellymoser 格式,致使我们的视频播放只有画面没有声音,通过搜索资料可以通过重新编译ijkPlayer实现播放.废话不多说直接上教程,其实大部分的教程都是按照github上的教程走的:附上github地址https://github.com/Bilibili/ijkplayer

第一步:安装工具,下载SDK和NDK

这是github上的准备工作的截图,直接打开mac的终端,在终端中输入上边的指令

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
brew install yasm
就是简单的三个安装命令,接下来需要下载SDK和NDK,这个你直接在网上百度就可以查到,我用的是21的sdk和14的ndk,ndk最好用最新的r14的(android-ndk-r14b),我同事用的r9的直接编译报错的,具体怎么回事不清楚.

第二步:配置.bash_profile的参数

通过终端命令打开文件命令是open .bash_profile在这个文件中需要配置三个参数

export PATH=$PATH:/Users/lijianfei/Desktop/android-ndk-r14b
export ANDROID_SDK=/Users/lijianfei/Desktop/android-21
export ANDROID_NDK=/Users/lijianfei/Desktop/android-ndk-r14b
把这三行直接添加到这个文家中保存即可

第三步:下载ijkplayer-android并修改module.sh文件(如果你只是要编译不需要支持nellymoser格式第三步可以不走),

这也是通过终端命令实现的,命令是

git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
下载下来之后在你的电脑中找到这个文件打开他的config文件夹里边的module.sh文件在这个文件中添加三行

export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=h263"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=libspeex"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=nellymoser"
加入到这个文件中就可以支持播放nellymoser文件了,

[如果你想编译支持全格式的音视频播放的话第三步改为直接在终端中执行三行命令

cd config
rm module.sh
ln -s module-default.sh module.sh
]

第四步:执行编译过程

cd ijkplayer-android
git checkout -B latest k0.8.4

./init-android.sh

cd android/contrib
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

cd ..
./compile-ijk.sh all
按照上方的指令一步一步的在终端中执行就可以了,在执行./init-android.sh的时候会比较慢不用着急,我在执行./complie-ffmpeg.sh的时候出现了很多的warning但是不影响最后编译的so文件,所有步骤执行完之后打开文件具体路径应该是这是其中一个arm64的文件路径里边会有三个so文件

分别把这几个libs中的文件拷贝出来防盗自己的项目中就可以了




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值