FFmpeg笔记(九十九):KotlinDKVideoPlayer,国产播放器疑问?

摘要:在Android平台上,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器
在Android平台上,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器观看网络视频》。 除此以外,DKVideoPlayer也是一款优秀的国产Android视频播放器,它基于Kotlin编写,不但集成了Android原生的MediaPlayer,还集成了Jetpack的ExoPlayer,甚至集成了国产的ijkplayer。DKVideoPlayer既支持播放本地视频,也支持播放网络视频,甚至支持播放直播链接,可谓功能强大。 DKVideoPlayer的源码托管地址为https://github.com/Doikki/DKVideoPlayer(星星数5.3k),国内的镜像地址为https://gitcode.com/gh_mirrors/dk/DKVideoPlayer,最新版本是2022年7月发布的v3.3.7,可见该框架的源码更新十分及时,该版本的源码下载地址为https://github.com/Doikki/DKVideoPlayer/archive/refs/tags/3.3.7.tar.gz。 DKVideoPlayer提供了两种集成方式,引用在线库、直接导入源码,分别说明如下: 一、引用DKVideoPlayer在线库 Android工程引用DKVideoPlayer在线库时,需要修改以下两个配置: 1、打开模块级别的build.gradle,给dependencies节点补充下面几行配置,表示引入3.3.7版本的DKVideoPlayer库: # 必选,内部默认使用系统mediaplayer进行解码 implementation 'xyz.doikki.android.dkplayer:dkplayer-java:3.3.7' # 可选,包含StandardVideoController的实现 implementation 'xyz.doikki.android.dkplayer:dkplayer-ui:3.3.7' # 可选,使用exoplayer进行解码 implementation 'xyz.doikki.android.dkplayer:player-exo:3.3.7' # 可选,使用ijkplayer进行解码 implementation 'xyz.doikki.android.dkplayer:player-ijk:3.3.7' # 可选,如需要缓存或者抖音预加载功能请引入此库 implementation 'xyz.doikki.android.dkplayer:videocache:3.3.7' 2、打开App模块的src/main/AndroidManifest.xml,给manifest节点补充下面几行权限配置,表示声明悬浮窗、存储空间和网络等权限: <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 二、直接导入DKVideoPlayer源码 DKVideoPlayer的源码已经适配Android Studio Dolphin(小海豚版本),仅需在项目级别的build.gradle补充国内仓库即可。
阅读全文