ijkPlayer支持https和增加沉浸式带有so文件,EXOplayer升级到r.2.5.4
来源:互联网 发布:word转换成excel软件 编辑:程序博客网 时间:2024/06/15 13:18
IJKPlayer-android
优势: 对ijkplayer的抽取值删除了IjkVideoView.java类中几个无关紧要的变量和方法,其他与ijkplayer本身一摸一样。这样ijkplayer升级后,直接拷贝过来,无需任何改动。
对ijkplayer中的EXOplayer模块一直处于r1.x.x版本升级到r.2.x.x版本。同时ijkplayer-exo2中的IjkExoMediaPlayer.java我增加了RTMP的支持,播放速率,其他的暂时还没有,如果还想增加,请对照EXOplayer进行增加即可。
效果图
Demo下载
如果点击下载不了可以从以下找到它
首先打开/Bilibili/ijkplayer,利用git命令
git clone https://github.com/Bilibili/ijkplayer.git
然后在你现有的项目里新建一个module,如图所示:
然后从Bilibili/ijkplayer的项目中拷贝出我们需要的文件,如图所示:
不要忘了在module的build.gradle中依赖所需的依赖
compile 'tv.danmaku.ijk.media:ijkplayer-java:0.8.3'compile 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.8.3'compile 'tv.danmaku.ijk.media:ijkplayer-exo:0.8.3'
做完之后,IjkVideoView.java文件会出错,但是我们只要删除这些报错的变量和方法就好了,做到这步之后,我们开始播放了。
此外我们可以给IjkVideoView.java增加几个额外的方法。这里我提供我的:
///////////////////////////////额外增加的方法////////////////////////////////// /** * 参考{@link IRenderView#AR_ASPECT_FIT_PARENT}、{@link IRenderView#AR_ASPECT_FILL_PARENT}、{@link IRenderView#AR_ASPECT_WRAP_CONTENT} * {@link IRenderView#AR_16_9_FIT_PARENT}、{@link IRenderView#AR_4_3_FIT_PARENT} * 设置播放区域拉伸类型 */ public void setAspectRatio(int aspectRatio) { for (int i = 0; i < s_allAspectRatio.length; i++) { if (s_allAspectRatio[i] == aspectRatio) { mCurrentAspectRatioIndex = i; if (mRenderView != null) { mRenderView.setAspectRatio(mCurrentAspectRatio); } break; } } } /** * 设置旋转角度 */ public void setPlayerRotation(int rotation) { mVideoRotationDegree = rotation; if (mRenderView != null) { mRenderView.setVideoRotation(mVideoRotationDegree); } } /** * 设置播放速率,这里仅对支持IjkMediaPlayer播放器 * * @param rate 0.2~2.0之间 */ public void setPlayRate(@FloatRange(from=0.2, to=2.0)float rate) { if(mMediaPlayer instanceof IjkMediaPlayer){ ((IjkMediaPlayer)mMediaPlayer).setSpeed(rate); }else { Toast.makeText(getContext(), getResources().getString(R.string.TrackType_unknown), Toast.LENGTH_SHORT).show(); } }
其中setPlayRate()方法需要在createPlayer()方法中设置如下代码:
ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "soundtouch", 1);
这几句代码的含义是设置倍速后播放音调不会在android6.0以下变音
到了这一步差不多完成了,但是android4.4~android6.0之间没有沉浸式。这里用到了我的另一个项目ChangeStatusColor-Android了。使用方法。
大功告成了。\(^o^)/~
如果不想麻烦可以clone我的IJKPlayer-android项目下来,直接导入我的module。
- ijkPlayer支持https和增加沉浸式带有so文件,EXOplayer升级到r.2.5.4
- Android,ijkplayer增加https协议支持,编译运行ijkplayer
- IJKPlayer如何支持https
- Ubuntu编译ijkplayer支持https和更多视频格式
- IJKPlayer播放器支持https流程
- ijkplayer的支持https的设置
- 首页增加沉浸式状态栏,仅支持android4.4及以上
- Android ijkplayer 编译的 bilibili 开源编译版本上,去掉失败的依赖,增加对 https 支持
- 关于对ijkPlayer 所用到的封装好的.so文件总结
- Android Studio Gradle 增加对.so 文件的支持
- 文件下载支持http和https
- Android开发-直播视讯(4)-Ubuntu编译ijkplayer的so文件-基础知识
- Android混淆带有so文件的工程
- HTTP 网站升级到 HTTPS 。
- ijkplayer编译.so
- Android Volley增加Https支持,允许SSL
- Android Volley增加Https支持,允许SSL
- Android Volley增加Https支持,允许SSL
- The user operation is waiting for ... "..." to complete
- Base64加密解密
- Halcon单相机标定
- NOIP2015提高组 信息传递
- 基础Fragment文件
- ijkPlayer支持https和增加沉浸式带有so文件,EXOplayer升级到r.2.5.4
- ext6 如何把grid表格的多个数据用json数组传到后台
- Eclipse工具安装
- PopupWindow的简单使用
- Java总结篇系列:Java多线程(三)
- VR版谷歌地球升级,把谷歌街景囊括其中
- Android项目文件及应用程序—目录结构详解
- Spring(总结整理)
- yum国内镜像配置