Skip to content

pili-engineering/QPlayer2-Android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

QPlayer2

Qplayer2是一款跨平台的播放器SDK,除了基础的播放器能力外,更致力于各种应用场景的对接。SDK 包含2个库:

  1. qplayer2-core:提供播放器的核心能力。
  2. qplayer2-ext:一个基于应用层框架组件,更好的实现播放器场景下的UI/手势/场景切换等。

支持的平台

Platform Build Status
Android Latest Version :1.5.0
IOS https://github.com/pili-engineering/QPlayer2-IOS.git
Windows https://github.com/pili-engineering/QPlayer2-Windows
HarmonyOS NEXT https://github.com/pili-engineering/QPlayer2-HarmonyOS-NEXT
Mac 敬请期待
Linux 敬请期待

qplayer2-core 功能列表

能力 亮点 备注
媒体资源组成形式 一个媒体资源支持多url,比如一个音频url和一个视频url组成一个媒体资源,提升拉流速度和解封装速度
播放协议及视频类型 http/https/rtmp/srt flv/m3u8/mp4/flac/wav(PCM_S24LE) 新增协议和视频类型请联系技术支持
解码 除了软解/硬解/自动解码方式外 新增混解方式,提升硬解首帧速度
色盲模式 能在业务场景中更好的服务视觉有障碍的客户
缩放/旋转/镜像 方便用户对视频画面进行一些自定义操作
屏幕显示方式 自动/铺满/拉伸/16:9/4:3
倍速 变速不变调
清晰度切换 通用清晰度切换方案,无缝切换,即使媒体资源gop不对齐
seek 支持精准/关键帧 seek 两种方式
指定起播位置 从指定位置开始播放
起播方式 起播播放/起播暂停 设置起播暂停时,起播后首帧渲染出来就停止画面
预加载 提前加载点播视频,获得更好的首帧体验
SEI数据回调 所有解码方式都支持
纯音频播放/纯视频播放 播放只有单音频流或者只有单视频流的视频
APM埋点上报 支持性能数据上报到平台,并通过邮件定时发送全盘性能报告。
VR视频 支持Equirect-Angular类型的vr视频播放
截图 自动转换成jpeg格式,可以展示在UI上,也可存放到相册
静音 针对视频的静音,不影响系统声音
字幕 支持srt字幕文件加载并根据时间回调当前时间的文案给上层
DRM 支持HLS 私有加密/通用加密 2种方式,支持 MP4 CENC-AES-CTR 加密,支持七牛私有 MP4 加密方式
音视频数据上抛 适用于业务层需要获取当前播放的音视频数据的场景(比如推流等)
本地重建时间轴 以真实的流逝时间为准,避免某些视频时间轴错乱导致播放过程中时间进度回调数值异常

qplayer2-ext 能力介绍

能力 亮点 备注
场景切换定制 当一个播放器有直播点播场景时,且2个场景的业务逻辑完全不同时,通过场景定制,能更丝滑的在2套逻辑中切换
播放面板定制 统一控制面板的显示隐藏,不同的视频场景中 可快速切换面板
播放器上层浮窗定制 拥有统一的浮窗展示隐藏动画和布局规范,更快的实现各类弹窗
播放器上层手势 支持多种手势判定回调,上层只需关心业务逻辑
选集控制 多集场景(电视剧综艺等)通过选集控制定制播放顺序逻辑

Android

引入依赖
implementation("com.qiniu:qplayer2-core:1.5.0")
implementation("com.qiniu:qplayer2-ext:1.5.0") //如果无需qplayer2-ext能力可以不引入 不影响core的使用
鉴权
权限 说明 鉴权失败结果
Base 基础播放能力 播放器进入error状态
VR 播放VR视频 播放vr视频,起播后播放器进入error状态
SEI SEI数据回调 开启sei 回调,且视频有sei数据。能正常播放视频,SEI数据不回调,同时抛出鉴权失败错误码
SRT srt协议视频 播放srt链接 播放器进入error状态
BLIND 色盲滤镜 开启色盲滤镜,视频正常播放,滤镜不生效。
APM APM性能数据上报 关闭埋点上报,不影响播放器核心功能使用。

如需使用该套sdk到其他工程中,请联系我们的技术支持开通帐号和权限。

API文档

请查阅document目录下的api文档

接入文档

https://developer.qiniu.com/pili/12214/qplayer2-android

Demo介绍
  1. demo工程内的 长视频播放页 是基于qplayer2-ext + qplayer2-core来实现的
  2. demo工程内的 短视频视频播放页 是仅基于qplayer2-core来实现的
  3. 体验demo下载: http://fir.qnsdk.com/4rg5

技术支持与交流

产品及服务咨询:400-808-9176

问题反馈:如有问题请提交issue