本文为您介绍Android端短视频SDK视频上传的功能以及流程说明。

功能介绍

视频点播支持通过多种方式上传媒体文件(音频、视频、图片等)到点播存储,详细请参见媒体上传。其中,上传SDK提供了一套单独进行合成上传的功能接口,用来实现将编辑完的视频在另一界面合成上传,核心类AliyunIVodCompose封装了视频合成与上传功能,方便客户端更好地合成与上传视频。阿里云短视频SDK通过调用核心类AliyunIVodCompose以完成视频的上传。

版本支持

版本 是否支持
专业版 支持
标准版 支持
基础版 不支持

相关类功能

类名 功能
AliyunIVodCompose 上传功能核心类,包括初始化、上传视频或图片、更新上传凭证等核心上传功能。
AliyunComposeFactory 工厂类。

视频上传流程

视频上传
  1. 当客户端(用户APP/Web端)通过上传SDK上传视频或图片时,首先向用户应用服务器发起请求,获取上传地址和凭证。
  2. 应用服务器通过OpenAPI,向视频点播服务发起CreateUploadVideo(视频)或CreateUploadImage(图片)请求。
  3. 请求成功,则视频点播服务将返回上传地址、上传凭证、VideoId(视频)、ImageURL(图片)给用户应用服务器。
  4. 用户应用服务器返回上传地址和上传凭证给客户端。
  5. 客户端添加本地文件,并设置上传地址和凭证,开始上传到OSS Bucket。
  6. OSS返回上传结果。

初始化

初始化上传实例。代码中需要使用的参数详情,请参考接口文档。接口链接请参见相关类功能
//创建
AliyunComposeFactory.createAliyunVodCompose();

//初始化
AliyunIVodCompose.init(Context context);

获取上传地址及凭证

AliyunIVodCompose是通过上传地址和上传凭证上传,在上传之前,需要获取上传地址及上传凭证,详细操作请参见获取视频上传地址和凭证获取图片上传地址和凭证
说明 此处只是在获取上传地址和凭证,并未开始上传,获取到上传地址和凭证后,需要再执行上传。

上传

上传视频、图片等媒体文件。代码中需要使用的参数详情,请参考接口文档。接口链接请参见相关类功能
//通过上传地址和上传凭证上传视频或图片
//videoPath:视频文件地址,请与获取上传地址和凭证时输入的视频文件地址保持一致 
//imagePath:图片文件地址,请与获取上传地址和凭证时输入的图片文件地址保持一致
//uploadAddress:上传地址
//uploadAuth:上传凭证,凭证过期后请参考下文刷新上传凭证
//aliyunVodUploadCallBack:上传的回调
//上传视频
AliyunIVodCompose.uploadVideoWithVod(String videoPath, String uploadAddress, String uploadAuth, AliyunIVodUploadCallBack aliyunVodUploadCallBack);

//上传图片
AliyunIVodCompose.uploadImageWithVod(String imagePath, String uploadAddress, String uploadAuth, AliyunIVodUploadCallBack aliyunVodUploadCallBack);

刷新上传凭证

因上传凭证带有时效性(UploadAuth字段的Expiration变量赋予了上传授权的过期时间,默认有效期为3000秒),所以当上传凭证过期后,需要在过期回调onUploadTokenExpired方法中重新获取上传凭证上传,更多信息,请参考刷新视频上传凭证
//刷新上传凭证,uploadAuth:上传凭证
AliyunIVodCompose.refreshWithUploadAuth(String uploadAuth);

释放资源

上传完成后,销毁接口,释放资源。代码中需要使用的参数详情,请参考接口文档。接口链接请参见相关类功能
AliyunIVodCompose.release();

上传控制

上传过程中可按需暂停、继续及取消上传。代码中需要使用的参数详情,请参考接口文档。接口链接请参见相关类功能
//暂停上传
AliyunIVodCompose.pauseUpload();
//继续上传
AliyunIVodCompose.resumeUpload();
//取消上传
AliyunIVodCompose.cancelUpload();