歇凛尾 发表于 2026-1-17 16:15:12

FFmpeg开发笔记(九十九)基于Kotlin的国产开源播放器DKVideoPlayer

在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节点补充下面几行权限配置,表示声明悬浮窗、存储空间和网络等权限:
二、直接导入DKVideoPlayer源码

DKVideoPlayer的源码已经适配Android Studio Dolphin(小海豚版本),仅需在项目级别的build.gradle补充国内仓库即可。也就是在repositories节点内部补充以下配置:
// 以下四行添加阿里云的仓库地址,方便国内开发者下载相关插件maven { url = uri("https://maven.aliyun.com/repository/jcenter") }maven { url = uri("https://maven.aliyun.com/repository/google")}maven { url = uri("https://maven.aliyun.com/repository/gradle-plugin")}maven { url = uri("https://maven.aliyun.com/repository/public")}// 以下添加清华大学的仓库地址maven { url = uri("https://mirrors.tuna.tsinghua.edu.cn/repository/maven-central/") }增加以上配置的目的是引入国内的仓库地址,以便加快相关依赖包的下载速度。
等待DKVideoPlayer工程编译通过,把主入口的dkplayer-sample模块安装到手机上,启动之后的App界面如下图所示:
https://img2024.cnblogs.com/blog/729938/202512/729938-20251221180441777-124194375.jpg
点击【点播】按钮,打开网络视频的播放界面如下图所示:
https://img2024.cnblogs.com/blog/729938/202512/729938-20251221180456662-462668323.jpg
或者点击【直播】按钮,打开直播链接的播放界面如下图所示:
https://img2024.cnblogs.com/blog/729938/202512/729938-20251221180522634-502106673.jpg
可见DKVideoPlayer支持调整播放窗口大小、调整播放速度,以及旋转、截图、裁剪等功能,可谓将常见的播放操作一网打尽。
更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

狙兕 发表于 2026-1-28 04:15:13

感谢分享,下载保存了,貌似很强大

豹筒生 发表于 2026-2-7 04:03:26

很好很强大我过来先占个楼 待编辑

拼潦 发表于 2026-2-7 09:39:59

用心讨论,共获提升!

稿辏付 发表于 2026-2-8 03:41:24

过来提前占个楼

寨亳 发表于 2026-2-10 23:06:42

这个有用。

剽达崖 发表于 2026-2-12 02:43:31

感谢发布原创作品,程序园因你更精彩

溜椎干 发表于 2026-2-26 06:45:11

东西不错很实用谢谢分享

昝沛珊 发表于 2026-2-27 01:29:19

很好很强大我过来先占个楼 待编辑

眺愤 发表于 2026-2-27 02:33:57

感谢发布原创作品,程序园因你更精彩

坡琨 发表于 2026-3-8 03:56:06

谢谢楼主提供!

诈知 发表于 2026-3-8 07:11:48

yyds。多谢分享

翳舀 发表于 2026-3-12 04:46:31

这个好,看起来很实用
页: [1]
查看完整版本: FFmpeg开发笔记(九十九)基于Kotlin的国产开源播放器DKVideoPlayer