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了!

ijkplayer总结的更多相关文章

  1. Android 关于ijkplayer

    基于ijkplayer封装支持简单界面UI定制的视频播放器 可以解析ts格式的so库 怎样编译出可以解析ts等格式的so库?就是编译的时候需要在哪一步修改配置? 一些电视台的m3u8 CCTV1综合, ...

  2. 【Android】 修复ijkPlayer进行m3u8 hls流播放时seek进度条拖动不准确的问题

    项目中使用的播放器是ijkPlayer,发现播放切片特点的hls流(m3u8格式的视频)拖动seekBar的时候会莫名的跳转或者seek不到准确的位置,发现网友也遇到了同样的问题,ijk的开发者也说明 ...

  3. ijkplayer demo效果图

    如下截图所示,用https://github.com/Bilibili/ijkplayer.git源码编译生成的ijkplayer app效果图,是这样的吗?有没有朋友指点下?

  4. ijkplayer导入AS时,出现more than one library with package name错误

    最近刚接触ijkplayer ,在ubuntu 中将ijkplayer编译后,导入Windows中AS时,出现以下错误,目前初步定为为包重名,但具体原因未定为到,麻烦有遇到这方面的朋友,给指导下,

  5. iOS----集成ijkplayer视频直播

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

  6. B站开源ijkplayer 等多个项目

    弹幕视频网 Bilibili(B 站)近日在 GitHub 网站上建立了开源工作组(BOSTF),用以分享与维护自己的开源项目,其中包括 DanmakuFlameMaster(燃烧吧!烈焰弹幕使)与 ...

  7. 1.iOS直播ijkplayer(第一周)

    准备工作: 1.使用的B站的开源框架ijkplayer ,下载地址: https://github.com/Bilibili/ijkplayer ijkplayer 是一个基于 ffplay 的轻量级 ...

  8. iOS集成ijkplayer视频直播框架,遇到的bug和坑...

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 32.0px "Helvetica Neue"; color: #555555 } p. ...

  9. 集成IJKplayer视频直播框架

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

  10. iOS中集成ijkplayer视频直播框架

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

随机推荐

  1. The C compiler identification is unknown解决办法

    环境:VS2015,CMake3.12.0. 问题一: 解决办法:下载并安装Windows SDK version 8.1. 问题二: 解决办法:这个问题百度了半天也没找到合适的办法,好多博客都是复制 ...

  2. 读懂jquery

    作者:豪情链接:https://www.zhihu.com/question/20521802/answer/25363285来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出 ...

  3. prototype和__proto__的关系是什么

    首先,要明确几个点:1.在JS里,万物皆对象.方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性__proto ...

  4. vue项目目录结构

    VUE项目目录结构 如上图所示,我们的目录结构就是这样的了. 目录/文件 说明 build 这个是我们最终发布的时候会把代码发布在这里,在开发阶段,我们基本不用管. config 配置目录,默认配置没 ...

  5. 四:(之六_镜像发布)Dockerfile语法梳理和实践

    *6.镜像发布 1>注册Docker Hub账号并登陆. build的镜像名称格式必须是: dockerhub账户名/标识: 使用docker login在项目目录下登录: 浏览器: 2> ...

  6. 获取进程ID,父进程ID,进程完整路径

    准备写一个进程管理的功能模块,今天下午先写了扫描获取本机各个进程路径,获取各个进程映像名称,进程完整路径. 要获取进程信息,第一步想到的就是提权,提权代码用过多次了,今天也小结了一下(http://w ...

  7. Linux中的15个基本'ls'命令示例

    ls命令是Linux中最常用的命令之一.我相信ls命令是你进入Linux 系统命令提示符时的首选命令. 我们每天都在使用ls命令,甚至常常意识不到这一点,也从没有使用所有可用的ls选项.在这篇文章,我 ...

  8. Jsの练习-数组常用方法

    1. join() 方法: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  9. HTML5:定位

    定位 一.介绍: position设置块级元素相对于其父块的位置和相对于它自身应该在的位置,任何使用定位的元素都会成为块级元素. 1.属性值 属性值 描述 absolute 生成绝对定位的元素,相对于 ...

  10. 自动化测试-11.selenium的下拉框处理类Select

    前言 最近由于工作原因,更新慢了一点,今天终于抽出一点时间给大家继续更新selenium系列,学习的脚本不能停止,希望小伙伴能多多支持. 本篇以百度设置下拉选项框为案例,详细介绍select下拉框相关 ...