服务端上传指引

最近更新时间:2019-06-14 17:27:25

所谓服务端视频上传,是指 App 后台将视频上传到点播平台。服务端上传的整体流程如下图所示:
图:服务端上传流程图

准备工作

开通服务

如果您尚未开通点播服务,则需要先开通服务,请参见 购买流程

获取云 API 密钥

服务端上传涉及多个服务端 API,故而需要首先获取调用服务端 API 所需的安全凭证,即 SecretId 和 SecretKey。其具体步骤如下:

  1. 登录 腾讯云控制台
  2. 单击【云产品】,选择【监控与运维】>【API密钥管理】,进入云 API 密钥管理页面。
  3. 获取云 API 密钥。如下图所示:
    如果您尚未创建密钥,则单击【新建密钥】即可创建一对 SecretId/SecretKey。
    SecretID and SecretKey

发起上传

视频上传分为 申请上传上传文件确认上传 三步,分别对应 上传流程图 中的第 1、2、3 步。

通过点播服务端上传 SDK 发起上传

为了方便用户开发端上传功能,云点播提供了基于多语言平台 SDK,每种语言的 SDK 均包含相应 Demo。详情请参见:

通过服务端 API 发起上传

如果点播提供的上传 SDK 并未涵盖 App 后台所使用的语言,则 App 后台需要自行调用点播的服务端 API 进行视频上传。这种方式流程较为复杂,不推荐作为首选。基于 API 上传的完整业务流程图如下:
图:服务端 API 上传流程图
可以看到比起基于 SDK 方式的上传,基于 API 的服务端视频上传需要自行实现 “申请上传”、“上传视频文件”等步骤。而 “上传视频文件” 也没有基于 SDK 的方式上传方便,对于大文件需要自己做分片上传等逻辑。详情请参见:

事件通知

视频上传完成之后,腾讯云点播会给 App 后台发起 事件通知-视频上传完成,App 后台可以据此感知到视频上传行为。
要接收事件通知,App 首先需要到点播控制台开通事件通知,如下图所示:
图:配置上传完成回调
事件通知-视频上传完成 主要包含如下几项信息:

  • 新视频文件的 FileId 和 URL。
  • 点播支持在视频上传时指定透传字段,事件完成将透传字段通知到 App 后台。在事件通知中有2个字段:SourceType(该字段被腾讯云固定成 ServerUpload,表示上传来源为服务端上传)和用户自定义透传字段 SourceCopntextSourceContext 是 App 后台在派发签名时指定的透传内容(对应签名中的 sourceContext 参数)。
  • 点播支持在视频上传完成时自动发起视频处理,如果上传时指定了 视频处理任务流,则在事件通知内容中也会携带任务 ID(事件通知中的 data.procedureTaskId 字段)。

更多信息请参见:

高级功能

上传时指定任务流

如果开发者需要在视频上传完成后自动发起 视频处理任务流(例如转码、截图等),可以在调用服务端 API 申请上传 时通过 Procedure 参数来实现。参数值为任务流模板名,云点播支持 创建任务流模板 并为模板命名。发起任务流时,可以用任务流模板名字来表示要发起的任务。云点播提供的各语言 SDK 都支持指定任务流参数,详情请参见:

上传时指定存储区域

目前服务端上传默认是将存储到广州,但点播也支持存储到其他区域。如果需要存储到其他区域,可以提工单申请其他存储区域。详情请参见: