ijkplayer总结
12.ijkplayer的使用过程:
11.ijkpalyer引言:
====
12.ijkplayer的使用过程:
>>举例mac系统编译.so文件:
ijkplayer默认是不支持https的, 如果需要支持https,需自己编译ijkplayer的源码;
ijkplayer可以编译支持avi,flv,mp3,;
ijkplayer可以编译支持armv7a,armv5,arm64,x86,x86_64的cpu架构;
>>ijkplayer的编译.so文件:
win系统、mac系统、Ubuntu 系统上编译.so文件;
Step 1:安装Git与yasm:
sudo apt-get install git
sudo apt-get install yasm
Step 2:下载,配置SDK与NDK
sdk就不说了,你开发安卓肯定会有的,NDK一般是不默认下载的,
这里也不建议你使用SDK Manager下载的NDK,之前试过有些许问题,
建议去官网下载:https://developer.android.google.cn/ndk/downloads/index.html
NDK的最小版本支持是10e,目前不支持NDK 15!
接着是配置环境变量:
MAC:
打开终端,cd到根目录(cd ~),然后新建一个.bash_profile的文件:
进行如下配置 等等........
Step.......
>> ijkplayer的.so文件使用:
最简单的使用方法,就是把这个项目当成一个library导入到项目中,
就是build.gradle里多一个compile project(‘:ijkplayer’),
然后你就可以用了,记得把你之前写的:
compile 'tv.danmaku.ijk.media:ijkplayer-java:0.8.4'
compile 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.8.4'
这些依赖删掉,不然还是会报不支持HTTPS的! 一般到这里引用到项目里就够了!
>删减无关东西,生成aar依赖库:
Step 3:把aar文件添加到项目中
这个也很简单,直接丢到app的libs文件夹下,然后build.gradle下添加依赖,(笔者直接把ijkplayer-java-release.aar改名成
ijkplayer.aar)
implementation(name: 'ijkplayer', ext: 'aar')
>>模块化,模块使用aar找不到问题解决?
11.ijkpalyer引言:
引言:
公司现在的电台项目是我第二个接触音频播放项目,Android音视频播放很多还是使用的MediaPlayer(大中厂除外),但是如果你用过
MediaPlayer的话,很多开发者都会吐槽有多坑,连谷歌官方都推荐使用ExoPlayer…遇到过最坑的就是播放在线音视频的时候,网络不好会一直加载,然后点多了还容易ANR…以前就一直想把音频播放这个换掉,通过自行搜索和问别人,又下面几个方案(小作坊不可能另外去写个编解码播放库):
>>MediaPlayer:使用的MediaPlayer(大中厂除外),但是如果你用过MediaPlayer的话,很多开发者都会吐槽有多坑,连谷歌官方都推荐
使用ExoPlayer…遇到过最坑的就是播放在线音视频的时候,网络不好会一直加载,然后点多了还容易ANR…以前就一直想把音频播放这个换掉;
>>ExoPlayer:Demo复杂得一匹…而且网上的资料也不是很多,pass;
>>Vitamio:自用免费,商用收费,直接就pass了;
>>自己编译ffmpeg:一听就很复杂的,同样Pass;
>>ijkplayer:大B站开源的基于FFmpeg的轻量级Android/iOS视频播放器,网上资料挺多的,而且官方也有维护,虽然还有1600多个issues,和mediaplayer差不多的接口,学习成本也不高,可以加进来试试水!
最后就决定使用ijkplayer来替换原先的MediaPlayer了!