服务端 API 文档

视频播放综述

最近更新时间:2020-07-14 10:54:46

云点播支持多种方式,播放上传及转码后的视频。其中,播放主要分为以下三类场景:

播放场景 特点 推荐播放方式
短视频播放 通常指视频时长5分钟以内的视频 基础播放器
长视频播放 由专业机构制作,并通过视频网站发布的视频 超级播放器
视频加密播放 长视频场景下的一个细分场景,对版权视频有加密需求 超级播放器

下文将分别详细介绍三类场景的特点以及推荐的播放方式。

短视频播放

短视频,通常指视频时长5分钟以内的视频。主要有:

  • 短视频社交平台(微视、快手、抖音)中分享的视频。
  • 电商购物平台(京东、拼多多)中的商品宣传视频。
  • 微信公众号、自媒体中分享的短片。

播放架构

针对短视频播放场景,点播提供了基础播放器 SDK,使用 URL 作为参数,播放点播中的视频。

使用基础播放器 SDK 播放的整体架构流程如下:

  1. 服务端上传:业务后台通过控制台、服务端 API 等方式,将视频上传到云点播。
  2. 触发视频处理:上传视频的同时,可以指定转码。上传后,视频开始转码过程。
  3. 转码并写入存储:视频转码后,输出的视频内容被写入到点播的存储中。
  4. 下载内容:基础播放器通过下载地址,从点播 CDN 下载内容。
  5. 播放:基础播放器开始播放。

集成基础播放器

基础播放器 SDK 支持的功能,请参见 能力清单。集成方式请参见 下载与使用 部分。

长视频播放

长视频通常是由专业机构制作,并通过视频网站发布的视频。主要有:

  • 视频媒体平台(腾讯视频、优酷、爱奇艺)发布的独播剧、综艺节目。
  • 在线教育网站(腾讯课堂、企鹅辅导)的课程视频。
  • 网络电视平台(CNTV、芒果 TV)的电视节目回看视频。

播放架构

针对长视频播放场景,点播提供了超级播放器 SDK,使用 FileId 作为参数,播放点播中的视频。

使用超级播放器 SDK 播放的整体架构流程如下:

  1. 服务端上传:业务后台通过控制台、服务端 API 等方式,将视频上传到云点播。
  2. 触发视频处理:上传视频的同时,指定转自适应码流。上传后,视频开始视频处理。
  3. 转自适应码流并写入存储:视频转自适应码流后,输出的视频内容被写入到点播的存储中。
  4. 更新媒资:转自适应码流的视频信息,被写入到媒资管理模块。
  5. 请求下载地址:超级播放器指定要播放的视频 FileId 后,会从点播的播放服务获取视频的下载地址。
  6. 下载内容:超级播放器通过下载地址,从点播 CDN 下载内容。
  7. 播放:超级播放器开始播放自适应码流输出。

如果您要播放的视频开启了 Key 防盗链,则播放时需要指定 超级播放器签名。此时的架构流程如下:

  1. 业务后台需要搭建“签名派发”服务,根据 播放器签名计算规则 生成签名。
  2. 超级播放器在播放视频前,需要获取播放器签名(如下图步骤5)。
  3. 超级播放器在请求下载地址时(如下图步骤6),播放服务需要校验签名合法后,才返回下载地址。

集成超级播放器

超级播放器 SDK 支持的功能,请参见 能力清单。集成方式请参见 下载与使用 部分。
为了帮助您快速接入点播的超级播放器,我们为您提供了超级播放器 接入指引,以示例的方式为您讲解接入步骤。

视频加密播放

视频加密属于长视频场景下的一个细分场景。是视频平台自有的独播剧、网络课程等具有版权的视频,采取加密防止视频被非法下载和传播的措施。
云点播分别在 视频加密综述视频加密接入指引 中详细介绍了视频加密的原理和接入方式。

播放器 SDK

下载与使用

播放器类型 SDK 下载地址 使用文档
基础播放器
超级播放器

能力清单

基础播放器

功能 说明 移动端(Android 和 iOS) Web 端
丰富的格式 支持 RTMP、FLV、HLS、MP4 等丰富的音视频格式
首屏秒开 视频首屏可达到秒开
清晰度无缝切换 切换不同分辨率时无卡顿 ×
快速 seek 支持快速 seek 到指定位置播放
H.265 硬解 支持对 H.265 硬件解码播放 ×
软硬解自动切换 当终端不支持硬件解码时自动切换到软解 ×
自定义 HTTP 首部 自定义请求视频资源时的 HTTP Headers 内容 ×
码率自适应 播放 HLS 自适应码流时,根据网络带宽自适应播放
小窗播放 切换到小窗播放 ×
变速播放 不同倍速播放,且变速不变调 ×
边播边下 播放的同时缓冲下载后面的内容
弹幕 视频上方展示弹幕 ×
静音 播放视频时静音
视频截图 对视频画面做截图 ×
视频旋转 对视频画面按角度旋转 ×
视频镜像 水平、垂直等方向的镜像 ×
屏幕填充适应 视频画面选择不同填充模式,适应屏幕大小 ×
自定义起播时间 自定义视频的起始播放时间
设置封面 设置要播放的视频的封面
播放器尺寸设置 设置播放器的宽高
支持 HTTPS 支持播放 HTTPS 的视频资源
通过 URL 播放 网络视频的 URL 方式播放
直播录制 播放直播录制的视频
自定义视频渲染 视频解码后可以自己渲染到屏幕上 ×
无缝循环播放 单个视频播放完毕后循环播放
互动浮窗 浮窗播放 ×
视频自动旋转 根据视频文件内部 rotate 参数旋转视频 ×
自定义进度回调间隔 进度回调间隔支持自己配置 ×

超级播放器

功能 说明 移动端(Android 和 iOS) Web 端
首屏秒开 视频首屏可达到秒开
清晰度无缝切换 切换不同分辨率时无卡顿
快速 seek 支持快速 seek 到指定位置播放
H.265 硬解 支持对 H.265 硬件解码播放 ×
软硬解自动切换 当终端不支持硬件解码时自动切换到软解 ×
防盗链 支持开启了防盗链的视频
试看 支持开启了试看功能的视频
播放加密视频 播放点播加密后的视频
自定义 HTTP 首部 自定义请求视频资源时的 HTTP Headers 内容 ×
码率自适应 播放 HLS 自适应码流时,根据网络带宽自适应播放
自定义子流规格名 播放自定义码流时,可自定义各子流的规格名
小窗播放 切换到小窗播放 ×
变速播放 不同倍速播放,且变速不变调 ×
边播边下 播放的同时缓冲下载后面的内容
弹幕 视频上方展示弹幕 ×
静音 播放视频时静音
视频截图 对视频画面做截图 ×
视频旋转 对视频画面按角度旋转 ×
视频镜像 水平、垂直等方向的镜像
屏幕填充适应 视频画面选择不同填充模式,适应屏幕大小 ×
自定义起播时间 自定义视频的起始播放时间
手势操作 通过手势,调整亮度、声音、进度 ×
设置封面 设置要播放的视频的封面
缩略图预览 进度条上展示缩略图做预览
进度条打点 进度条上添加打点信息
播放列表 对列表中的视频逐一播放 ×
播放器尺寸设置 设置播放器的宽高
文件下载 将网络上的视频下载到本地 ×
支持 HTTPS 支持播放 HTTPS 的视频资源
通过 FileId 播放 使用点播的 FileId 方式播放
自定义视频渲染 视频解码后可以自己渲染到屏幕上 ×
无缝循环播放 单个视频播放完毕后循环播放
互动浮窗 浮窗播放 ×
视频自动旋转 根据视频文件内部 rotate 参数旋转视频 ×
自定义进度回调间隔 进度回调间隔支持自己配置 ×
目录