Upload Service
1、上传本地视频
描述
1、快捷上传多种格式的媒体文件。
2、支持上传时的各种设置,如文件标题、描述、标签、上传目录、是否开启课件优化处理等。
3、采用分片并发上传的方式,支持断点续传,续传请查看当前文档下一个方法。
4、PolyvUploadClient.uploadVideo()方法三个参数分别为 分片上传本地视频请求实体、上传回调、是否打印日志
接口地址(仅做说明使用):https://api.polyv.net/调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
单元测试
@Test
public void testUploadVideoPart() {
VodUploadVideoRequest vodUploadVideoRequest = new VodUploadVideoRequest();
Boolean vodUploadVideoResponse;
String videoFile = getClass().getResource("/file/polyv.mp4").getPath();
//构建视频上传客户端,可传入分片大小(默认为1MB,大小限定为100KB~5GB),分片文件夹路径(默认为checkpoint_location),上传线程数(默认为5个),此对象全局唯一
PolyvUploadClient client = new PolyvUploadClient(1024 * 1024, "checkpoint_location", 5);
vodUploadVideoRequest.setFile(new File(videoFile))
.setTitle("保利威宣传视频")
.setDescribe("保利威是全球领先的企业直播服务商,隶属于广州易方信息科技股份有限公司,致力于通过可集成、可定制的视频直播技术,为企业搭建自主私域直播系统,并提供直播全流程运营与现场执行服务。")
.setTag("宣传视频")
//.setCategoryId("1622165542751")
.setScreenCap(0)
.setKeepSource(0)
.setState("junitTest");
vodUploadVideoResponse = client.buildOSSService(vodUploadVideoRequest).upload(new UploadCallBack() {
@Override
public void start(String videoPoolId) {
log.debug("开始分片上传视频,videoId:{}", videoPoolId);
}
@Override
public void process(String videoPoolId, long hasUploadBytes, long totalFileBytes) {
log.debug("分片上传成功,videoId:{},已上传分片大小:{},总视频大小{}", videoPoolId, hasUploadBytes, totalFileBytes);
}
@Override
public void complete(String videoPoolId) {
log.debug("所有分片上传成功,videoId:{}", videoPoolId);
}
@Override
public void success(String videoPoolId) {
log.debug("所有分片上传成功并处理完成,请等待后台审核,videoId:{}", videoPoolId);
}
@Override
public void error(String videoPoolId, UploadErrorMsg errorMsg) {
log.error("上传视频失败,videoId:{},错误信息:{}", videoPoolId, errorMsg);
}
}, false);
}单元测试说明
1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.VodxxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
title
false
String
视频标题,默认使用带后缀的文件名,如:test.mp4
describe
false
String
视频简介,默认为空
tag
false
String
视频标签,多个使用英文逗号分隔,默认为空
categoryId
false
String
视频所属分类,默认为“默认分类”
screenCap
false
Integer
是否录屏优化。当值为1时,上传的视频不再采取默认的压缩编码机制,视频尺寸不再压缩,保证视频的清晰度。默认值为0
keepSource
false
Integer
源文件播放,1为开启,0为关闭;开启时不对视频进行转码(仅对新上传视频有效),默认值为0:非源文件播放
file
true
File
上传的视频文件
state
false
String
如果提交了该字段,会在上传完成的事件回调中透传返回
返回对象描述
上传成功返回true,上传失败返回false,回调error方法返回视频id,可以调用“断点续传本地视频”进行续传视频。
2、断点续传本地视频
描述
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
单元测试
单元测试说明
1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.VodxxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
file
true
File
上传的视频文件
videoId
true
String
续传的视频id
state
false
String
如果提交了该字段,会在上传完成的事件回调中透传返回
返回对象描述
上传成功返回视频id,上传失败回调也返回视频id
3、上传远程视频
描述
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
2、水印链接必须png格式
3、uploadInfos 和 (fileUrl、title)必传其一,并且 uploadInfos 的优先级高于 (fileUrl、title),建议使用 uploadInfos
单元测试
单元测试说明
1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.VodxxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
categoryId
false
String
设定上传视频的分类,当categoryId值为1时,表示用户上传空间的根目录。【对应api文档的cataid字段】
screenCap
false
Integer
是否录屏优化。当值为1时,上传的视频不再采取默认的压缩编码机制,视频尺寸不再压缩,保证视频的清晰度。默认值为0【对应api文档的luping字段】
watermark
false
String
自定义水印图片地址,图片格式必须是png格式,支持http、https。
watermarkLocation
false
String
自定义水印图片位置,如没该参数,则自定义水印的显示情况跟随分类或账号设置。1:左上角;2:右上角;3:左下角;4:右下角
fileUrl
String
待上传视频的URL,支持http、https协议,长度限制:1000 个字符
title
String
视频标题,长度限制:100 个字符
state
String
自定义数据,长度限制:100 个字符,如果提交了该字段,会在上传完成回调时透传返回
返回对象描述
true提交异步上传成功,false提交异步上传失败,具体是否上传成功以回调为准。
4、上传视频封面图
描述
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
2、当传了videoIds参数,以videoIds为准,当videoIds不传,以categoryIds为准,两个参数不能同时为空。
3、图片上传形式,三者任选其一即可,传了多个则按imageFile,imageUrl,imageBase64顺序选取第一个不为空的形式。
4、图片格式仅支持png、jpg、jpeg、gif、bmp,且图片大小不得超过5MB。
单元测试
单元测试说明
1、请求正确,返回VodUploadVideoCoverImageResponse对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.VodxxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
videoIds
false
String
视频id,多个视频id用英文逗号隔开,例如 e2e85038_e,e2e85039_e【对应api文档的vids字段】
categoryIds
false
String
分类id,多个分类id用逗号隔开【对应api文档的cateIds字段】
imageFile
false
File
图片文件
imageUrl
false
String
图片http url
imageBase64
false
String
图片文件的base64形式
返回对象描述
imageUrlSmall
String
小图url
imageUrlBig
String
大图url
5、上传视频水印
描述
调用约束
1、接口调用有频率限制,详细请查看,调用常见异常,详细请查看
单元测试
单元测试说明
1、请求正确,返回Boolean对象,B端依据此对象处理业务逻辑;
2、请求参数校验不合格,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 输入参数 [xxx.chat.VodxxxRequest]对象校验失败,失败字段 [pic不能为空 / msg不能为空] ]
3、服务器处理异常,抛出PloyvSdkException,错误信息见PloyvSdkException.getMessage(),如 [ 保利威请求返回数据错误,请求流水号:66e7ad29fd04425a84c2b2b562d2025b,错误原因: invalid signature. ]
请求入参描述
image
true
File
上传的水印图片
categoryId
false
String
分类ID,仅一级分类能设置水印。不传为设置用户级别的水印【对应api文档的cataid字段】
watermarkLocation
false
String
水印显示的位置:1:左上角;2:右上角;3:左下角;4:右下角;0:不显示水印
返回对象描述
true:上传成功;false:上传失败
Last updated
Was this helpful?